Sophie

Sophie

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

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: macros.h File 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><a href="annotated.html"><span>Classes</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="files.html"><span>File&#160;List</span></a></li>
      <li><a href="globals.html"><span>File&#160;Members</span></a></li>
    </ul>
  </div>
<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="dir_6719ab1f1f7655efc2fa43f7eb574fd1.html">libs</a></li><li class="navelem"><a class="el" href="dir_a58dfd42f88c935731f32d659aed32ec.html">gcu</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#define-members">Macros</a>  </div>
  <div class="headertitle">
<div class="title">macros.h File Reference</div>  </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><code>#include &lt;goffice/goffice.h&gt;</code><br/>
</div>
<p><a href="macros_8h_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:a2e6e8322502a538f4583d41206cea297"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="macros_8h.html#a2e6e8322502a538f4583d41206cea297">GCU_PROP</a>(type, member)</td></tr>
<tr class="memitem:a82f428df551c9d2116e35e28f522dc52"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="macros_8h.html#a82f428df551c9d2116e35e28f522dc52">GCU_PROP_EX</a>(type, member)</td></tr>
<tr class="memitem:a4afc3ecac8195714ecd17b3fcfae14b5"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="macros_8h.html#a4afc3ecac8195714ecd17b3fcfae14b5">GCU_POINTER_PROP</a>(type, member)</td></tr>
<tr class="memitem:ae59df402113b58e8e28a7898e09a19a2"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="macros_8h.html#ae59df402113b58e8e28a7898e09a19a2">GCU_RO_PROP</a>(type, member)</td></tr>
<tr class="memitem:af8399c69817174a6241eba28bd47fa3b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="macros_8h.html#af8399c69817174a6241eba28bd47fa3b">GCU_RO_STATIC_PROP</a>(type, member)</td></tr>
<tr class="memitem:a4669fa4e57baed635fa3e090eb659c32"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="macros_8h.html#a4669fa4e57baed635fa3e090eb659c32">GCU_RO_POINTER_PROP</a>(type, member)</td></tr>
<tr class="memitem:ac63298328b07e40af4fe4a5e8d1b8b7c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="macros_8h.html#ac63298328b07e40af4fe4a5e8d1b8b7c">GCU_PROT_PROP</a>(type, member)</td></tr>
<tr class="memitem:ad52419f8ee19ed3a6e49ca7db37e6a47"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="macros_8h.html#ad52419f8ee19ed3a6e49ca7db37e6a47">GCU_PROT_POINTER_PROP</a>(type, member)</td></tr>
<tr class="memitem:a7f327ffde08ae1d96f6e8e788ee41d47"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="macros_8h.html#a7f327ffde08ae1d96f6e8e788ee41d47">GCU_GCONF_GET</a>(key, type, target, defaultval)</td></tr>
<tr class="memitem:a6c15ff41e4a73db737e23088295d77e9"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="macros_8h.html#a6c15ff41e4a73db737e23088295d77e9">GCU_GCONF_GET_NO_CHECK</a>(key, type, target, defaultval)&#160;&#160;&#160;target = go_conf_get_##type (m_ConfNode, key);</td></tr>
<tr class="memitem:a4da94d7466c70f4b3e9ae7f9c1918fb7"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="macros_8h.html#a4da94d7466c70f4b3e9ae7f9c1918fb7">GCU_GCONF_GET_N_TRANSFORM</a>(key, type, target, defaultval, func)</td></tr>
<tr class="memitem:ab53d3fd225a7feb90f841b07bd296a45"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="macros_8h.html#ab53d3fd225a7feb90f841b07bd296a45">GCU_GCONF_GET_STRING</a>(key, target, defaultval)</td></tr>
<tr class="memitem:a71c4fa98fbeb9345f755f7d0cf5553a9"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="macros_8h.html#a71c4fa98fbeb9345f755f7d0cf5553a9">GCU_UPDATE_KEY</a>(key, type, target, action)</td></tr>
<tr class="memitem:a207e0a40d94e290fc8c2dffb19662d81"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="macros_8h.html#a207e0a40d94e290fc8c2dffb19662d81">GCU_UPDATE_STRING_KEY</a>(key, target, action)</td></tr>
</table>
<a name="details" id="details"></a><h2>Detailed Description</h2>
<div class="textblock">
<p>Definition in file <a class="el" href="macros_8h_source.html">macros.h</a>.</p>
</div><h2>Macro Definition Documentation</h2>
<a class="anchor" id="a7f327ffde08ae1d96f6e8e788ee41d47"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define GCU_GCONF_GET</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">type, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">target, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">defaultval&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line">target = go_conf_get_##type (m_ConfNode, key); \</div>
<div class="line">        if (target == (type) 0) \</div>
<div class="line">                target = defaultval;</div>
</div><!-- fragment --><p>This macro gets the numerical value of type <em>type</em> associated to <em>key</em>, and copies it to <em>target</em>. If an error occurs or if the value is 0, <em>defaultval</em> is used instead.<br/>
 If the GOConf mechanism is available in goffice (&gt;= 0.7.0), calling class must have a GOConfNode called m_ConfNode, and the code must provide a GError *error initially set to NULL (GConf version only). The real key is obtained by appending the value of ROOTDIR to <em>key</em>. </p>

<p>Definition at line <a class="el" href="macros_8h_source.html#l00212">212</a> of file <a class="el" href="macros_8h_source.html">macros.h</a>.</p>

</div>
</div>
<a class="anchor" id="a4da94d7466c70f4b3e9ae7f9c1918fb7"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define GCU_GCONF_GET_N_TRANSFORM</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">type, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">target, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">defaultval, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">func&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line">{       \</div>
<div class="line">                type val = go_conf_get_##type (m_ConfNode, key); \</div>
<div class="line">                if (val == (type) 0)    \</div>
<div class="line">                        val = defaultval; \</div>
<div class="line">                target = func (val);    \</div>
<div class="line">        }</div>
</div><!-- fragment --><p>This macro gets the numerical value of type <em>type</em> associated to <em>key</em>. If an error occurs or if the value is 0, <em>defaultval</em> is used instead.<br/>
 The resuting value (which might be the default value) is then passed to <em>func</em> and the result is copied to <em>target</em>. <br/>
 If the GOConf mechanism is available in goffice (&gt;= 0.7.0), calling class must have a GOConfNode called m_ConfNode, and the code must provide a GError *error initially set to NULL (GConf version only). The real key is obtained by appending the value of ROOTDIR to <em>key</em>. </p>

<p>Definition at line <a class="el" href="macros_8h_source.html#l00237">237</a> of file <a class="el" href="macros_8h_source.html">macros.h</a>.</p>

</div>
</div>
<a class="anchor" id="a6c15ff41e4a73db737e23088295d77e9"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define GCU_GCONF_GET_NO_CHECK</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">type, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">target, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">defaultval&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;target = go_conf_get_##type (m_ConfNode, key);</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>This macro gets the numerical value of type <em>type</em> associated to <em>key</em>, and copies it to <em>target</em>. If an error occurs, <em>defaultval</em> is used instead.<br/>
 If the GOConf mechanism is available in goffice (&gt;= 0.7.0), calling class must have a GOConfNode called m_ConfNode, and the code must provide a GError *error initially set to NULL (GConf version only). The real key is obtained by appending the value of ROOTDIR to <em>key</em>. </p>

<p>Definition at line <a class="el" href="macros_8h_source.html#l00224">224</a> of file <a class="el" href="macros_8h_source.html">macros.h</a>.</p>

</div>
</div>
<a class="anchor" id="ab53d3fd225a7feb90f841b07bd296a45"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define GCU_GCONF_GET_STRING</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">target, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">defaultval&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line"><span class="keywordflow">if</span> (target) {   \</div>
<div class="line">                g_free (target);        \</div>
<div class="line">                target = NULL;  \</div>
<div class="line">        }       \</div>
<div class="line">        target = go_conf_get_string (m_ConfNode, key); \</div>
<div class="line">        if (target == NULL &amp;&amp; defaultval)       \</div>
<div class="line">                target = g_strdup (defaultval);</div>
</div><!-- fragment --><p>This macro gets the string value associated to <em>key</em>, and copies it to <em>target</em>. If an error occurs, <em>defaultval</em> is used instead.<br/>
 If <em>target</em> is not NULL when entering the macro, it is deallocated using g_free and set to NULL before calling gconf_client_get_string.<br/>
 Calling class must have a GOConfNode called m_ConfNode, and the code must provide a GError *error initially set to NULL. The real key is obtained by appending the value of ROOTDIR to <em>key</em>. </p>

<p>Definition at line <a class="el" href="macros_8h_source.html#l00254">254</a> of file <a class="el" href="macros_8h_source.html">macros.h</a>.</p>

</div>
</div>
<a class="anchor" id="a4afc3ecac8195714ecd17b3fcfae14b5"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define GCU_POINTER_PROP</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">type, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">member&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line"><span class="keyword">public</span>: \</div>
<div class="line">        void Set##member (type *val) {m_##member = val;}        \</div>
<div class="line">        type *Get##member (<span class="keywordtype">void</span>) {<span class="keywordflow">return</span> m_##member;}   \</div>
<div class="line">        type <span class="keyword">const</span> *Get##member (<span class="keywordtype">void</span>)<span class="keyword"> const </span>{<span class="keywordflow">return</span> m_##member;}       \</div>
<div class="line">private:        \</div>
<div class="line">        type *m_##member;</div>
</div><!-- fragment --><p>Defines a private pointer member with appropriate get/set methods. GCU_POINTER_PROP((Type,Foo) expands to one private member: </p>
<div class="fragment"><div class="line">Type *m_Foo;</div>
</div><!-- fragment --><p>and three public methods: </p>
<div class="fragment"><div class="line"><span class="keywordtype">void</span> SetFoo(Type *val);</div>
<div class="line">Type *GetFoo();</div>
<div class="line">Type <span class="keyword">const</span> *GetFoo() <span class="keyword">const</span>;</div>
</div><!-- fragment --> 
<p>Definition at line <a class="el" href="macros_8h_source.html#l00096">96</a> of file <a class="el" href="macros_8h_source.html">macros.h</a>.</p>

</div>
</div>
<a class="anchor" id="a2e6e8322502a538f4583d41206cea297"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define GCU_PROP</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">type, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">member&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line"><span class="keyword">public</span>: \</div>
<div class="line">        void Set##member (type val) {m_##member = val;} \</div>
<div class="line">        type Get##member (<span class="keywordtype">void</span>)<span class="keyword"> const </span>{<span class="keywordflow">return</span> m_##member;}      \</div>
<div class="line">        type &amp;GetRef##member (<span class="keywordtype">void</span>) {<span class="keywordflow">return</span> m_##member;}        \</div>
<div class="line">private:        \</div>
<div class="line">        type m_##member;</div>
</div><!-- fragment --><p>Defines a private member with appropriate get/set methods. GCU_PROP((Type,Foo) expands to one private member: </p>
<div class="fragment"><div class="line">Type m_Foo;</div>
</div><!-- fragment --><p>and three public methods: </p>
<div class="fragment"><div class="line"><span class="keywordtype">void</span> SetFoo(Type val);</div>
<div class="line">Type GetFoo();</div>
<div class="line">Type&amp; GetRefFoo();</div>
</div><!-- fragment --><p>The last one allows code as: </p>
<div class="fragment"><div class="line">obj.GetRefFoo() = val;</div>
</div><!-- fragment --> 
<p>Definition at line <a class="el" href="macros_8h_source.html#l00050">50</a> of file <a class="el" href="macros_8h_source.html">macros.h</a>.</p>

</div>
</div>
<a class="anchor" id="a82f428df551c9d2116e35e28f522dc52"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define GCU_PROP_EX</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">type, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">member&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line"><span class="keyword">public</span>: \</div>
<div class="line">        void Set##member (type val) {m_##member = val; Changed##member ();}     \</div>
<div class="line">        type Get##member (<span class="keywordtype">void</span>)<span class="keyword"> const </span>{<span class="keywordflow">return</span> m_##member;}      \</div>
<div class="line">private:        \</div>
<div class="line">        void Changed##member (<span class="keywordtype">void</span>);    \</div>
<div class="line">        type m_##member;</div>
</div><!-- fragment --><p>Defines a private member with appropriate get/set methods. GCU_PROP_EX((Type,Foo) expands to one private member: </p>
<div class="fragment"><div class="line">Type m_Foo;</div>
</div><!-- fragment --><p>and two public methods: </p>
<div class="fragment"><div class="line"><span class="keywordtype">void</span> SetFoo(Type val);</div>
<div class="line">Type GetFoo();</div>
</div><!-- fragment --><p>SetFoo() calls private method (void ChangedFoo()) which must be implemented by the class. </p>

<p>Definition at line <a class="el" href="macros_8h_source.html#l00074">74</a> of file <a class="el" href="macros_8h_source.html">macros.h</a>.</p>

</div>
</div>
<a class="anchor" id="ad52419f8ee19ed3a6e49ca7db37e6a47"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define GCU_PROT_POINTER_PROP</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">type, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">member&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line"><span class="keyword">public</span>: \</div>
<div class="line">        type *Get##member (<span class="keywordtype">void</span>) {<span class="keywordflow">return</span> m_##member;}   \</div>
<div class="line">        type <span class="keyword">const</span> *Get##member (<span class="keywordtype">void</span>)<span class="keyword"> const </span>{<span class="keywordflow">return</span> m_##member;}       \</div>
<div class="line">protected:      \</div>
<div class="line">        type *m_##member;</div>
</div><!-- fragment --><p>Defines a protected pointer member with an appropriate get method. The member can be modified the class it belongs too or a friend class or a derived class. The data referenced by the pointer can be modified if the class instance is not const. GCU_PROT_POINTER_PROP((Type,Foo) expands to one private member: </p>
<div class="fragment"><div class="line">Type *m_Foo;</div>
</div><!-- fragment --><p>and two public methods: </p>
<div class="fragment"><div class="line">Type *GetFoo();</div>
<div class="line">Type <span class="keyword">const</span> *GetFoo() <span class="keyword">const</span>;</div>
</div><!-- fragment --> 
<p>Definition at line <a class="el" href="macros_8h_source.html#l00195">195</a> of file <a class="el" href="macros_8h_source.html">macros.h</a>.</p>

</div>
</div>
<a class="anchor" id="ac63298328b07e40af4fe4a5e8d1b8b7c"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define GCU_PROT_PROP</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">type, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">member&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line"><span class="keyword">public</span>: \</div>
<div class="line">        type Get##member (<span class="keywordtype">void</span>) {<span class="keywordflow">return</span> m_##member;}    \</div>
<div class="line">protected:      \</div>
<div class="line">        type m_##member;</div>
</div><!-- fragment --><p>Defines a protected member with an appropriate get method. The member can be modified the class it belongs too or a friend class or a derived class. <a class="el" href="macros_8h.html#ac63298328b07e40af4fe4a5e8d1b8b7c">GCU_PROT_PROP(Type,Foo)</a> expands to one protected member: </p>
<div class="fragment"><div class="line">Type m_Foo;</div>
</div><!-- fragment --><p>and one public method: </p>
<div class="fragment"><div class="line">Type GetFoo();</div>
</div><!-- fragment --> 
<p>Definition at line <a class="el" href="macros_8h_source.html#l00174">174</a> of file <a class="el" href="macros_8h_source.html">macros.h</a>.</p>

</div>
</div>
<a class="anchor" id="a4669fa4e57baed635fa3e090eb659c32"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define GCU_RO_POINTER_PROP</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">type, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">member&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line"><span class="keyword">public</span>: \</div>
<div class="line">        type <span class="keyword">const</span> *Get##member (<span class="keywordtype">void</span>)<span class="keyword"> const </span>{<span class="keywordflow">return</span> m_##member;}       \</div>
<div class="line">private:        \</div>
<div class="line">        type *m_##member;</div>
</div><!-- fragment --><p>Defines a private pointer member an with appropriate get method. RO stands for Read Only. The member can't be modified from outside the class it belongs to or a friend class. GCU_RO_POINTER_PROP((Type,Foo) expands to one private member: </p>
<div class="fragment"><div class="line">Type *m_Foo;</div>
</div><!-- fragment --><p>and one public methods: </p>
<div class="fragment"><div class="line">Type <span class="keyword">const</span> *GetFoo() <span class="keyword">const</span>;</div>
</div><!-- fragment --> 
<p>Definition at line <a class="el" href="macros_8h_source.html#l00155">155</a> of file <a class="el" href="macros_8h_source.html">macros.h</a>.</p>

</div>
</div>
<a class="anchor" id="ae59df402113b58e8e28a7898e09a19a2"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define GCU_RO_PROP</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">type, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">member&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line"><span class="keyword">public</span>: \</div>
<div class="line">        type Get##member (<span class="keywordtype">void</span>)<span class="keyword"> const </span>{<span class="keywordflow">return</span> m_##member;}      \</div>
<div class="line">private:        \</div>
<div class="line">        type m_##member;</div>
</div><!-- fragment --><p>Defines a private member with an appropriate get method. RO stands for Read Only. The member can't be modified from outside the class it belongs to or a friend class. <a class="el" href="macros_8h.html#ae59df402113b58e8e28a7898e09a19a2">GCU_RO_PROP(Type,Foo)</a> expands to one private member: </p>
<div class="fragment"><div class="line">Type m_Foo;</div>
</div><!-- fragment --><p>and one public method: </p>
<div class="fragment"><div class="line">Type GetFoo() <span class="keyword">const</span>;</div>
</div><!-- fragment --> 
<p>Definition at line <a class="el" href="macros_8h_source.html#l00117">117</a> of file <a class="el" href="macros_8h_source.html">macros.h</a>.</p>

</div>
</div>
<a class="anchor" id="af8399c69817174a6241eba28bd47fa3b"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define GCU_RO_STATIC_PROP</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">type, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">member&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line"><span class="keyword">public</span>: \</div>
<div class="line">        type Get##member (<span class="keywordtype">void</span>)<span class="keyword"> const </span>{<span class="keywordflow">return</span> m_##member;}      \</div>
<div class="line">private:        \</div>
<div class="line">        static type m_##member;</div>
</div><!-- fragment --><p>Defines a static private member with an appropriate get method. RO stands for Read Only. The member can't be modified from outside the class it belongs to or a friend class. <a class="el" href="macros_8h.html#af8399c69817174a6241eba28bd47fa3b">GCU_RO_STATIC_PROP(Type,Foo)</a> expands to one private member: </p>
<div class="fragment"><div class="line"><span class="keyword">static</span> Type m_Foo;</div>
</div><!-- fragment --><p>and one public method: </p>
<div class="fragment"><div class="line">Type GetFoo() <span class="keyword">const</span>;</div>
</div><!-- fragment --> 
<p>Definition at line <a class="el" href="macros_8h_source.html#l00136">136</a> of file <a class="el" href="macros_8h_source.html">macros.h</a>.</p>

</div>
</div>
<a class="anchor" id="a71c4fa98fbeb9345f755f7d0cf5553a9"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define GCU_UPDATE_KEY</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">type, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">target, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">action&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line"><span class="keywordflow">if</span> (!strcmp (name, ROOTDIR key)) { \</div>
<div class="line">                target = go_conf_get_##type (node, ((node)? key: ROOTDIR key)); \</div>
<div class="line">                action \</div>
<div class="line">                return; \</div>
<div class="line">        }</div>
</div><!-- fragment --><p>This macro updates a value of type <em>type</em> associated to <em>key</em>, and copies it to <em>target</em>. <em>action</em> is called after setting the target? It also needs a GOConfNode* called node. The real key is obtained by appending the value of ROOTDIR to <em>key</em>. </p>

<p>Definition at line <a class="el" href="macros_8h_source.html#l00269">269</a> of file <a class="el" href="macros_8h_source.html">macros.h</a>.</p>

</div>
</div>
<a class="anchor" id="a207e0a40d94e290fc8c2dffb19662d81"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define GCU_UPDATE_STRING_KEY</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">target, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">action&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line"><span class="keywordflow">if</span> (!strcmp (name, ROOTDIR key)) { \</div>
<div class="line">                target = go_conf_get_string (node, ((node)? key: ROOTDIR key)); \</div>
<div class="line">                action \</div>
<div class="line">                return; \</div>
<div class="line">        }</div>
</div><!-- fragment --><p>This macro updates a string value associated to <em>key</em>, and copies it to <em>target</em>. <em>action</em> is called after setting the target? It also needs a GOConfNode* called node. The real key is obtained by appending the value of ROOTDIR to <em>key</em>. </p>

<p>Definition at line <a class="el" href="macros_8h_source.html#l00282">282</a> of file <a class="el" href="macros_8h_source.html">macros.h</a>.</p>

</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Thu Mar 14 2013 17:34:28 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>