Sophie

Sophie

distrib > Mageia > 3 > x86_64 > by-pkgid > d2855e9970bf9a8259f08fe181d69f9d > files > 417

gnome-chemistry-utils-devel-0.14.2-1.mga3.x86_64.rpm

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<title>The Gnome Chemistry Utils: gcu::Object Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">The Gnome Chemistry Utils
   &#160;<span id="projectnumber">0.14.2</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.1.2 -->
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
      <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="namespacegcu.html">gcu</a></li><li class="navelem"><a class="el" href="classgcu_1_1Object.html">Object</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
<a href="#pro-methods">Protected Member Functions</a> &#124;
<a href="classgcu_1_1Object-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">gcu::Object Class Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p><code>#include &lt;<a class="el" href="object_8h_source.html">gcu/object.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for gcu::Object:</div>
<div class="dyncontent">
 <div class="center">
  <img src="classgcu_1_1Object.png" usemap="#gcu::Object_map" alt=""/>
  <map id="gcu::Object_map" name="gcu::Object_map">
<area href="classgcp_1_1Arrow.html" alt="gcp::Arrow" shape="rect" coords="149,56,288,80"/>
<area href="classgcp_1_1Brackets.html" title="Brackets class." alt="gcp::Brackets" shape="rect" coords="149,112,288,136"/>
<area href="classgcp_1_1DocPropDlg.html" alt="gcp::DocPropDlg" shape="rect" coords="149,168,288,192"/>
<area href="classgcp_1_1Electron.html" alt="gcp::Electron" shape="rect" coords="149,224,288,248"/>
<area href="classgcp_1_1MechanismArrow.html" title="Mechanism curved arrows." alt="gcp::MechanismArrow" shape="rect" coords="149,280,288,304"/>
<area href="classgcp_1_1Mesomery.html" alt="gcp::Mesomery" shape="rect" coords="149,336,288,360"/>
<area href="classgcp_1_1NewFileDlg.html" alt="gcp::NewFileDlg" shape="rect" coords="149,392,288,416"/>
<area href="classgcp_1_1PrefsDlg.html" title="GChemPaint preferences dialog class." alt="gcp::PrefsDlg" shape="rect" coords="149,448,288,472"/>
<area href="classgcp_1_1Reactant.html" title="Class for reactants and products of a chemical reaction." alt="gcp::Reactant" shape="rect" coords="149,504,288,528"/>
<area href="classgcp_1_1ReactionOperator.html" title="Class for &#39;+&#39; signs in chemical reaction equations." alt="gcp::ReactionOperator" shape="rect" coords="149,560,288,584"/>
<area href="classgcp_1_1ReactionProp.html" alt="gcp::ReactionProp" shape="rect" coords="149,616,288,640"/>
<area href="classgcp_1_1Scheme.html" title="parent class for reaction, mesomery, and anything else containing chemical objects and arrows between..." alt="gcp::Scheme" shape="rect" coords="149,672,288,696"/>
<area href="classgcp_1_1Step.html" title="parent class for reaction steps, mesomers, and more." alt="gcp::Step" shape="rect" coords="149,728,288,752"/>
<area href="classgcp_1_1TextObject.html" alt="gcp::TextObject" shape="rect" coords="149,784,288,808"/>
<area href="classgcu_1_1Atom.html" alt="gcu::Atom" shape="rect" coords="149,840,288,864"/>
<area href="classgcu_1_1Bond.html" alt="gcu::Bond" shape="rect" coords="149,896,288,920"/>
<area href="classgcu_1_1Chain.html" alt="gcu::Chain" shape="rect" coords="149,952,288,976"/>
<area href="classgcu_1_1Document.html" alt="gcu::Document" shape="rect" coords="149,1008,288,1032"/>
<area href="classgcu_1_1Molecule.html" alt="gcu::Molecule" shape="rect" coords="149,1064,288,1088"/>
</map>
 </div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a6f15e766fdfb066008bd4b0779574549"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#a6f15e766fdfb066008bd4b0779574549">Object</a> (<a class="el" href="namespacegcu.html#a4a6abffbefdd6abf047dca4e63b0bac5">TypeId</a> Id=OtherType)</td></tr>
<tr class="memitem:a3e575300e517594b0c2c161d6e704352"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#a3e575300e517594b0c2c161d6e704352">~Object</a> ()</td></tr>
<tr class="memitem:a9c900a7a382cad4a995edbb10b8f179d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacegcu.html#a4a6abffbefdd6abf047dca4e63b0bac5">TypeId</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#a9c900a7a382cad4a995edbb10b8f179d">GetType</a> () const </td></tr>
<tr class="memitem:ac45cdb13cf013066a3704054c9d06ed0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#ac45cdb13cf013066a3704054c9d06ed0">SetId</a> (gchar const *Id)</td></tr>
<tr class="memitem:aef94f9435a51669a518b5a713f24e7ca"><td class="memItemLeft" align="right" valign="top">char const *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#aef94f9435a51669a518b5a713f24e7ca">GetId</a> () const </td></tr>
<tr class="memitem:ad054f1ae4f0cd697765aa4d2007521b2"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#ad054f1ae4f0cd697765aa4d2007521b2">AddChild</a> (<a class="el" href="classgcu_1_1Object.html">Object</a> *object)</td></tr>
<tr class="memitem:adf610a8402000e9f9ae9ad0135c1d7da"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classgcu_1_1Object.html">Object</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#adf610a8402000e9f9ae9ad0135c1d7da">GetMolecule</a> () const </td></tr>
<tr class="memitem:adaba7d20336b8036b6bfb7ef3884880a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classgcu_1_1Object.html">Object</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#adaba7d20336b8036b6bfb7ef3884880a">GetReaction</a> () const </td></tr>
<tr class="memitem:a841968632d00e5d879694ee84737225b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classgcu_1_1Object.html">Object</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#a841968632d00e5d879694ee84737225b">GetGroup</a> () const </td></tr>
<tr class="memitem:a274432165e22fa89a375eded192631db"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classgcu_1_1Document.html">Document</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#a274432165e22fa89a375eded192631db">GetDocument</a> () const </td></tr>
<tr class="memitem:ab65facd99621938dfbd6330ccee1e9f7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classgcu_1_1Application.html">Application</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#ab65facd99621938dfbd6330ccee1e9f7">GetApplication</a> () const </td></tr>
<tr class="memitem:a158be0361aaadca1d03fdb5b5d3089b2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classgcu_1_1Object.html">Object</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#a158be0361aaadca1d03fdb5b5d3089b2">GetParentOfType</a> (<a class="el" href="namespacegcu.html#a4a6abffbefdd6abf047dca4e63b0bac5">TypeId</a> Id) const </td></tr>
<tr class="memitem:a026b22b02b09f8f9f535197f2d936c07"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classgcu_1_1Object.html">Object</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#a026b22b02b09f8f9f535197f2d936c07">GetChild</a> (const gchar *Id) const </td></tr>
<tr class="memitem:a5fe8cfbfe83645c292f8895aba4a91d0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classgcu_1_1Object.html">Object</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#a5fe8cfbfe83645c292f8895aba4a91d0">GetFirstChild</a> (std::map&lt; std::string, <a class="el" href="classgcu_1_1Object.html">Object</a> * &gt;::iterator &amp;i)</td></tr>
<tr class="memitem:a70ff8a33f72e424f3c39b3d0edbe9903"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classgcu_1_1Object.html">Object</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#a70ff8a33f72e424f3c39b3d0edbe9903">GetNextChild</a> (std::map&lt; std::string, <a class="el" href="classgcu_1_1Object.html">Object</a> * &gt;::iterator &amp;i)</td></tr>
<tr class="memitem:ab70083d7ebb2cf32180c5383b5bb428c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classgcu_1_1Object.html">Object</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#ab70083d7ebb2cf32180c5383b5bb428c">GetDescendant</a> (const char *Id) const </td></tr>
<tr class="memitem:abacb2c2002726a3237ffbd0e50e3df52"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classgcu_1_1Object.html">Object</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#abacb2c2002726a3237ffbd0e50e3df52">GetParent</a> () const </td></tr>
<tr class="memitem:a0ffe1f48151c92f167eeec303277e45c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#a0ffe1f48151c92f167eeec303277e45c">SetParent</a> (<a class="el" href="classgcu_1_1Object.html">Object</a> *Parent)</td></tr>
<tr class="memitem:aad462441e79fbd93e158f8294a198d11"><td class="memItemLeft" align="right" valign="top">virtual xmlNodePtr&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#aad462441e79fbd93e158f8294a198d11">Save</a> (xmlDocPtr xml) const </td></tr>
<tr class="memitem:aa3ee33c25154d8e7bbe1e39de970c489"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#aa3ee33c25154d8e7bbe1e39de970c489">Load</a> (xmlNodePtr node)</td></tr>
<tr class="memitem:a7ae5e90dd76580aee332c6ef59e89298"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#a7ae5e90dd76580aee332c6ef59e89298">GetCoords</a> (double *x, double *y, double *z=NULL) const </td></tr>
<tr class="memitem:af5505430c421604ff7e26e4414197fbc"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#af5505430c421604ff7e26e4414197fbc">Move</a> (double x, double y, double z=0.)</td></tr>
<tr class="memitem:a69ad6edf7d50950b036f09d9ff86f849"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#a69ad6edf7d50950b036f09d9ff86f849">Transform2D</a> (<a class="el" href="classgcu_1_1Matrix2D.html">Matrix2D</a> &amp;m, double x, double y)</td></tr>
<tr class="memitem:a07de41cb137a650b51920d6186fc82d7"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#a07de41cb137a650b51920d6186fc82d7">SaveChildren</a> (xmlDocPtr xml, xmlNodePtr node) const </td></tr>
<tr class="memitem:a5f99b290d7e48c38738342dfc984865d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#a5f99b290d7e48c38738342dfc984865d">SaveId</a> (xmlNodePtr node) const </td></tr>
<tr class="memitem:ad533d866f1478a972a1896499e5659a5"><td class="memItemLeft" align="right" valign="top">xmlNodePtr&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#ad533d866f1478a972a1896499e5659a5">GetNodeByProp</a> (xmlNodePtr node, char const *Property, char const *Id)</td></tr>
<tr class="memitem:aa19f11cca83189a955f0a7bf2919562b"><td class="memItemLeft" align="right" valign="top">xmlNodePtr&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#aa19f11cca83189a955f0a7bf2919562b">GetNextNodeByProp</a> (xmlNodePtr node, char const *Property, char const *Id)</td></tr>
<tr class="memitem:a4e8712098d673c958fb0c72488058f80"><td class="memItemLeft" align="right" valign="top">xmlNodePtr&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#a4e8712098d673c958fb0c72488058f80">GetNodeByName</a> (xmlNodePtr node, char const *<a class="el" href="classgcu_1_1Object.html#ae19033807f4b7ee9321f308bb0ffd3b9">Name</a>)</td></tr>
<tr class="memitem:a2dc10bf48d3ebfe86853cace21e9abf2"><td class="memItemLeft" align="right" valign="top">xmlNodePtr&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#a2dc10bf48d3ebfe86853cace21e9abf2">GetNextNodeByName</a> (xmlNodePtr node, char const *<a class="el" href="classgcu_1_1Object.html#ae19033807f4b7ee9321f308bb0ffd3b9">Name</a>)</td></tr>
<tr class="memitem:a28f682a2891b17ae57c5f346c95d6f50"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#a28f682a2891b17ae57c5f346c95d6f50">HasChildren</a> () const </td></tr>
<tr class="memitem:a5e3d6fbdc8b10a9dbf43de2c052fff05"><td class="memItemLeft" align="right" valign="top">unsigned&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#a5e3d6fbdc8b10a9dbf43de2c052fff05">GetChildrenNumber</a> () const </td></tr>
<tr class="memitem:aa47c38061c6a2e51947d89c86fbae630"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classgcu_1_1Object.html">Object</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#aa47c38061c6a2e51947d89c86fbae630">GetAtomAt</a> (double x, double y, double z=0.)</td></tr>
<tr class="memitem:af1da4274cbbf0ca56bf8d380743d49e7"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#af1da4274cbbf0ca56bf8d380743d49e7">Build</a> (std::set&lt; <a class="el" href="classgcu_1_1Object.html">Object</a> * &gt; const &amp;Children)  throw (std::invalid_argument)</td></tr>
<tr class="memitem:aedeec6e6b66e1a35e6d2f3ef75c94a09"><td class="memItemLeft" align="right" valign="top">virtual double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#aedeec6e6b66e1a35e6d2f3ef75c94a09">GetYAlign</a> ()</td></tr>
<tr class="memitem:acc55e92f84843058139d3a729aa6afcb"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#acc55e92f84843058139d3a729aa6afcb">BuildContextualMenu</a> (<a class="el" href="classgcu_1_1UIManager.html">UIManager</a> *uim, <a class="el" href="classgcu_1_1Object.html">Object</a> *object, double x, double y)</td></tr>
<tr class="memitem:acf16b429a6875e5620fa8051446ef34c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#acf16b429a6875e5620fa8051446ef34c">EmitSignal</a> (<a class="el" href="namespacegcu.html#af13348b065987fa4ca74ca0fb1ffa48e">SignalId</a> Signal)</td></tr>
<tr class="memitem:a1ad183ecf7e5b5c42db100da03221e46"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#a1ad183ecf7e5b5c42db100da03221e46">OnSignal</a> (<a class="el" href="namespacegcu.html#af13348b065987fa4ca74ca0fb1ffa48e">SignalId</a> Signal, <a class="el" href="classgcu_1_1Object.html">Object</a> *Child)</td></tr>
<tr class="memitem:a8b4da97be50a4ceea941ab8aa8ece825"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#a8b4da97be50a4ceea941ab8aa8ece825">Lock</a> (bool state=true)</td></tr>
<tr class="memitem:a4094e3d8cf58a6f9de9cb6c6b6fed8c8"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#a4094e3d8cf58a6f9de9cb6c6b6fed8c8">IsLocked</a> ()</td></tr>
<tr class="memitem:a79e87eb91afb57ebf188fdc3753cba7d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classgcu_1_1Object.html">Object</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#a79e87eb91afb57ebf188fdc3753cba7d">GetFirstLink</a> (std::set&lt; <a class="el" href="classgcu_1_1Object.html">Object</a> * &gt;::iterator &amp;i)</td></tr>
<tr class="memitem:a61b227220c2b831b7196d2bd61201bdc"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classgcu_1_1Object.html">Object</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#a61b227220c2b831b7196d2bd61201bdc">GetNextLink</a> (std::set&lt; <a class="el" href="classgcu_1_1Object.html">Object</a> * &gt;::iterator &amp;i)</td></tr>
<tr class="memitem:a0173055f0ba60038d9d913b5f09bb354"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#a0173055f0ba60038d9d913b5f09bb354">Link</a> (<a class="el" href="classgcu_1_1Object.html">Object</a> *object)</td></tr>
<tr class="memitem:a606a257c41cd9cc177c98958fdf2ae3d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#a606a257c41cd9cc177c98958fdf2ae3d">Unlink</a> (<a class="el" href="classgcu_1_1Object.html">Object</a> *object)</td></tr>
<tr class="memitem:a786610ff1992e4aa1acff883b5479ec7"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#a786610ff1992e4aa1acff883b5479ec7">OnUnlink</a> (<a class="el" href="classgcu_1_1Object.html">Object</a> *object)</td></tr>
<tr class="memitem:a97106b6ec695ac946d0a1d04293eef79"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#a97106b6ec695ac946d0a1d04293eef79">GetPossibleAncestorTypes</a> (std::set&lt; <a class="el" href="namespacegcu.html#a4a6abffbefdd6abf047dca4e63b0bac5">TypeId</a> &gt; &amp;types) const </td></tr>
<tr class="memitem:a47862fe83b1c3739ee37b8af81550644"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#a47862fe83b1c3739ee37b8af81550644">SetProperty</a> (unsigned property, char const *value)</td></tr>
<tr class="memitem:a9f612121600c791abbee16bb539975d7"><td class="memItemLeft" align="right" valign="top">virtual std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#a9f612121600c791abbee16bb539975d7">GetProperty</a> (unsigned property) const </td></tr>
<tr class="memitem:af972c30c9990923c34c54754654c3e72"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#af972c30c9990923c34c54754654c3e72">OnLoaded</a> ()</td></tr>
<tr class="memitem:a01ea0147ad675e139ddea7aaa2af503c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#a01ea0147ad675e139ddea7aaa2af503c">SetDirty</a> (bool dirty=true)</td></tr>
<tr class="memitem:adce3873de56ddf2abe7dba89e127fc06"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#adce3873de56ddf2abe7dba89e127fc06">Clear</a> ()</td></tr>
<tr class="memitem:ae19033807f4b7ee9321f308bb0ffd3b9"><td class="memItemLeft" align="right" valign="top">virtual std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#ae19033807f4b7ee9321f308bb0ffd3b9">Name</a> ()</td></tr>
<tr class="memitem:a373cd8efa4af70cdbc4a77086aee82c7"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#a373cd8efa4af70cdbc4a77086aee82c7">Identity</a> ()</td></tr>
<tr class="memitem:aceff810bb8bfad7f9a7152eef3dfe46e"><td class="memItemLeft" align="right" valign="top">virtual char const *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#aceff810bb8bfad7f9a7152eef3dfe46e">HasPropertiesDialog</a> () const </td></tr>
<tr class="memitem:a8f3da29ebe1fcc1534ac65b724f3582f"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#a8f3da29ebe1fcc1534ac65b724f3582f">CanSelect</a> () const </td></tr>
<tr class="memitem:a67e3c8ee2104cd937aea48dabde7d319"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#a67e3c8ee2104cd937aea48dabde7d319">NotifyEmpty</a> ()</td></tr>
<tr class="memitem:a45b59346e78b7a9927d379bb65df1710"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#a45b59346e78b7a9927d379bb65df1710">ShowPropertiesDialog</a> ()</td></tr>
<tr class="memitem:a71e2333cf4d47abdd272a8709361829f"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#a71e2333cf4d47abdd272a8709361829f">GetDirty</a> (void) const </td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="pub-static-methods"></a>
Static Public Member Functions</h2></td></tr>
<tr class="memitem:aea6734ca6bde8ae3e0788db43928f42e"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="namespacegcu.html#a4a6abffbefdd6abf047dca4e63b0bac5">TypeId</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#aea6734ca6bde8ae3e0788db43928f42e">AddType</a> (std::string TypeName, <a class="el" href="classgcu_1_1Object.html">Object</a> *(*CreateFunc)(), <a class="el" href="namespacegcu.html#a4a6abffbefdd6abf047dca4e63b0bac5">TypeId</a> id=OtherType)</td></tr>
<tr class="memitem:a3645f28b3df32308f135ec5b0aac0793"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#a3645f28b3df32308f135ec5b0aac0793">AddAlias</a> (<a class="el" href="namespacegcu.html#a4a6abffbefdd6abf047dca4e63b0bac5">TypeId</a> id, std::string TypeName)</td></tr>
<tr class="memitem:a0d3837f66eccae5ce73573ca95930dbc"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classgcu_1_1Object.html">Object</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#a0d3837f66eccae5ce73573ca95930dbc">CreateObject</a> (const std::string &amp;TypeName, <a class="el" href="classgcu_1_1Object.html">Object</a> *parent=NULL)</td></tr>
<tr class="memitem:a6038f7f7c0f58cd1aa12bd8237ac1024"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="namespacegcu.html#a4a6abffbefdd6abf047dca4e63b0bac5">TypeId</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#a6038f7f7c0f58cd1aa12bd8237ac1024">GetTypeId</a> (const std::string &amp;<a class="el" href="classgcu_1_1Object.html#ae19033807f4b7ee9321f308bb0ffd3b9">Name</a>)</td></tr>
<tr class="memitem:a9e57005d5129e341ce3dcd4d3c188eaf"><td class="memItemLeft" align="right" valign="top">static std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#a9e57005d5129e341ce3dcd4d3c188eaf">GetTypeName</a> (<a class="el" href="namespacegcu.html#a4a6abffbefdd6abf047dca4e63b0bac5">TypeId</a> Id)</td></tr>
<tr class="memitem:a47d2dd181c9934ab4671c526a251295f"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#a47d2dd181c9934ab4671c526a251295f">AddMenuCallback</a> (<a class="el" href="namespacegcu.html#a4a6abffbefdd6abf047dca4e63b0bac5">TypeId</a> Id, <a class="el" href="namespacegcu.html#aea85ee1e0ab66342f28448b2e7a9174d">BuildMenuCb</a> cb)</td></tr>
<tr class="memitem:a3eb4fd4787f224f5e7e3e5f8d1fc2abb"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#a3eb4fd4787f224f5e7e3e5f8d1fc2abb">AddRule</a> (<a class="el" href="namespacegcu.html#a4a6abffbefdd6abf047dca4e63b0bac5">TypeId</a> type1, <a class="el" href="namespacegcu.html#a19c49d12e7c0a96ae2be6c6c33c44b47">RuleId</a> rule, <a class="el" href="namespacegcu.html#a4a6abffbefdd6abf047dca4e63b0bac5">TypeId</a> type2)</td></tr>
<tr class="memitem:a13348c710f80100519c94d10dff3d0e0"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#a13348c710f80100519c94d10dff3d0e0">AddRule</a> (const std::string &amp;type1, <a class="el" href="namespacegcu.html#a19c49d12e7c0a96ae2be6c6c33c44b47">RuleId</a> rule, const std::string &amp;type2)</td></tr>
<tr class="memitem:a96a3ea77a33f4721399f00e6b341cde2"><td class="memItemLeft" align="right" valign="top">static const std::set&lt; <a class="el" href="namespacegcu.html#a4a6abffbefdd6abf047dca4e63b0bac5">TypeId</a> &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#a96a3ea77a33f4721399f00e6b341cde2">GetRules</a> (<a class="el" href="namespacegcu.html#a4a6abffbefdd6abf047dca4e63b0bac5">TypeId</a> type, <a class="el" href="namespacegcu.html#a19c49d12e7c0a96ae2be6c6c33c44b47">RuleId</a> rule)</td></tr>
<tr class="memitem:a44d44e134f05976140e8e4686b0cd936"><td class="memItemLeft" align="right" valign="top">static const std::set&lt; <a class="el" href="namespacegcu.html#a4a6abffbefdd6abf047dca4e63b0bac5">TypeId</a> &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#a44d44e134f05976140e8e4686b0cd936">GetRules</a> (const std::string &amp;type, <a class="el" href="namespacegcu.html#a19c49d12e7c0a96ae2be6c6c33c44b47">RuleId</a> rule)</td></tr>
<tr class="memitem:a8159c48a642f3410913e635e23d77f24"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#a8159c48a642f3410913e635e23d77f24">SetCreationLabel</a> (<a class="el" href="namespacegcu.html#a4a6abffbefdd6abf047dca4e63b0bac5">TypeId</a> Id, std::string Label)</td></tr>
<tr class="memitem:a90c6d068fdbea8cffe8690f177b5c939"><td class="memItemLeft" align="right" valign="top">static const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#a90c6d068fdbea8cffe8690f177b5c939">GetCreationLabel</a> (<a class="el" href="namespacegcu.html#a4a6abffbefdd6abf047dca4e63b0bac5">TypeId</a> Id)</td></tr>
<tr class="memitem:a591fb1674ad415be983b6810ef484326"><td class="memItemLeft" align="right" valign="top">static const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#a591fb1674ad415be983b6810ef484326">GetCreationLabel</a> (const std::string &amp;TypeName)</td></tr>
<tr class="memitem:a380275771a250b94785e43286525c74e"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="namespacegcu.html#af13348b065987fa4ca74ca0fb1ffa48e">SignalId</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#a380275771a250b94785e43286525c74e">CreateNewSignalId</a> ()</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr class="memitem:a98a9025b609f6ba46ab3b273792ee51e"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classgcu_1_1Dialog.html">Dialog</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcu_1_1Object.html#a98a9025b609f6ba46ab3b273792ee51e">BuildPropertiesDialog</a> ()</td></tr>
</table>
<a name="details" id="details"></a><h2>Detailed Description</h2>
<div class="textblock"><p>This is the base class for most other objects in the gcu namespace. </p>

<p>Definition at line <a class="el" href="object_8h_source.html#l00158">158</a> of file <a class="el" href="object_8h_source.html">object.h</a>.</p>
</div><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a6f15e766fdfb066008bd4b0779574549"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">gcu::Object::Object </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="namespacegcu.html#a4a6abffbefdd6abf047dca4e63b0bac5">TypeId</a>&#160;</td>
          <td class="paramname"><em>Id</em> = <code>OtherType</code></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Used to create an object of type Id. Should only be called from the constructor of a derived class. </p>

</div>
</div>
<a class="anchor" id="a3e575300e517594b0c2c161d6e704352"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual gcu::Object::~Object </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>The standard destructor of <a class="el" href="classgcu_1_1Object.html">Object</a> instances. Automatically called when the object is destroyed. </p>

</div>
</div>
<h2>Member Function Documentation</h2>
<a class="anchor" id="a3645f28b3df32308f135ec5b0aac0793"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static void gcu::Object::AddAlias </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="namespacegcu.html#a4a6abffbefdd6abf047dca4e63b0bac5">TypeId</a>&#160;</td>
          <td class="paramname"><em>id</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">std::string&#160;</td>
          <td class="paramname"><em>TypeName</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">id</td><td>the Id of an existing type. </td></tr>
    <tr><td class="paramname">TypeName</td><td>a new name for the type.</td></tr>
  </table>
  </dd>
</dl>
<p>This method is used to add an alternative name to an existing type. </p>

</div>
</div>
<a class="anchor" id="ad054f1ae4f0cd697765aa4d2007521b2"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void gcu::Object::AddChild </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classgcu_1_1Object.html">Object</a> *&#160;</td>
          <td class="paramname"><em>object</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">object</td><td>the <a class="el" href="classgcu_1_1Object.html">Object</a> instance to add as a child.</td></tr>
  </table>
  </dd>
</dl>
<p>Each <a class="el" href="classgcu_1_1Object.html">Object</a> instance maintains a list of its children. If object has already a parent, it will be removed from its parent children list. The new parent <a class="el" href="classgcu_1_1Object.html">Object</a> must have a <a class="el" href="classgcu_1_1Document.html">Document</a> ancestor to ensure that Ids are unique. </p>

<p>Reimplemented in <a class="el" href="classgcu_1_1Molecule.html#ab9ec078566194173ab67d60074b6b245">gcu::Molecule</a>, and <a class="el" href="classgcp_1_1Molecule.html#ae382280cbed9d5428b41e64c3cc7cf5e">gcp::Molecule</a>.</p>

</div>
</div>
<a class="anchor" id="a47d2dd181c9934ab4671c526a251295f"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static void gcu::Object::AddMenuCallback </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="namespacegcu.html#a4a6abffbefdd6abf047dca4e63b0bac5">TypeId</a>&#160;</td>
          <td class="paramname"><em>Id</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespacegcu.html#aea85ee1e0ab66342f28448b2e7a9174d">BuildMenuCb</a>&#160;</td>
          <td class="paramname"><em>cb</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">Id</td><td>the TypeId of the <a class="el" href="classgcu_1_1Object.html">Object</a> derived class </td></tr>
    <tr><td class="paramname">cb</td><td>the BuildMenuCb callback to call when building the menu.</td></tr>
  </table>
  </dd>
</dl>
<p>adds a callback for modifying the contextual menu of objects of type Id.</p>
<p>This method is deprecated, use <a class="el" href="classgcu_1_1Application.html#aa32d7fff8aac324622728bd5baaaaef6">Application::AddMenuCallback()</a> instead. </p>

</div>
</div>
<a class="anchor" id="a3eb4fd4787f224f5e7e3e5f8d1fc2abb"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static void gcu::Object::AddRule </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="namespacegcu.html#a4a6abffbefdd6abf047dca4e63b0bac5">TypeId</a>&#160;</td>
          <td class="paramname"><em>type1</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespacegcu.html#a19c49d12e7c0a96ae2be6c6c33c44b47">RuleId</a>&#160;</td>
          <td class="paramname"><em>rule</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespacegcu.html#a4a6abffbefdd6abf047dca4e63b0bac5">TypeId</a>&#160;</td>
          <td class="paramname"><em>type2</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">type1</td><td>the TypeId of the first class in the rule </td></tr>
    <tr><td class="paramname">rule</td><td>the new rule value </td></tr>
    <tr><td class="paramname">type2</td><td>the TypeId of the second class in the rule</td></tr>
  </table>
  </dd>
</dl>
<p>This method is deprecated, use <a class="el" href="classgcu_1_1Application.html#a4f19d260b0d7414eff1f33bbfc4805e5">Application::AddRule()</a> instead.</p>
<p>Adds a rule. </p>

</div>
</div>
<a class="anchor" id="a13348c710f80100519c94d10dff3d0e0"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static void gcu::Object::AddRule </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>type1</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespacegcu.html#a19c49d12e7c0a96ae2be6c6c33c44b47">RuleId</a>&#160;</td>
          <td class="paramname"><em>rule</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>type2</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">type1</td><td>the name of the first class in the rule </td></tr>
    <tr><td class="paramname">rule</td><td>the new rule value </td></tr>
    <tr><td class="paramname">type2</td><td>the name of the second class in the rule</td></tr>
  </table>
  </dd>
</dl>
<p>This method is deprecated, use <a class="el" href="classgcu_1_1Application.html#a4f19d260b0d7414eff1f33bbfc4805e5">Application::AddRule()</a> instead.</p>
<p>Adds a rule. </p>

</div>
</div>
<a class="anchor" id="aea6734ca6bde8ae3e0788db43928f42e"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static <a class="el" href="namespacegcu.html#a4a6abffbefdd6abf047dca4e63b0bac5">TypeId</a> gcu::Object::AddType </td>
          <td>(</td>
          <td class="paramtype">std::string&#160;</td>
          <td class="paramname"><em>TypeName</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classgcu_1_1Object.html">Object</a> *(*)()&#160;</td>
          <td class="paramname"><em>CreateFunc</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespacegcu.html#a4a6abffbefdd6abf047dca4e63b0bac5">TypeId</a>&#160;</td>
          <td class="paramname"><em>id</em> = <code>OtherType</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">TypeName</td><td>the name of the new type. </td></tr>
    <tr><td class="paramname">CreateFunc</td><td>a pointer to a function returning a pointer to a new object of the new type. </td></tr>
    <tr><td class="paramname">id</td><td>the Id of the type to create if a standard one or OtherType for a new type. In this last case, this parameter can be omitted.</td></tr>
  </table>
  </dd>
</dl>
<p>This method is used to register a new type derived from <a class="el" href="classgcu_1_1Object.html">Object</a>.</p>
<p>This method is deprecated, use <a class="el" href="classgcu_1_1Application.html#a91568fc2517bf5a02e22e45dfefc89f6">Application::AddType()</a> instead.</p>
<dl class="section return"><dt>Returns</dt><dd>the Id of the new type. </dd></dl>

</div>
</div>
<a class="anchor" id="af1da4274cbbf0ca56bf8d380743d49e7"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool gcu::Object::Build </td>
          <td>(</td>
          <td class="paramtype">std::set&lt; <a class="el" href="classgcu_1_1Object.html">Object</a> * &gt; const &amp;&#160;</td>
          <td class="paramname"><em>Children</em></td><td>)</td>
          <td>  throw (std::invalid_argument)</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">Children</td><td>the list of objects used as children to build the object</td></tr>
  </table>
  </dd>
</dl>
<p>This method is called to build a parent object from its children. The object must already exist. </p>
<dl class="section return"><dt>Returns</dt><dd>true in case of success and false if failed. </dd></dl>

</div>
</div>
<a class="anchor" id="acc55e92f84843058139d3a729aa6afcb"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool gcu::Object::BuildContextualMenu </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classgcu_1_1UIManager.html">UIManager</a> *&#160;</td>
          <td class="paramname"><em>uim</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classgcu_1_1Object.html">Object</a> *&#160;</td>
          <td class="paramname"><em>object</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>y</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">uim</td><td>the <a class="el" href="classgcu_1_1UIManager.html" title="base class for a user interface manager">UIManager</a> to populate. </td></tr>
    <tr><td class="paramname">object</td><td>the <a class="el" href="classgcu_1_1Object.html">Object</a> on which occured the mouse click. </td></tr>
    <tr><td class="paramname">x</td><td>x coordinate of the mouse click. </td></tr>
    <tr><td class="paramname">y</td><td>y coordinate of the mouse click.</td></tr>
  </table>
  </dd>
</dl>
<p>This method is called to build a contextual menu for the object. It is called by Object::ShowContextualMenu, so it should not be necessary to call it directly. It should be overriden by derived classes when a contextual menu is needed. Typically, each class adds a submenu and calls the same method for its parent. Default implementation calls registered BuildMenuCb callbacks and the parent's method. Derived classes should call <a class="el" href="classgcu_1_1Object.html#acc55e92f84843058139d3a729aa6afcb">Object::BuildContextualMenu</a> before returning. </p>
<dl class="section return"><dt>Returns</dt><dd>true if something is added to the <a class="el" href="classgcu_1_1UIManager.html" title="base class for a user interface manager">UIManager</a>, false otherwise. </dd></dl>

<p>Reimplemented in <a class="el" href="classgcp_1_1Molecule.html#ac8784f72773072675fec56d05f0ab3c1">gcp::Molecule</a>, <a class="el" href="classgcp_1_1Reactant.html#a647884c6e085bbd62cf0937b670b56f2">gcp::Reactant</a>, <a class="el" href="classgcp_1_1MechanismStep.html#a32b8730a2fec41fdc351960ae5c88c27">gcp::MechanismStep</a>, <a class="el" href="classgcp_1_1ReactionArrow.html#a4720b7302179aa5df4b52e0197cb3c5a">gcp::ReactionArrow</a>, <a class="el" href="classgcp_1_1Mesomery.html#a1f2e9e7ddbbdfd6a3af5656d1167c251">gcp::Mesomery</a>, and <a class="el" href="classgcp_1_1Reaction.html#ae2c1a0311bc52fe683f6b73619d4e911">gcp::Reaction</a>.</p>

</div>
</div>
<a class="anchor" id="a98a9025b609f6ba46ab3b273792ee51e"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classgcu_1_1Dialog.html">Dialog</a>* gcu::Object::BuildPropertiesDialog </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>the <a class="el" href="classgcu_1_1Dialog.html">gcu::Dialog</a> related to the object properties or NULL if none exists. </dd></dl>

</div>
</div>
<a class="anchor" id="a8f3da29ebe1fcc1534ac65b724f3582f"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool gcu::Object::CanSelect </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>true if the object can be safely selected. Default implementation returns true. </dd></dl>

<p>Reimplemented in <a class="el" href="classgcp_1_1MechanismArrow.html#a2a9b5663796c10677cc7925584f2b8f2">gcp::MechanismArrow</a>.</p>

<p>Definition at line <a class="el" href="object_8h_source.html#l00576">576</a> of file <a class="el" href="object_8h_source.html">object.h</a>.</p>

</div>
</div>
<a class="anchor" id="adce3873de56ddf2abe7dba89e127fc06"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void gcu::Object::Clear </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Deletes all children. Derived classes might override this method if needed. </p>

<p>Reimplemented in <a class="el" href="classgcu_1_1Molecule.html#a7b1eb4f9ab32d992e6185f7e395025f1">gcu::Molecule</a>, <a class="el" href="classgcp_1_1Molecule.html#af6b63bd1a55c365f22af2c69c69a41ca">gcp::Molecule</a>, <a class="el" href="classgcu_1_1Chem3dDoc.html#ae9e819eaf6f841c6b18c1cebf92a0274">gcu::Chem3dDoc</a>, and <a class="el" href="classgcp_1_1Document.html#a326cf0638035d5deff1dead3e296ae47">gcp::Document</a>.</p>

</div>
</div>
<a class="anchor" id="a380275771a250b94785e43286525c74e"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static <a class="el" href="namespacegcu.html#af13348b065987fa4ca74ca0fb1ffa48e">SignalId</a> gcu::Object::CreateNewSignalId </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>a new SignalId. </dd></dl>

</div>
</div>
<a class="anchor" id="a0d3837f66eccae5ce73573ca95930dbc"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static <a class="el" href="classgcu_1_1Object.html">Object</a>* gcu::Object::CreateObject </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>TypeName</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classgcu_1_1Object.html">Object</a> *&#160;</td>
          <td class="paramname"><em>parent</em> = <code>NULL</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">TypeName</td><td>the name of the new type. </td></tr>
    <tr><td class="paramname">parent</td><td>the parent of the newly created object or NULL. if NULL, the parameter can be omitted.</td></tr>
  </table>
  </dd>
</dl>
<p>Used to create an object of type name TypeName. The <a class="el" href="classgcu_1_1Object.html#aea6734ca6bde8ae3e0788db43928f42e">Object::AddType</a> method must have been called with the same TypeName parameter. if parent is given and not NULL, the new <a class="el" href="classgcu_1_1Object.html">Object</a> will be a child of parent. It will also be given a default Id.</p>
<p>This method is deprecated, use <a class="el" href="classgcu_1_1Application.html#a4cc3a4beb3af643e369a4021bc865593">Application::CreateObject()</a> instead.</p>
<dl class="section return"><dt>Returns</dt><dd>a pointer to the newly created <a class="el" href="classgcu_1_1Object.html">Object</a> or NULL if the <a class="el" href="classgcu_1_1Object.html">Object</a> could not be created. </dd></dl>

</div>
</div>
<a class="anchor" id="acf16b429a6875e5620fa8051446ef34c"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void gcu::Object::EmitSignal </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="namespacegcu.html#af13348b065987fa4ca74ca0fb1ffa48e">SignalId</a>&#160;</td>
          <td class="paramname"><em>Signal</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">Signal</td><td>the appropriate SignalId</td></tr>
  </table>
  </dd>
</dl>
<p>Sends a signal to the object parent. The signal may be propagated to the ancestors (see <a class="el" href="classgcu_1_1Object.html#a1ad183ecf7e5b5c42db100da03221e46">Object::OnSignal</a> ()). </p>

</div>
</div>
<a class="anchor" id="ab65facd99621938dfbd6330ccee1e9f7"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classgcu_1_1Application.html">Application</a>* gcu::Object::GetApplication </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Used to get the <a class="el" href="classgcu_1_1Application.html">Application</a> owning the <a class="el" href="classgcu_1_1Object.html">Object</a>.</p>
<dl class="section return"><dt>Returns</dt><dd>the <a class="el" href="classgcu_1_1Application.html">Application</a> owning the <a class="el" href="classgcu_1_1Object.html">Object</a> or NULL. </dd></dl>

</div>
</div>
<a class="anchor" id="aa47c38061c6a2e51947d89c86fbae630"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classgcu_1_1Object.html">Object</a>* gcu::Object::GetAtomAt </td>
          <td>(</td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>y</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>z</em> = <code>0.</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">x</td><td>the x coordinate </td></tr>
    <tr><td class="paramname">y</td><td>the y coordinate </td></tr>
    <tr><td class="paramname">z</td><td>the z coordinate</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>a pointer to a child of type Atomtype at or near position defined by the coordinates passed as parameters. Default implementation returns NULL. </dd></dl>

<p>Reimplemented in <a class="el" href="classgcp_1_1Fragment.html#ab176efcc94b5a04a9c2984f9c6be5e29">gcp::Fragment</a>, <a class="el" href="classgcp_1_1Molecule.html#a9ec4a58d5060d29791336f54d8954d72">gcp::Molecule</a>, and <a class="el" href="classgcp_1_1Bond.html#aeb666e701cc6b08929c4d37698062161">gcp::Bond</a>.</p>

</div>
</div>
<a class="anchor" id="a026b22b02b09f8f9f535197f2d936c07"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classgcu_1_1Object.html">Object</a>* gcu::Object::GetChild </td>
          <td>(</td>
          <td class="paramtype">const gchar *&#160;</td>
          <td class="paramname"><em>Id</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">Id</td><td>the Id of the child searched.</td></tr>
  </table>
  </dd>
</dl>
<p>To search the <a class="el" href="classgcu_1_1Object.html">Object</a> in lower shells of the tree, use the <a class="el" href="classgcu_1_1Object.html#ab70083d7ebb2cf32180c5383b5bb428c">Object::GetDescendant</a> method. </p>
<dl class="section return"><dt>Returns</dt><dd>the <a class="el" href="classgcu_1_1Object.html">Object</a> instance of type Id if found in the children list or NULL if not found. </dd></dl>

</div>
</div>
<a class="anchor" id="a5e3d6fbdc8b10a9dbf43de2c052fff05"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">unsigned gcu::Object::GetChildrenNumber </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>the children number of the <a class="el" href="classgcu_1_1Object.html">Object</a>. </dd></dl>

<p>Definition at line <a class="el" href="object_8h_source.html#l00398">398</a> of file <a class="el" href="object_8h_source.html">object.h</a>.</p>

</div>
</div>
<a class="anchor" id="a7ae5e90dd76580aee332c6ef59e89298"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool gcu::Object::GetCoords </td>
          <td>(</td>
          <td class="paramtype">double *&#160;</td>
          <td class="paramname"><em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double *&#160;</td>
          <td class="paramname"><em>y</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double *&#160;</td>
          <td class="paramname"><em>z</em> = <code>NULL</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">x</td><td>a pointer to the double value which will receive the x coordinate of the <a class="el" href="classgcu_1_1Object.html">Object</a>. </td></tr>
    <tr><td class="paramname">y</td><td>a pointer to the double value which will receive the y coordinate of the <a class="el" href="classgcu_1_1Object.html">Object</a>. </td></tr>
    <tr><td class="paramname">z</td><td>a pointer to the double value which will receive the z coordinate of the <a class="el" href="classgcu_1_1Object.html">Object</a> or NULL for 2D representations.</td></tr>
  </table>
  </dd>
</dl>
<p>Retrieves the coordinates of this <a class="el" href="classgcu_1_1Object.html">Object</a> if relevant. </p>
<dl class="section return"><dt>Returns</dt><dd>true if successful and false if an error occurs (if x or y is NULL). </dd></dl>

<p>Reimplemented in <a class="el" href="classgcp_1_1Fragment.html#a86025806e7c9b2d859b30e832b5c7ab1">gcp::Fragment</a>, <a class="el" href="classgcp_1_1Text.html#aee9f9650cbdd33055c46f142069f8a9b">gcp::Text</a>, <a class="el" href="classgcp_1_1Arrow.html#a3c1bf299870dac4b2e3285d0c40ef599">gcp::Arrow</a>, <a class="el" href="classgcu_1_1Atom.html#a8c63d0cca391f39f43f9f58fa7afc9f4">gcu::Atom</a>, and <a class="el" href="classgcp_1_1ReactionOperator.html#a7c92c8ebbec0e4b062a510931b8abe47">gcp::ReactionOperator</a>.</p>

</div>
</div>
<a class="anchor" id="a90c6d068fdbea8cffe8690f177b5c939"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static const std::string&amp; gcu::Object::GetCreationLabel </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="namespacegcu.html#a4a6abffbefdd6abf047dca4e63b0bac5">TypeId</a>&#160;</td>
          <td class="paramname"><em>Id</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">Id</td><td>the TypeId of a class</td></tr>
  </table>
  </dd>
</dl>
<p>This method is deprecated, use <a class="el" href="classgcu_1_1Application.html#adac54fe6104d344a8215f2a66aec8f94">Application::GetCreationLabel()</a> instead.</p>
<dl class="section return"><dt>Returns</dt><dd>the string defined by SetCreationLabel. </dd></dl>

</div>
</div>
<a class="anchor" id="a591fb1674ad415be983b6810ef484326"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static const std::string&amp; gcu::Object::GetCreationLabel </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>TypeName</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">TypeName</td><td>the name of a class</td></tr>
  </table>
  </dd>
</dl>
<p>This method is deprecated, use <a class="el" href="classgcu_1_1Application.html#adac54fe6104d344a8215f2a66aec8f94">Application::GetCreationLabel()</a> instead.</p>
<dl class="section return"><dt>Returns</dt><dd>the string defined by SetCreationLabel. </dd></dl>

</div>
</div>
<a class="anchor" id="ab70083d7ebb2cf32180c5383b5bb428c"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classgcu_1_1Object.html">Object</a>* gcu::Object::GetDescendant </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>Id</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">Id</td><td>the Id of the descendant searched.</td></tr>
  </table>
  </dd>
</dl>
<p>This method searches the <a class="el" href="classgcu_1_1Object.html">Object</a> in its children and if not found calls the GetDescendant method for its children. </p>
<dl class="section return"><dt>Returns</dt><dd>the <a class="el" href="classgcu_1_1Object.html">Object</a> instance of type Id if found in the decendants or NULL if not found. </dd></dl>

</div>
</div>
<a class="anchor" id="a71e2333cf4d47abdd272a8709361829f"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">gcu::Object::GetDirty </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>true if the document has changed since it was opened or last saved, false otherwise. </dd></dl>

<p>Definition at line <a class="el" href="object_8h_source.html#l00752">752</a> of file <a class="el" href="object_8h_source.html">object.h</a>.</p>

</div>
</div>
<a class="anchor" id="a274432165e22fa89a375eded192631db"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classgcu_1_1Document.html">Document</a>* gcu::Object::GetDocument </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Used to get the <a class="el" href="classgcu_1_1Document.html">Document</a> in the <a class="el" href="classgcu_1_1Object.html">Object</a> instances ancestors.</p>
<dl class="section return"><dt>Returns</dt><dd>the first <a class="el" href="classgcu_1_1Object.html">Object</a> of type DocumentType encountered when exploring the Objects tree (only one should be found) or NULL if none is found. </dd></dl>

</div>
</div>
<a class="anchor" id="a5fe8cfbfe83645c292f8895aba4a91d0"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classgcu_1_1Object.html">Object</a>* gcu::Object::GetFirstChild </td>
          <td>(</td>
          <td class="paramtype">std::map&lt; std::string, <a class="el" href="classgcu_1_1Object.html">Object</a> * &gt;::iterator &amp;&#160;</td>
          <td class="paramname"><em>i</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">i</td><td>a C++ std::map iterator.</td></tr>
  </table>
  </dd>
</dl>
<p>Use this function to retrieve the first child of the object and initialize the iterator. </p>
<dl class="section return"><dt>Returns</dt><dd>the first child of the object or NULL. </dd></dl>

</div>
</div>
<a class="anchor" id="a79e87eb91afb57ebf188fdc3753cba7d"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classgcu_1_1Object.html">Object</a>* gcu::Object::GetFirstLink </td>
          <td>(</td>
          <td class="paramtype">std::set&lt; <a class="el" href="classgcu_1_1Object.html">Object</a> * &gt;::iterator &amp;&#160;</td>
          <td class="paramname"><em>i</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">i</td><td>a C++ std::set&lt;Object*&gt; iterator.</td></tr>
  </table>
  </dd>
</dl>
<p>Use this function to retrieve the first object linked to the object and initialize the iterator. Links can be used when the relation between the objects is not a parent to child one. </p>
<dl class="section return"><dt>Returns</dt><dd>the first object linked to the object or NULL. </dd></dl>

</div>
</div>
<a class="anchor" id="a841968632d00e5d879694ee84737225b"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classgcu_1_1Object.html">Object</a>* gcu::Object::GetGroup </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Used to get the highest ancestor just before the document in the <a class="el" href="classgcu_1_1Object.html">Object</a> instances ancestors.</p>
<dl class="section return"><dt>Returns</dt><dd>the last <a class="el" href="classgcu_1_1Object.html">Object</a> encountered before the document when exploring the Objects tree or NULL if the object's parent is the document itself. </dd></dl>

</div>
</div>
<a class="anchor" id="aef94f9435a51669a518b5a713f24e7ca"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">char const* gcu::Object::GetId </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>the Id of the <a class="el" href="classgcu_1_1Object.html">Object</a> instance. </dd></dl>

<p>Definition at line <a class="el" href="object_8h_source.html#l00185">185</a> of file <a class="el" href="object_8h_source.html">object.h</a>.</p>

<p>Referenced by <a class="el" href="gcp_2molecule_8h_source.html#l00176">gcp::Molecule::GetAlignmentId()</a>.</p>

</div>
</div>
<a class="anchor" id="adf610a8402000e9f9ae9ad0135c1d7da"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classgcu_1_1Object.html">Object</a>* gcu::Object::GetMolecule </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Used to get the <a class="el" href="classgcu_1_1Molecule.html">Molecule</a> in the <a class="el" href="classgcu_1_1Object.html">Object</a> instances ancestors. Overloaded methods should call the base class <a class="el" href="classgcu_1_1Object.html#ad054f1ae4f0cd697765aa4d2007521b2">Object::AddChild</a>.</p>
<dl class="section return"><dt>Returns</dt><dd>the first <a class="el" href="classgcu_1_1Object.html">Object</a> of type MoleculeType encountered when exploring the Objects tree or NULL if none is found. </dd></dl>

</div>
</div>
<a class="anchor" id="a70ff8a33f72e424f3c39b3d0edbe9903"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classgcu_1_1Object.html">Object</a>* gcu::Object::GetNextChild </td>
          <td>(</td>
          <td class="paramtype">std::map&lt; std::string, <a class="el" href="classgcu_1_1Object.html">Object</a> * &gt;::iterator &amp;&#160;</td>
          <td class="paramname"><em>i</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">i</td><td>a C++ std::map iterator initialized by <a class="el" href="classgcu_1_1Object.html#a5fe8cfbfe83645c292f8895aba4a91d0">Object::GetFirstChild</a>.</td></tr>
  </table>
  </dd>
</dl>
<p>Use this method to iterate through the list of the <a class="el" href="classgcu_1_1Object.html">Object</a> children. </p>
<dl class="section return"><dt>Returns</dt><dd>the next child of the object or NULL. </dd></dl>

</div>
</div>
<a class="anchor" id="a61b227220c2b831b7196d2bd61201bdc"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classgcu_1_1Object.html">Object</a>* gcu::Object::GetNextLink </td>
          <td>(</td>
          <td class="paramtype">std::set&lt; <a class="el" href="classgcu_1_1Object.html">Object</a> * &gt;::iterator &amp;&#160;</td>
          <td class="paramname"><em>i</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">i</td><td>a C++ std::set&lt;Object*&gt; iterator initialized by <a class="el" href="classgcu_1_1Object.html#a79e87eb91afb57ebf188fdc3753cba7d">Object::GetFirstLink</a>.</td></tr>
  </table>
  </dd>
</dl>
<p>Use this method to iterate through the list of <a class="el" href="classgcu_1_1Object.html">Object</a> instances linked to the object. </p>
<dl class="section return"><dt>Returns</dt><dd>the next object linked to the object or NULL. </dd></dl>

</div>
</div>
<a class="anchor" id="a2dc10bf48d3ebfe86853cace21e9abf2"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">xmlNodePtr gcu::Object::GetNextNodeByName </td>
          <td>(</td>
          <td class="paramtype">xmlNodePtr&#160;</td>
          <td class="paramname"><em>node</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char const *&#160;</td>
          <td class="paramname"><em>Name</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">node</td><td>the xmlNodePtr returned by <a class="el" href="classgcu_1_1Object.html#a4e8712098d673c958fb0c72488058f80">Object::GetNodeByName</a> or the last call to <a class="el" href="classgcu_1_1Object.html#a2dc10bf48d3ebfe86853cace21e9abf2">Object::GetNextNodeByName</a>. </td></tr>
    <tr><td class="paramname">Name</td><td>the name of the xmlNode searched.</td></tr>
  </table>
  </dd>
</dl>
<p>Helper method used to iterate through a list of xmlNodePtr searching for nodes whose name is Name. Generally, the iteration is initialized by a call to <a class="el" href="classgcu_1_1Object.html#a4e8712098d673c958fb0c72488058f80">Object::GetNodeByName</a>. </p>
<dl class="section return"><dt>Returns</dt><dd>the next matching node. </dd></dl>

</div>
</div>
<a class="anchor" id="aa19f11cca83189a955f0a7bf2919562b"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">xmlNodePtr gcu::Object::GetNextNodeByProp </td>
          <td>(</td>
          <td class="paramtype">xmlNodePtr&#160;</td>
          <td class="paramname"><em>node</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char const *&#160;</td>
          <td class="paramname"><em>Property</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char const *&#160;</td>
          <td class="paramname"><em>Id</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">node</td><td>the xmlNodePtr returned by <a class="el" href="classgcu_1_1Object.html#ad533d866f1478a972a1896499e5659a5">Object::GetNodeByProp</a> or the last call to <a class="el" href="classgcu_1_1Object.html#aa19f11cca83189a955f0a7bf2919562b">Object::GetNextNodeByProp</a>. </td></tr>
    <tr><td class="paramname">Property</td><td>the name of the property used in the search. </td></tr>
    <tr><td class="paramname">Id</td><td>the value to match to the property.</td></tr>
  </table>
  </dd>
</dl>
<p>Helper method used to iterate through a list of xmlNodePtr searching for a special value of a property. Generally, the iteration is initialized by a call to <a class="el" href="classgcu_1_1Object.html#ad533d866f1478a972a1896499e5659a5">Object::GetNodeByProp</a>. </p>
<dl class="section return"><dt>Returns</dt><dd>the next matching node. </dd></dl>

</div>
</div>
<a class="anchor" id="a4e8712098d673c958fb0c72488058f80"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">xmlNodePtr gcu::Object::GetNodeByName </td>
          <td>(</td>
          <td class="paramtype">xmlNodePtr&#160;</td>
          <td class="paramname"><em>node</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char const *&#160;</td>
          <td class="paramname"><em>Name</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">node</td><td>the node where the search is to be done. </td></tr>
    <tr><td class="paramname">Name</td><td>the name of the xmlNode searched.</td></tr>
  </table>
  </dd>
</dl>
<p>Helper method used in conjunction with <a class="el" href="classgcu_1_1Object.html#aa19f11cca83189a955f0a7bf2919562b">Object::GetNextNodeByProp</a> to search xmlNode instances of name Name in the children of node.</p>
<dl class="section return"><dt>Returns</dt><dd>the node corresponding to the first match. This value is to be passed to <a class="el" href="classgcu_1_1Object.html#a2dc10bf48d3ebfe86853cace21e9abf2">Object::GetNextNodeByName</a> to iterate in the list. </dd></dl>

</div>
</div>
<a class="anchor" id="ad533d866f1478a972a1896499e5659a5"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">xmlNodePtr gcu::Object::GetNodeByProp </td>
          <td>(</td>
          <td class="paramtype">xmlNodePtr&#160;</td>
          <td class="paramname"><em>node</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char const *&#160;</td>
          <td class="paramname"><em>Property</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char const *&#160;</td>
          <td class="paramname"><em>Id</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">node</td><td>the node where the search is to be done. </td></tr>
    <tr><td class="paramname">Property</td><td>the name of the property used in the search. </td></tr>
    <tr><td class="paramname">Id</td><td>the value to match to the property.</td></tr>
  </table>
  </dd>
</dl>
<p>Helper method used in conjunction with <a class="el" href="classgcu_1_1Object.html#aa19f11cca83189a955f0a7bf2919562b">Object::GetNextNodeByProp</a> to search xmlNode instances having a property Property whose value is Id in the children of node.</p>
<dl class="section return"><dt>Returns</dt><dd>the node corresponding to the first match. This value is to be passed to <a class="el" href="classgcu_1_1Object.html#aa19f11cca83189a955f0a7bf2919562b">Object::GetNextNodeByProp</a> to iterate in the list </dd></dl>

</div>
</div>
<a class="anchor" id="abacb2c2002726a3237ffbd0e50e3df52"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classgcu_1_1Object.html">Object</a>* gcu::Object::GetParent </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>the parent of the <a class="el" href="classgcu_1_1Object.html">Object</a>. </dd></dl>

<p>Definition at line <a class="el" href="object_8h_source.html#l00272">272</a> of file <a class="el" href="object_8h_source.html">object.h</a>.</p>

</div>
</div>
<a class="anchor" id="a158be0361aaadca1d03fdb5b5d3089b2"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classgcu_1_1Object.html">Object</a>* gcu::Object::GetParentOfType </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="namespacegcu.html#a4a6abffbefdd6abf047dca4e63b0bac5">TypeId</a>&#160;</td>
          <td class="paramname"><em>Id</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">Id</td><td>the type of the ancestor searched. <pre class="fragment">    Used to get the first ancestor of type Id in the Object instances ancestors.
    GetDocument, GetMolecule and GetReaction are special cases of this method.

    @return the first Object of type Id encountered when exploring
    the Objects tree (only one should be found) or NULL if none is found.</pre> </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a97106b6ec695ac946d0a1d04293eef79"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void gcu::Object::GetPossibleAncestorTypes </td>
          <td>(</td>
          <td class="paramtype">std::set&lt; <a class="el" href="namespacegcu.html#a4a6abffbefdd6abf047dca4e63b0bac5">TypeId</a> &gt; &amp;&#160;</td>
          <td class="paramname"><em>types</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">types</td><td>the list of TypeId values to fill</td></tr>
  </table>
  </dd>
</dl>
<p>Fills types with all valid ancestor types for the object as defined by rules created with AddRule </p>

</div>
</div>
<a class="anchor" id="a9f612121600c791abbee16bb539975d7"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual std::string gcu::Object::GetProperty </td>
          <td>(</td>
          <td class="paramtype">unsigned&#160;</td>
          <td class="paramname"><em>property</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">property</td><td>the property id as defined in <a class="el" href="objprops_8h.html">objprops.h</a></td></tr>
  </table>
  </dd>
</dl>
<p>Used when saving to get properties from various objects. All classes supporting the mechanism must overload this method. </p>

<p>Reimplemented in <a class="el" href="classgcp_1_1Document.html#aad10cde67a5420896814d1dc57650e27">gcp::Document</a>, <a class="el" href="classgcp_1_1Bond.html#a453c1ce0cc507472268d1f8b68e44300">gcp::Bond</a>, <a class="el" href="classgcu_1_1Atom.html#a759e64fd28f939c73a5130c49e876618">gcu::Atom</a>, <a class="el" href="classgcr_1_1Atom.html#ac7a91f0accef35a1539ac09ca7b54d1b">gcr::Atom</a>, <a class="el" href="classgcr_1_1Document.html#ab96c8ab14f9af66a51b324511813158a">gcr::Document</a>, <a class="el" href="classgcu_1_1Bond.html#a21346716e777dc738c25bbd78fd35d62">gcu::Bond</a>, and <a class="el" href="classgcp_1_1TextObject.html#adc7941d78d0a92d77ff1e3e18bf11375">gcp::TextObject</a>.</p>

</div>
</div>
<a class="anchor" id="adaba7d20336b8036b6bfb7ef3884880a"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classgcu_1_1Object.html">Object</a>* gcu::Object::GetReaction </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Used to get the Reaction in the <a class="el" href="classgcu_1_1Object.html">Object</a> instances ancestors.</p>
<dl class="section return"><dt>Returns</dt><dd>the first <a class="el" href="classgcu_1_1Object.html">Object</a> of type ReactionType encountered when exploring the Objects tree or NULL if none is found. </dd></dl>

</div>
</div>
<a class="anchor" id="a96a3ea77a33f4721399f00e6b341cde2"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static const std::set&lt;<a class="el" href="namespacegcu.html#a4a6abffbefdd6abf047dca4e63b0bac5">TypeId</a>&gt;&amp; gcu::Object::GetRules </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="namespacegcu.html#a4a6abffbefdd6abf047dca4e63b0bac5">TypeId</a>&#160;</td>
          <td class="paramname"><em>type</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespacegcu.html#a19c49d12e7c0a96ae2be6c6c33c44b47">RuleId</a>&#160;</td>
          <td class="paramname"><em>rule</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">type</td><td>the TypeId of a class </td></tr>
    <tr><td class="paramname">rule</td><td>a RuleId value</td></tr>
  </table>
  </dd>
</dl>
<p>This method is deprecated, use <a class="el" href="classgcu_1_1Application.html#afe97221b52b1e729e776805a33e77b0e">Application::GetRules()</a> instead.</p>
<dl class="section return"><dt>Returns</dt><dd>the set of rules correponding to the RuleId value for this class. </dd></dl>

</div>
</div>
<a class="anchor" id="a44d44e134f05976140e8e4686b0cd936"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static const std::set&lt;<a class="el" href="namespacegcu.html#a4a6abffbefdd6abf047dca4e63b0bac5">TypeId</a>&gt;&amp; gcu::Object::GetRules </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>type</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespacegcu.html#a19c49d12e7c0a96ae2be6c6c33c44b47">RuleId</a>&#160;</td>
          <td class="paramname"><em>rule</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">type</td><td>the name of a class </td></tr>
    <tr><td class="paramname">rule</td><td>a RuleId value</td></tr>
  </table>
  </dd>
</dl>
<p>This method is deprecated, use <a class="el" href="classgcu_1_1Application.html#afe97221b52b1e729e776805a33e77b0e">Application::GetRules()</a> instead.</p>
<dl class="section return"><dt>Returns</dt><dd>the set of rules correponding to the RuleId value for this class. </dd></dl>

</div>
</div>
<a class="anchor" id="a9c900a7a382cad4a995edbb10b8f179d"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="namespacegcu.html#a4a6abffbefdd6abf047dca4e63b0bac5">TypeId</a> gcu::Object::GetType </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>the type of the object. If the type is at least equal to OtherType, it is a dynamically created type returned by the <a class="el" href="classgcu_1_1Object.html#aea6734ca6bde8ae3e0788db43928f42e">Object::AddType</a> method. </dd></dl>

<p>Reimplemented in <a class="el" href="classgcp_1_1Brackets.html#a838a2634aa24dcc596711648ba2ea2d3">gcp::Brackets</a>, and <a class="el" href="classgcp_1_1Bond.html#ac8f185d40a67c904d91e2b49f4119138">gcp::Bond</a>.</p>

<p>Definition at line <a class="el" href="object_8h_source.html#l00175">175</a> of file <a class="el" href="object_8h_source.html">object.h</a>.</p>

</div>
</div>
<a class="anchor" id="a6038f7f7c0f58cd1aa12bd8237ac1024"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static <a class="el" href="namespacegcu.html#a4a6abffbefdd6abf047dca4e63b0bac5">TypeId</a> gcu::Object::GetTypeId </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>Name</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">Name</td><td>the name of the <a class="el" href="classgcu_1_1Object.html">Object</a> derived class</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>the TypeId corresponding to Name </dd></dl>

</div>
</div>
<a class="anchor" id="a9e57005d5129e341ce3dcd4d3c188eaf"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static std::string gcu::Object::GetTypeName </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="namespacegcu.html#a4a6abffbefdd6abf047dca4e63b0bac5">TypeId</a>&#160;</td>
          <td class="paramname"><em>Id</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">Id</td><td>the TypeId of the <a class="el" href="classgcu_1_1Object.html">Object</a> derived class</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>the name of the type. </dd></dl>

</div>
</div>
<a class="anchor" id="aedeec6e6b66e1a35e6d2f3ef75c94a09"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual double gcu::Object::GetYAlign </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Used to retrieve the y coordinate for alignment. The default implementation returns 0.0 and every derived class for which alignment has a meaning should implement this method. </p>
<dl class="section return"><dt>Returns</dt><dd>y coordinate used for objects alignment. </dd></dl>

<p>Reimplemented in <a class="el" href="classgcp_1_1Document.html#a6e6fafd96ac50858e8b0e0ad322b168a">gcp::Document</a>, <a class="el" href="classgcp_1_1Fragment.html#ab0eff95c852c2ac3aee2e17efff17c4a">gcp::Fragment</a>, <a class="el" href="classgcp_1_1Atom.html#ac06b20c09e7568191922a2801d307fed">gcp::Atom</a>, <a class="el" href="classgcp_1_1Bond.html#ab4481b07aa857a7f14947507b21b84a5">gcp::Bond</a>, <a class="el" href="classgcp_1_1Text.html#ab92903025c76d26f569c7aac04857555">gcp::Text</a>, <a class="el" href="classgcp_1_1Molecule.html#a141ffeeff75f342eb90fb5aec87e4e81">gcp::Molecule</a>, <a class="el" href="classgcp_1_1Arrow.html#afa8246468ac13b5019422c76dc6451be">gcp::Arrow</a>, <a class="el" href="classgcp_1_1Mesomery.html#a2776f2d3d5d2ba080423dc0a8fb25fca">gcp::Mesomery</a>, <a class="el" href="classgcp_1_1Reaction.html#a0cd5ada3960672705b6026c25606ff46">gcp::Reaction</a>, <a class="el" href="classgcp_1_1Mesomer.html#a60e9c133c1d0faae9ff0061a1cff45f7">gcp::Mesomer</a>, <a class="el" href="classgcp_1_1Reactant.html#a42bf1c6f7e95ace9e608889880c979c4">gcp::Reactant</a>, <a class="el" href="classgcp_1_1ReactionOperator.html#a749b55a5fdaa4d86e63d7b3cb0afc7eb">gcp::ReactionOperator</a>, <a class="el" href="classgcp_1_1ReactionStep.html#aa04ee198904f393f01470a507406daaf">gcp::ReactionStep</a>, and <a class="el" href="classgcp_1_1MechanismStep.html#ac5426df2fe6a99373c5bcb093985a7bf">gcp::MechanismStep</a>.</p>

</div>
</div>
<a class="anchor" id="a28f682a2891b17ae57c5f346c95d6f50"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool gcu::Object::HasChildren </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>true if the <a class="el" href="classgcu_1_1Object.html">Object</a> has at least a child an false if it has none. </dd></dl>

<p>Definition at line <a class="el" href="object_8h_source.html#l00393">393</a> of file <a class="el" href="object_8h_source.html">object.h</a>.</p>

</div>
</div>
<a class="anchor" id="aceff810bb8bfad7f9a7152eef3dfe46e"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual char const* gcu::Object::HasPropertiesDialog </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>the name of the properties dialog for this object if one exists, or NULL. </dd></dl>

</div>
</div>
<a class="anchor" id="a373cd8efa4af70cdbc4a77086aee82c7"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">std::string gcu::Object::Identity </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>the object identity composed of the object name as returned by <a class="el" href="classgcu_1_1Object.html#ae19033807f4b7ee9321f308bb0ffd3b9">gcu::Object::Name()</a> concatenated with its unique Id as returned by <a class="el" href="classgcu_1_1Object.html#aef94f9435a51669a518b5a713f24e7ca">gcu::Object::GetId()</a>. </dd></dl>

</div>
</div>
<a class="anchor" id="a4094e3d8cf58a6f9de9cb6c6b6fed8c8"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool gcu::Object::IsLocked </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>true if signals are locked, false otherwise</dd></dl>
<p>Since 0.4.2 </p>

<p>Reimplemented in <a class="el" href="classgcp_1_1TextObject.html#a69d4138e494f38c0da4ac7b97e182739">gcp::TextObject</a>.</p>

<p>Definition at line <a class="el" href="object_8h_source.html#l00474">474</a> of file <a class="el" href="object_8h_source.html">object.h</a>.</p>

</div>
</div>
<a class="anchor" id="a0173055f0ba60038d9d913b5f09bb354"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void gcu::Object::Link </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classgcu_1_1Object.html">Object</a> *&#160;</td>
          <td class="paramname"><em>object</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">object</td><td>the object to link.</td></tr>
  </table>
  </dd>
</dl>
<p>Adds a link to <em>object</em>. </p>

</div>
</div>
<a class="anchor" id="aa3ee33c25154d8e7bbe1e39de970c489"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool gcu::Object::Load </td>
          <td>(</td>
          <td class="paramtype">xmlNodePtr&#160;</td>
          <td class="paramname"><em>node</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">node</td><td>a pointer to the xmlNode containing the serialized object.</td></tr>
  </table>
  </dd>
</dl>
<p>Used to load an <a class="el" href="classgcu_1_1Object.html">Object</a> in memory. The <a class="el" href="classgcu_1_1Object.html">Object</a> must already exist.</p>
<p>Example: </p>
<div class="fragment"><div class="line">std::string str = (<span class="keyword">const</span> <span class="keywordtype">char</span>*)node-&gt;name;</div>
<div class="line"><a class="code" href="classgcu_1_1Object.html#a6f15e766fdfb066008bd4b0779574549">Object</a>* pObject = <a class="code" href="classgcu_1_1Object.html#a0d3837f66eccae5ce73573ca95930dbc">Object::CreateObject</a>(str, <span class="keyword">this</span>);</div>
<div class="line"><span class="keywordflow">if</span> (pObject) {</div>
<div class="line">        <span class="keywordflow">if</span> (!pObject-&gt;Load(node)) <span class="keyword">delete</span> <a class="code" href="classgcu_1_1Object.html#a6f15e766fdfb066008bd4b0779574549">Object</a>;</div>
<div class="line">} <span class="keywordflow">else</span></div>
<div class="line">        cerr &lt;&lt; <span class="stringliteral">&quot;Warning: unknown object: &quot;</span> &lt;&lt; str &lt;&lt; endl;</div>
</div><!-- fragment --><dl class="section return"><dt>Returns</dt><dd>true on succes, false otherwise. </dd></dl>

<p>Reimplemented in <a class="el" href="classgcp_1_1Atom.html#a8eed490ca4ecc446a4a1cdc8aeb46f98">gcp::Atom</a>, <a class="el" href="classgcu_1_1Atom.html#a290a0a8c69ca6667d19e9d7f1d71d190">gcu::Atom</a>, <a class="el" href="classgcp_1_1Fragment.html#a75cac2753415a1e754a24f25ca9e1c1a">gcp::Fragment</a>, <a class="el" href="classgcp_1_1ReactionProp.html#a681f29f2f2849eff3620def09e31cc0b">gcp::ReactionProp</a>, <a class="el" href="classgcp_1_1MechanismArrow.html#a70ea60d1b2ba93f27d694f9dfac9f95c">gcp::MechanismArrow</a>, <a class="el" href="classgcp_1_1Document.html#a442540290608fdc05cb59283821eedfc">gcp::Document</a>, <a class="el" href="classgcp_1_1Brackets.html#a7eee55300bd8a12511c61b8a07fca793">gcp::Brackets</a>, <a class="el" href="classgcp_1_1Molecule.html#af3abe215c266c862151b4301ea30495f">gcp::Molecule</a>, <a class="el" href="classgcu_1_1Bond.html#ae1bcca3ea3e234e33987df3a75fd69fa">gcu::Bond</a>, <a class="el" href="classgcp_1_1TextObject.html#add97059392570701098cbff38acbf320">gcp::TextObject</a>, <a class="el" href="classgcp_1_1FragmentAtom.html#aca577c2cb21b8fcb47fe0790cc41458a">gcp::FragmentAtom</a>, <a class="el" href="classgcp_1_1Electron.html#af160f10e0c3439f3f3213be160858b67">gcp::Electron</a>, <a class="el" href="classgcp_1_1Text.html#a78edca888b30e0044878b8fe3916cea4">gcp::Text</a>, <a class="el" href="classgcp_1_1Reaction.html#ab685cd350215b613741744e4153ff36a">gcp::Reaction</a>, <a class="el" href="classgcp_1_1ReactionStep.html#a62b948ca5659277a4e73d889aca787e6">gcp::ReactionStep</a>, <a class="el" href="classgcp_1_1MechanismStep.html#a5ea37e5da2f9dfe2c4fef820a8f019bd">gcp::MechanismStep</a>, <a class="el" href="classgcp_1_1Arrow.html#a35982ed701601f54af6e6632229b2216">gcp::Arrow</a>, <a class="el" href="classgcp_1_1Mesomer.html#af96bd8e8919f77945bb9f97b68652791">gcp::Mesomer</a>, <a class="el" href="classgcp_1_1Reactant.html#a969a9abef810735e9907197b20058e0a">gcp::Reactant</a>, <a class="el" href="classgcr_1_1Bond.html#ac188dd995ef9ad60c3b4734a5cbeca91">gcr::Bond</a>, <a class="el" href="classgcp_1_1FragmentResidue.html#add2c5572e5eed7d7d88d30f44c76226a">gcp::FragmentResidue</a>, <a class="el" href="classgcp_1_1ReactionArrow.html#a4074632f7c641dab5d685e828767ba92">gcp::ReactionArrow</a>, <a class="el" href="classgcp_1_1MesomeryArrow.html#a286cd6ad058bb8622cd27dd2cd850e48">gcp::MesomeryArrow</a>, and <a class="el" href="classgcp_1_1Mesomery.html#abb7624c8f02e73dc7d907b9e004bbe97">gcp::Mesomery</a>.</p>

</div>
</div>
<a class="anchor" id="a8b4da97be50a4ceea941ab8aa8ece825"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void gcu::Object::Lock </td>
          <td>(</td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>state</em> = <code>true</code></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">state</td><td>whether to block signals or not</td></tr>
  </table>
  </dd>
</dl>
<p>Blocks signals if State is true and unblocs if state is false.</p>
<p>Since 0.4.2 </p>

</div>
</div>
<a class="anchor" id="af5505430c421604ff7e26e4414197fbc"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void gcu::Object::Move </td>
          <td>(</td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>y</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>z</em> = <code>0.</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">x</td><td>the x component of the transation vector. </td></tr>
    <tr><td class="paramname">y</td><td>the y component of the transation vector. </td></tr>
    <tr><td class="paramname">z</td><td>the z component of the transation vector.</td></tr>
  </table>
  </dd>
</dl>
<p>Used to move an object. This virtual method should most often be overrided by <a class="el" href="classgcu_1_1Object.html">Object</a> derived classes for which it makes sense. The base <a class="el" href="classgcu_1_1Object.html">Object</a> class has no coordinates and the default method only loads its id and children. </p>

<p>Reimplemented in <a class="el" href="classgcp_1_1Atom.html#ab74a17bd03ec01c84a96d54c48ef48ea">gcp::Atom</a>, <a class="el" href="classgcu_1_1Atom.html#aab7ca2a758dc755d3da936cae82d1485">gcu::Atom</a>, <a class="el" href="classgcp_1_1Fragment.html#af2cda52423e1902939a18c04e6650c32">gcp::Fragment</a>, <a class="el" href="classgcp_1_1Bond.html#afda351941282758411c86c72bf176e01">gcp::Bond</a>, <a class="el" href="classgcu_1_1Bond.html#a15d7c0d54ba3cb8e9d2886ff331bb1d1">gcu::Bond</a>, <a class="el" href="classgcp_1_1Arrow.html#a5af4f736d76d54237efcf41c2e1ce3e7">gcp::Arrow</a>, <a class="el" href="classgcp_1_1TextObject.html#ac16ac6e2b2274043a6fc989f0fd140c9">gcp::TextObject</a>, <a class="el" href="classgcp_1_1ReactionArrow.html#ab89ac83784668952df0bcf724bf4958f">gcp::ReactionArrow</a>, <a class="el" href="classgcr_1_1Bond.html#a87c0e522a15f29e92db40c7f29d48c0b">gcr::Bond</a>, and <a class="el" href="classgcp_1_1ReactionOperator.html#af62c746dcdf5f637515727fd93ab8d12">gcp::ReactionOperator</a>.</p>

</div>
</div>
<a class="anchor" id="ae19033807f4b7ee9321f308bb0ffd3b9"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual std::string gcu::Object::Name </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>the object generic name. </dd></dl>

<p>Reimplemented in <a class="el" href="classgcp_1_1Fragment.html#acdce2776ff45d1973afa6e07c530538a">gcp::Fragment</a>, <a class="el" href="classgcu_1_1Atom.html#af41bf7c02e9a0dbf77156a9813fa1924">gcu::Atom</a>, <a class="el" href="classgcu_1_1Bond.html#a73fa8e10d0f906019ff18cec1724e194">gcu::Bond</a>, <a class="el" href="classgcp_1_1Arrow.html#a1e7e16f5a31f712b2eb17dff0ff2c33f">gcp::Arrow</a>, <a class="el" href="classgcp_1_1Text.html#a7623de575cdd3efbb3e4c33b3c15e8d2">gcp::Text</a>, <a class="el" href="classgcu_1_1Document.html#a3363de5bb02aec1fda5f4ccee4961c62">gcu::Document</a>, <a class="el" href="classgcu_1_1Chain.html#a1644982524595342b02a318143a3322d">gcu::Chain</a>, <a class="el" href="classgcu_1_1Molecule.html#a4254a7135bdf0265a6199f2a8707ddd0">gcu::Molecule</a>, <a class="el" href="classgcp_1_1MechanismArrow.html#ae9258fbdc62f14034a64c1a2fbd6302f">gcp::MechanismArrow</a>, <a class="el" href="classgcp_1_1ReactionProp.html#a4e52c167f9d853cbdff5e382c4393114">gcp::ReactionProp</a>, <a class="el" href="classgcp_1_1ReactionArrow.html#a4aaf13806d2a5807d7571682dc244184">gcp::ReactionArrow</a>, <a class="el" href="classgcp_1_1Reactant.html#a7f2f26deecac350dc792a60b3ca1084a">gcp::Reactant</a>, <a class="el" href="classgcp_1_1Electron.html#a1863a81f4a8a5d4e841843146dda25fc">gcp::Electron</a>, <a class="el" href="classgcp_1_1Mesomer.html#a275b8fa509ff36e0ee94cd3287f2de35">gcp::Mesomer</a>, <a class="el" href="classgcp_1_1Mesomery.html#a5a70698826b2c8c1c8383e288b99d642">gcp::Mesomery</a>, <a class="el" href="classgcp_1_1Reaction.html#a725910c18667c62845b64037f05c56ef">gcp::Reaction</a>, <a class="el" href="classgcp_1_1MesomeryArrow.html#a0dc1b517bf54fb2818afb0462417a069">gcp::MesomeryArrow</a>, <a class="el" href="classgcp_1_1ReactionStep.html#afd387e2af1e6e8a4caba01a3269f11b2">gcp::ReactionStep</a>, <a class="el" href="classgcu_1_1Cycle.html#a361ce69c31f92c70e21519ad0ee63a5f">gcu::Cycle</a>, <a class="el" href="classgcp_1_1ReactionOperator.html#acb9eaf43066ece7bc380c1ce0357d820">gcp::ReactionOperator</a>, and <a class="el" href="classgcp_1_1MechanismStep.html#a509b919b51ff3cb0ca77330c7bb10209">gcp::MechanismStep</a>.</p>

</div>
</div>
<a class="anchor" id="a67e3c8ee2104cd937aea48dabde7d319"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void gcu::Object::NotifyEmpty </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Called by Object::Destructor() when the parent becomes empty. Default implementation does nothing. </p>

<p>Reimplemented in <a class="el" href="classgcp_1_1MechanismStep.html#a014af792499a6da9c5cc00ce77defe56">gcp::MechanismStep</a>.</p>

<p>Definition at line <a class="el" href="object_8h_source.html#l00582">582</a> of file <a class="el" href="object_8h_source.html">object.h</a>.</p>

</div>
</div>
<a class="anchor" id="af972c30c9990923c34c54754654c3e72"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void gcu::Object::OnLoaded </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>This method should be called when an object has been fully loaded. The default method doesn't do anything. </p>

<p>Reimplemented in <a class="el" href="classgcp_1_1Bond.html#a12cd87134dfaf4230f47f6f9126b8973">gcp::Bond</a>, <a class="el" href="classgcu_1_1Bond.html#a25e547136984cade24ca9d1a7db7b0b9">gcu::Bond</a>, <a class="el" href="classgcp_1_1Arrow.html#a966089aebd4a70f0337b454a2eeaf03f">gcp::Arrow</a>, <a class="el" href="classgcp_1_1Molecule.html#a37c6ce6b2910d96e6afa5bcdf42c1de3">gcp::Molecule</a>, <a class="el" href="classgcp_1_1MechanismArrow.html#ab7d7efdac48b804ac4540268b1225f70">gcp::MechanismArrow</a>, <a class="el" href="classgcp_1_1Brackets.html#aa91ce05033ab1c8963ad46cf83a060c6">gcp::Brackets</a>, and <a class="el" href="classgcp_1_1ReactionStep.html#a8f1e1767c93c8ae3c759dfbff10ae91a">gcp::ReactionStep</a>.</p>

</div>
</div>
<a class="anchor" id="a1ad183ecf7e5b5c42db100da03221e46"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool gcu::Object::OnSignal </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="namespacegcu.html#af13348b065987fa4ca74ca0fb1ffa48e">SignalId</a>&#160;</td>
          <td class="paramname"><em>Signal</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classgcu_1_1Object.html">Object</a> *&#160;</td>
          <td class="paramname"><em>Child</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">Signal</td><td>the appropriate SignalId </td></tr>
    <tr><td class="paramname">Child</td><td>the child which emitted the signal or NULL</td></tr>
  </table>
  </dd>
</dl>
<p>This function is called by the framework when a signal has been emitted for the object. It should not be called by a program; call <a class="el" href="classgcu_1_1Object.html#acf16b429a6875e5620fa8051446ef34c">Object::EmitSignal</a> instead.</p>
<dl class="section return"><dt>Returns</dt><dd>true if the signal should be propagated to the parent, false otherwise. </dd></dl>

<p>Reimplemented in <a class="el" href="classgcp_1_1Document.html#a12f0ce8e7082914af941c0f3f54dde7f">gcp::Document</a>, <a class="el" href="classgcp_1_1Molecule.html#a523bef16f9be6ff01aeb3adf5afcd0d6">gcp::Molecule</a>, <a class="el" href="classgcp_1_1ReactionProp.html#a1236f10924259ac840691f998225ee20">gcp::ReactionProp</a>, <a class="el" href="classgcp_1_1ReactionArrow.html#a61d2424b5fbcb064079a827f51af8dc0">gcp::ReactionArrow</a>, <a class="el" href="classgcp_1_1Electron.html#af00170ff34111426e8fa38fe0c7b03ca">gcp::Electron</a>, <a class="el" href="classgcp_1_1Reactant.html#a1a184264b6a40f1ea34d206cb4edf9d3">gcp::Reactant</a>, <a class="el" href="classgcp_1_1ReactionStep.html#a9ac38c8d8845eec085d38520b686d147">gcp::ReactionStep</a>, <a class="el" href="classgcp_1_1Mesomery.html#a633b6603edb16bb43be3b15961aca26d">gcp::Mesomery</a>, <a class="el" href="classgcp_1_1Reaction.html#a948b28e5711472bff958bf75578d1aa4">gcp::Reaction</a>, <a class="el" href="classgcp_1_1Mesomer.html#ae97baa144dff1bc8f879f39b1dfa1e4f">gcp::Mesomer</a>, and <a class="el" href="classgcp_1_1MechanismStep.html#abfd44e6676d0bf6ff7a159a519aebe81">gcp::MechanismStep</a>.</p>

</div>
</div>
<a class="anchor" id="a786610ff1992e4aa1acff883b5479ec7"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void gcu::Object::OnUnlink </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classgcu_1_1Object.html">Object</a> *&#160;</td>
          <td class="paramname"><em>object</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">object</td><td>the object just unlinked by <a class="el" href="classgcu_1_1Object.html#a606a257c41cd9cc177c98958fdf2ae3d">Object::Unlink</a>.</td></tr>
  </table>
  </dd>
</dl>
<p>Virtual method called when an object has been unlinked. Programs should not call it directly, but should call <a class="el" href="classgcu_1_1Object.html#a786610ff1992e4aa1acff883b5479ec7">Object::OnUnlink</a> instead. </p>

</div>
</div>
<a class="anchor" id="aad462441e79fbd93e158f8294a198d11"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual xmlNodePtr gcu::Object::Save </td>
          <td>(</td>
          <td class="paramtype">xmlDocPtr&#160;</td>
          <td class="paramname"><em>xml</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">xml</td><td>the xmlDoc used to save the document.</td></tr>
  </table>
  </dd>
</dl>
<p>Used to save the <a class="el" href="classgcu_1_1Object.html">Object</a> to the xmlDoc. Each serializable <a class="el" href="classgcu_1_1Object.html">Object</a> should implement this virtual method. </p>
<dl class="section return"><dt>Returns</dt><dd>the xmlNode containing the serialized object. The name of the node should be the name of the corresponding type used as first parameter to the <a class="el" href="classgcu_1_1Object.html#aea6734ca6bde8ae3e0788db43928f42e">Object::AddType</a> method. The default method just saves the id and children. </dd></dl>

<p>Reimplemented in <a class="el" href="classgcp_1_1Atom.html#a67db585c20bdd33ac5ac071794b67dd5">gcp::Atom</a>, <a class="el" href="classgcu_1_1Atom.html#a4d8e69e2c01645367c6c76c2d92c2433">gcu::Atom</a>, <a class="el" href="classgcp_1_1Fragment.html#affe875b4f4d8710b8c5e6b159ee0fd44">gcp::Fragment</a>, <a class="el" href="classgcp_1_1Brackets.html#a8713ca533aaf2a4c3544ac6929f25acc">gcp::Brackets</a>, <a class="el" href="classgcp_1_1MechanismArrow.html#a44a342513dc7b5be4ab8d038fcd1f0d4">gcp::MechanismArrow</a>, <a class="el" href="classgcp_1_1Molecule.html#ad4bb194b40610a85a7d5a894647dbae0">gcp::Molecule</a>, <a class="el" href="classgcu_1_1Bond.html#a32ea64a60ece754c6b23ebea562bcc7f">gcu::Bond</a>, <a class="el" href="classgcp_1_1FragmentAtom.html#a143e33f55d77547cc9be39f2c5e248d0">gcp::FragmentAtom</a>, <a class="el" href="classgcp_1_1Electron.html#ae6b591a8fb2c119a48b359ea3e01e4cf">gcp::Electron</a>, <a class="el" href="classgcp_1_1Text.html#a7ce14e0f0ea6ccaeac985c87e54625f5">gcp::Text</a>, <a class="el" href="classgcp_1_1ReactionStep.html#abbf26ce1420f167113e9646d8148c108">gcp::ReactionStep</a>, <a class="el" href="classgcp_1_1MechanismStep.html#a73cddc7ba4f14ee5bf99bd4385351f9d">gcp::MechanismStep</a>, <a class="el" href="classgcp_1_1Reactant.html#a0cc5bb9cfb7982e50af7ffc65ab1136c">gcp::Reactant</a>, <a class="el" href="classgcp_1_1FragmentResidue.html#aa9860847b53b41355982dc5d1d6c058a">gcp::FragmentResidue</a>, <a class="el" href="classgcp_1_1ReactionArrow.html#a4557c694405c01413e716193eed7d479">gcp::ReactionArrow</a>, and <a class="el" href="classgcp_1_1MesomeryArrow.html#ad823b1b976d6c12c6e6854096cafd228">gcp::MesomeryArrow</a>.</p>

</div>
</div>
<a class="anchor" id="a07de41cb137a650b51920d6186fc82d7"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool gcu::Object::SaveChildren </td>
          <td>(</td>
          <td class="paramtype">xmlDocPtr&#160;</td>
          <td class="paramname"><em>xml</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">xmlNodePtr&#160;</td>
          <td class="paramname"><em>node</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">xml</td><td>the xmlDoc used to save the document. </td></tr>
    <tr><td class="paramname">node</td><td>the node representing the <a class="el" href="classgcu_1_1Object.html">Object</a>.</td></tr>
  </table>
  </dd>
</dl>
<p>This method calls <a class="el" href="classgcu_1_1Object.html#aad462441e79fbd93e158f8294a198d11">Object::Save</a> fo each child of the <a class="el" href="classgcu_1_1Object.html">Object</a> instance and add the xmlNode returned to the children of node. It might be called from the Save method of objects having serializable children. </p>
<dl class="section return"><dt>Returns</dt><dd>true on succes, false otherwise. </dd></dl>

</div>
</div>
<a class="anchor" id="a5f99b290d7e48c38738342dfc984865d"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void gcu::Object::SaveId </td>
          <td>(</td>
          <td class="paramtype">xmlNodePtr&#160;</td>
          <td class="paramname"><em>node</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">node</td><td>the node representing the <a class="el" href="classgcu_1_1Object.html">Object</a>.</td></tr>
  </table>
  </dd>
</dl>
<p>This helper method saves the Id of the node as a property of the xmlNode. </p>

</div>
</div>
<a class="anchor" id="a8159c48a642f3410913e635e23d77f24"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static void gcu::Object::SetCreationLabel </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="namespacegcu.html#a4a6abffbefdd6abf047dca4e63b0bac5">TypeId</a>&#160;</td>
          <td class="paramname"><em>Id</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">std::string&#160;</td>
          <td class="paramname"><em>Label</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">Id</td><td>the TypeId of a class </td></tr>
    <tr><td class="paramname">Label</td><td>the string to display in a contextual menu</td></tr>
  </table>
  </dd>
</dl>
<p>Used to give a label for contextual menus used when the creation of an instance of the class seems possible.</p>
<p>This method is deprecated, use <a class="el" href="classgcu_1_1Application.html#a6cdb4f8fd6a36768da6b5c790a15afcf">Application::SetCreationLabel()</a> instead. </p>

</div>
</div>
<a class="anchor" id="a01ea0147ad675e139ddea7aaa2af503c"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void gcu::Object::SetDirty </td>
          <td>(</td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>dirty</em> = <code>true</code></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">dirty</td><td>should be true if the object needs some update, false otherwise. For a document, it means that the document has been changed. </td></tr>
  </table>
  </dd>
</dl>

<p>Reimplemented in <a class="el" href="classgcp_1_1Document.html#adfe420492ebbe9fa9908508aebdca467">gcp::Document</a>.</p>

</div>
</div>
<a class="anchor" id="ac45cdb13cf013066a3704054c9d06ed0"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void gcu::Object::SetId </td>
          <td>(</td>
          <td class="paramtype">gchar const *&#160;</td>
          <td class="paramname"><em>Id</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">Id</td><td>the id of the <a class="el" href="classgcu_1_1Object.html">Object</a> instance.</td></tr>
  </table>
  </dd>
</dl>
<p>Every object must have an Id, since searches in the document tree uses it. </p>

</div>
</div>
<a class="anchor" id="a0ffe1f48151c92f167eeec303277e45c"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void gcu::Object::SetParent </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classgcu_1_1Object.html">Object</a> *&#160;</td>
          <td class="paramname"><em>Parent</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">Parent</td><td>the new parent of the <a class="el" href="classgcu_1_1Object.html">Object</a> or NULL.</td></tr>
  </table>
  </dd>
</dl>
<p>When Parent is not NULL, this is equivalent to </p>
<div class="fragment"><div class="line">Parent-&gt;AddChild(<span class="keyword">this</span>);</div>
</div><!-- fragment --><p> Otherwise, it removes the <a class="el" href="classgcu_1_1Object.html">Object</a> from the <a class="el" href="classgcu_1_1Document.html">Document</a> tree. </p>

</div>
</div>
<a class="anchor" id="a47862fe83b1c3739ee37b8af81550644"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool gcu::Object::SetProperty </td>
          <td>(</td>
          <td class="paramtype">unsigned&#160;</td>
          <td class="paramname"><em>property</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char const *&#160;</td>
          <td class="paramname"><em>value</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">property</td><td>the property id as defined in <a class="el" href="objprops_8h.html">objprops.h</a> </td></tr>
    <tr><td class="paramname">value</td><td>the property value as a string</td></tr>
  </table>
  </dd>
</dl>
<p>Used when loading to set properties to various objects. If the method returns false, the property should be set again later. This might happen if an atom does not exists when one of its bonds is loaded. All classes supporting the mechanism must overload this method. </p>
<dl class="section return"><dt>Returns</dt><dd>true if the property could be set, or if the property is not relevant, false otherwise. </dd></dl>

<p>Reimplemented in <a class="el" href="classgcp_1_1Atom.html#ae39a3fe66e5bf72ecdf54eb2e08bd8dc">gcp::Atom</a>, <a class="el" href="classgcp_1_1Document.html#a102304483ed40e4accae364a3c5e6388">gcp::Document</a>, <a class="el" href="classgcugtk_1_1SpectrumDocument.html#a1022ed892d3a9407a89ea6897b1e1f12">gcugtk::SpectrumDocument</a>, <a class="el" href="classgcp_1_1Fragment.html#a5e0ae1d8b4771ea1fbe02fdc2041cf6b">gcp::Fragment</a>, <a class="el" href="classgcp_1_1Bond.html#a42351189a42ff109ba72cffb68741431">gcp::Bond</a>, <a class="el" href="classgcu_1_1Atom.html#ac9d2135007a4010d1e4ffffb9aec3227">gcu::Atom</a>, <a class="el" href="classgcr_1_1Atom.html#a3c343958bee49282b671a343218ae165">gcr::Atom</a>, <a class="el" href="classgcr_1_1Document.html#a58cdb1c1ff036513b916c8aca6da2828">gcr::Document</a>, <a class="el" href="classgcp_1_1Text.html#a86b0e65e6760ed69f720f827ef2bfd38">gcp::Text</a>, <a class="el" href="classgcu_1_1Bond.html#a37bf95b6f996cd4201c3c8e2566a717a">gcu::Bond</a>, <a class="el" href="classgcu_1_1Chem3dDoc.html#aba6914ea05a878f8a43b9ba4e9d1a292">gcu::Chem3dDoc</a>, <a class="el" href="classgcp_1_1Arrow.html#a3ffe17fc0cfc7be493749c67d07c2302">gcp::Arrow</a>, and <a class="el" href="classgcp_1_1ReactionArrow.html#a08270f1482a01bd597d5c0ee9f10d12a">gcp::ReactionArrow</a>.</p>

</div>
</div>
<a class="anchor" id="a45b59346e78b7a9927d379bb65df1710"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void gcu::Object::ShowPropertiesDialog </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Exposes the <a class="el" href="classgcu_1_1Dialog.html">gcu::Dialog</a> related to the object properties if it exists. </p>

</div>
</div>
<a class="anchor" id="a69ad6edf7d50950b036f09d9ff86f849"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void gcu::Object::Transform2D </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classgcu_1_1Matrix2D.html">Matrix2D</a> &amp;&#160;</td>
          <td class="paramname"><em>m</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>y</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">m</td><td>the <a class="el" href="classgcu_1_1Matrix2D.html">Matrix2D</a> of the transformation. </td></tr>
    <tr><td class="paramname">x</td><td>the x component of the center of the transformation. </td></tr>
    <tr><td class="paramname">y</td><td>the y component of the center of the transformation.</td></tr>
  </table>
  </dd>
</dl>
<p>Used to move and/or transform an object. This virtual method must be overrided by <a class="el" href="classgcu_1_1Object.html">Object</a> derived classes for which it makes sense. The base <a class="el" href="classgcu_1_1Object.html">Object</a> class has no coordinates and the default method calls the corresponding method for every child. </p>

<p>Reimplemented in <a class="el" href="classgcp_1_1Atom.html#a2636a34f79bd72b0abb7c2e42fd016e0">gcp::Atom</a>, <a class="el" href="classgcu_1_1Atom.html#a2ff6b67af11f6414fe8e972507e37f62">gcu::Atom</a>, <a class="el" href="classgcp_1_1Fragment.html#ab2dbc649fd1d9b1b3cc38e3cdfe07aea">gcp::Fragment</a>, <a class="el" href="classgcp_1_1Bond.html#abe79a5330eb9a97a9a7425a69cc241f3">gcp::Bond</a>, <a class="el" href="classgcp_1_1Brackets.html#afe5cbe63b8f786d6966c3c62527ddfd0">gcp::Brackets</a>, <a class="el" href="classgcp_1_1Text.html#a581a5d0cb39f2a26b35608d019e83cb3">gcp::Text</a>, <a class="el" href="classgcu_1_1Bond.html#a2d60a39d5316071e2f49a220348885cf">gcu::Bond</a>, <a class="el" href="classgcp_1_1MechanismArrow.html#a54197e5401b8e5011f707a6e3d89dcbd">gcp::MechanismArrow</a>, <a class="el" href="classgcp_1_1Arrow.html#abf372b03cedd5966e5119837b3de22f4">gcp::Arrow</a>, <a class="el" href="classgcp_1_1Molecule.html#a7f6eb1535a5b6ae36d8d5a7bfe1ecce5">gcp::Molecule</a>, <a class="el" href="classgcp_1_1Electron.html#a64fbe86c9cb5f72ade35fa703055b5d7">gcp::Electron</a>, <a class="el" href="classgcp_1_1Mesomery.html#ab11a15c03b70b199234ca152d02026c5">gcp::Mesomery</a>, and <a class="el" href="classgcp_1_1Reaction.html#a9de3b3a8e6b0c09e390ea35bc90143fc">gcp::Reaction</a>.</p>

</div>
</div>
<a class="anchor" id="a606a257c41cd9cc177c98958fdf2ae3d"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void gcu::Object::Unlink </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classgcu_1_1Object.html">Object</a> *&#160;</td>
          <td class="paramname"><em>object</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">object</td><td>the object to unlink.</td></tr>
  </table>
  </dd>
</dl>
<p>Unlinks object and calls <a class="el" href="classgcu_1_1Object.html#a786610ff1992e4aa1acff883b5479ec7">Object::OnUnlink</a>. </p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="object_8h_source.html">object.h</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Thu Mar 14 2013 17:34:31 for The Gnome Chemistry Utils by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.1.2
</small></address>
</body>
</html>