diff options
Diffstat (limited to '')
-rw-r--r-- | docs/doxygen/nel/a02555.html | 7438 |
1 files changed, 7438 insertions, 0 deletions
diff --git a/docs/doxygen/nel/a02555.html b/docs/doxygen/nel/a02555.html new file mode 100644 index 00000000..568b9dd2 --- /dev/null +++ b/docs/doxygen/nel/a02555.html @@ -0,0 +1,7438 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"> +<title>NeL: NLGEORGES::CFormElmStruct class Reference</title> +<link href="doxygen.css" rel="stylesheet" type="text/css"> +</head><body> +<!-- Generated by Doxygen 1.3.6 --> +<div class="qindex"> <form class="search" action="search.php" method="get"> +<a class="qindex" href="main.html">Main Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical List</a> | <a class="qindex" href="annotated.html">Data Structures</a> | <a class="qindex" href="files.html">File List</a> | <a class="qindex" href="namespacemembers.html">Namespace Members</a> | <a class="qindex" href="functions.html">Data Fields</a> | <a class="qindex" href="globals.html">Globals</a> | <a class="qindex" href="pages.html">Related Pages</a> | <span class="search"><u>S</u>earch for <input class="search" type="text" name="query" value="" size="20" accesskey="s"/></span></form></div> +<h1>NLGEORGES::CFormElmStruct Class Reference</h1><code>#include <<a class="el" href="a05729.html">form_elm.h</a>></code> +<p> +<p>Inheritance diagram for NLGEORGES::CFormElmStruct: +<p><center><img src="a02555.png" usemap="#NLGEORGES::CFormElmStruct_map" border="0" alt=""></center> +<map name="NLGEORGES::CFormElmStruct_map"> +<area href="a02550.html" alt="NLGEORGES::CFormElm" shape="rect" coords="0,56,222,80"> +<area href="a02551.html" alt="NLGEORGES::UFormElm" shape="rect" coords="0,0,222,24"> +<area href="a02557.html" alt="NLGEORGES::CFormElmVirtualStruct" shape="rect" coords="0,168,222,192"> +</map> +<hr><a name="_details"></a><h2>Detailed Description</h2> +Define a structure of elements<p> +This structure has pointers on named sub structures in Elements. If a sub structure is empty, its pointer is NULL. +<p> + +<p> +Definition at line <a class="el" href="a05729.html#l00266">266</a> of file <a class="el" href="a05729.html">form_elm.h</a>.<table border=0 cellpadding=0 cellspacing=0> +<tr><td></td></tr> +<tr><td colspan=2><br><h2>Public Types</h2></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>enum </td><td class="memItemRight" valign=bottom><a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> { <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8NLGEORGES_1_1UFormElmw7">NoEval</a>, +<a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8NLGEORGES_1_1UFormElmw2">Formula</a>, +<a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8NLGEORGES_1_1UFormElmw1">Eval</a> + }</td></tr> + +<tr><td class="mdescLeft"> </td><td class="mdescRight">Value evalution. <a href="#NLGEORGES_1_1UFormElmw8">More...</a><br><br></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>enum </td><td class="memItemRight" valign=bottom><a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw9">TWhereIsNode</a> { <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw9NLGEORGES_1_1UFormElmw4">NodeForm</a>, +<a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw9NLGEORGES_1_1UFormElmw5">NodeParentForm</a>, +<a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw9NLGEORGES_1_1UFormElmw3">NodeDfn</a>, +<a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw9NLGEORGES_1_1UFormElmw6">NodeType</a> + }</td></tr> + +<tr><td class="mdescLeft"> </td><td class="mdescRight">Where a node has been found. <a href="#NLGEORGES_1_1UFormElmw9">More...</a><br><br></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>enum </td><td class="memItemRight" valign=bottom><a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw10">TWhereIsValue</a> { <br> + <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw10NLGEORGES_1_1UFormElmw13">ValueForm</a>, +<a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw10NLGEORGES_1_1UFormElmw14">ValueParentForm</a>, +<a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw10NLGEORGES_1_1UFormElmw11">ValueDefaultDfn</a>, +<a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw10NLGEORGES_1_1UFormElmw12">ValueDefaultType</a>, +<br> + <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw10NLGEORGES_1_1UFormElmw0">Dummy</a> = 0xffffffff +<br> + }</td></tr> + +<tr><td class="mdescLeft"> </td><td class="mdescRight">Where a value has been found. <a href="#NLGEORGES_1_1UFormElmw10">More...</a><br><br></td></tr> +<tr><td colspan=2><br><h2>Public Member Functions</h2></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa0">arrayDeleteNodeByName</a> (const char *name, const <a class="el" href="a02546.html">CFormDfn</a> **parentDfn, <a class="el" href="a04558.html#a15">uint</a> &indexDfn, const <a class="el" href="a02546.html">CFormDfn</a> **nodeDfn, const <a class="el" href="a03622.html">CType</a> **nodeType, <a class="el" href="a02550.html">CFormElm</a> **node, <a class="el" href="a02547.html#NLGEORGES_1_1UFormDfnw3">UFormDfn::TEntryType</a> &<a class="el" href="a04223.html#a581">type</a>, bool &array, bool verbose, <a class="el" href="a04558.html#a15">uint</a> arrayIndex) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa1">arrayInsertNodeByName</a> (const char *name, const <a class="el" href="a02546.html">CFormDfn</a> **parentDfn, <a class="el" href="a04558.html#a15">uint</a> &indexDfn, const <a class="el" href="a02546.html">CFormDfn</a> **nodeDfn, const <a class="el" href="a03622.html">CType</a> **nodeType, <a class="el" href="a02550.html">CFormElm</a> **node, <a class="el" href="a02547.html#NLGEORGES_1_1UFormDfnw3">UFormDfn::TEntryType</a> &<a class="el" href="a04223.html#a581">type</a>, bool &array, bool verbose, <a class="el" href="a04558.html#a15">uint</a> arrayIndex) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructa2">build</a> (const <a class="el" href="a02546.html">CFormDfn</a> *dfn)</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top> </td><td class="memItemRight" valign=bottom><a class="el" href="a02555.html#NLGEORGES_1_1CFormElmStructa3">CFormElmStruct</a> (<a class="el" href="a02544.html">CForm</a> *form, <a class="el" href="a02550.html">CFormElm</a> *parentNode, const <a class="el" href="a02546.html">CFormDfn</a> *parentDfn, <a class="el" href="a04558.html#a15">uint</a> parentIndex)</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructa4">clean</a> ()</td></tr> + +<tr><td class="mdescLeft"> </td><td class="mdescRight">Reset contents. <a href="#NLGEORGES_1_1CFormElmVirtualStructa4"></a><br><br></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa5">convertValue</a> (<a class="el" href="a03337.html">NLMISC::CRGBA</a> &result, const char *<a class="el" href="a04223.html#a658">value</a>) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa6">convertValue</a> (bool &result, const char *<a class="el" href="a04223.html#a658">value</a>) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa7">convertValue</a> (double &result, const char *<a class="el" href="a04223.html#a658">value</a>) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa8">convertValue</a> (float &result, const char *<a class="el" href="a04223.html#a658">value</a>) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa9">convertValue</a> (<a class="el" href="a04558.html#a11">uint32</a> &result, const char *<a class="el" href="a04223.html#a658">value</a>) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa10">convertValue</a> (<a class="el" href="a04558.html#a10">sint32</a> &result, const char *<a class="el" href="a04223.html#a658">value</a>) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa11">convertValue</a> (<a class="el" href="a04558.html#a9">uint16</a> &result, const char *<a class="el" href="a04223.html#a658">value</a>) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa12">convertValue</a> (<a class="el" href="a04558.html#a8">sint16</a> &result, const char *<a class="el" href="a04223.html#a658">value</a>) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa13">convertValue</a> (<a class="el" href="a04558.html#a7">uint8</a> &result, const char *<a class="el" href="a04223.html#a658">value</a>) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa14">convertValue</a> (<a class="el" href="a04558.html#a6">sint8</a> &result, const char *<a class="el" href="a04223.html#a658">value</a>) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa15">createNodeByName</a> (const char *name, const <a class="el" href="a02546.html">CFormDfn</a> **parentDfn, <a class="el" href="a04558.html#a15">uint</a> &indexDfn, const <a class="el" href="a02546.html">CFormDfn</a> **nodeDfn, const <a class="el" href="a03622.html">CType</a> **nodeType, <a class="el" href="a02550.html">CFormElm</a> **node, <a class="el" href="a02547.html#NLGEORGES_1_1UFormDfnw3">UFormDfn::TEntryType</a> &<a class="el" href="a04223.html#a581">type</a>, bool &array, bool &created)</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa16">deleteNodeByName</a> (const char *name, const <a class="el" href="a02546.html">CFormDfn</a> **parentDfn, <a class="el" href="a04558.html#a15">uint</a> &indexDfn, const <a class="el" href="a02546.html">CFormDfn</a> **nodeDfn, const <a class="el" href="a03622.html">CType</a> **nodeType, <a class="el" href="a02550.html">CFormElm</a> **node, <a class="el" href="a02547.html#NLGEORGES_1_1UFormDfnw3">UFormDfn::TEntryType</a> &<a class="el" href="a04223.html#a581">type</a>, bool &array)</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa17">getArrayNode</a> (<a class="el" href="a02551.html">UFormElm</a> **result, <a class="el" href="a04558.html#a15">uint</a> arrayIndex)</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa18">getArrayNode</a> (const <a class="el" href="a02551.html">UFormElm</a> **result, <a class="el" href="a04558.html#a15">uint</a> arrayIndex) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa19">getArrayNodeName</a> (std::string &result, <a class="el" href="a04558.html#a15">uint</a> arrayIndex) const </td></tr> + +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the name of a table element. <a href="#NLGEORGES_1_1CFormElmVirtualStructa19"></a><br><br></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa20">getArraySize</a> (<a class="el" href="a04558.html#a15">uint</a> &<a class="el" href="a04223.html#a587">size</a>) const </td></tr> + +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return true if the element is an array and fill size with the array size. <a href="#NLGEORGES_1_1CFormElmVirtualStructa20"></a><br><br></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa21">getArrayValue</a> (<a class="el" href="a03337.html">NLMISC::CRGBA</a> &result, <a class="el" href="a04558.html#a15">uint</a> arrayIndex, <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> evaluate, <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw10">TWhereIsValue</a> *where) const </td></tr> + +<tr><td class="mdescLeft"> </td><td class="mdescRight">Warning, only R, G and B members are filled, not A. <a href="#NLGEORGES_1_1CFormElmVirtualStructa21"></a><br><br></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa22">getArrayValue</a> (bool &result, <a class="el" href="a04558.html#a15">uint</a> arrayIndex, <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> evaluate, <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw10">TWhereIsValue</a> *where) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa23">getArrayValue</a> (double &result, <a class="el" href="a04558.html#a15">uint</a> arrayIndex, <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> evaluate, <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw10">TWhereIsValue</a> *where) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa24">getArrayValue</a> (float &result, <a class="el" href="a04558.html#a15">uint</a> arrayIndex, <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> evaluate, <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw10">TWhereIsValue</a> *where) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa25">getArrayValue</a> (<a class="el" href="a04558.html#a11">uint32</a> &result, <a class="el" href="a04558.html#a15">uint</a> arrayIndex, <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> evaluate, <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw10">TWhereIsValue</a> *where) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa26">getArrayValue</a> (<a class="el" href="a04558.html#a10">sint32</a> &result, <a class="el" href="a04558.html#a15">uint</a> arrayIndex, <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> evaluate, <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw10">TWhereIsValue</a> *where) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa27">getArrayValue</a> (<a class="el" href="a04558.html#a9">uint16</a> &result, <a class="el" href="a04558.html#a15">uint</a> arrayIndex, <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> evaluate, <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw10">TWhereIsValue</a> *where) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa28">getArrayValue</a> (<a class="el" href="a04558.html#a8">sint16</a> &result, <a class="el" href="a04558.html#a15">uint</a> arrayIndex, <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> evaluate, <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw10">TWhereIsValue</a> *where) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa29">getArrayValue</a> (<a class="el" href="a04558.html#a7">uint8</a> &result, <a class="el" href="a04558.html#a15">uint</a> arrayIndex, <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> evaluate, <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw10">TWhereIsValue</a> *where) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa30">getArrayValue</a> (<a class="el" href="a04558.html#a6">sint8</a> &result, <a class="el" href="a04558.html#a15">uint</a> arrayIndex, <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> evaluate, <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw10">TWhereIsValue</a> *where) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa31">getArrayValue</a> (std::string &result, <a class="el" href="a04558.html#a15">uint</a> arrayIndex, <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> evaluate, <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw10">TWhereIsValue</a> *where) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructa32">getDependencies</a> (std::set< std::string > &dependencies) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmStructa33">getDfnName</a> (std::string &dfnName) const </td></tr> + +<tr><td class="mdescLeft"> </td><td class="mdescRight">Get the dfn filename for this virtual struct. Must be a virtual struct node. <a href="#NLGEORGES_1_1CFormElmStructa33"></a><br><br></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a02544.html">CForm</a> * </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa34">getForm</a> () const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructa35">getFormName</a> (std::string &result, const <a class="el" href="a02550.html">CFormElm</a> *child) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa36">getNodeByName</a> (const char *name, const <a class="el" href="a02546.html">CFormDfn</a> **parentDfn, <a class="el" href="a04558.html#a15">uint</a> &indexDfn, const <a class="el" href="a02546.html">CFormDfn</a> **nodeDfn, const <a class="el" href="a03622.html">CType</a> **nodeType, <a class="el" href="a02550.html">CFormElm</a> **node, <a class="el" href="a02547.html#NLGEORGES_1_1UFormDfnw3">UFormDfn::TEntryType</a> &<a class="el" href="a04223.html#a581">type</a>, bool &array, bool &parentVDfnArray, bool verbose, <a class="el" href="a04558.html#a11">uint32</a> round) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa37">getNodeByName</a> (<a class="el" href="a02551.html">UFormElm</a> **result, const char *name, <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw9">TWhereIsNode</a> *where, bool verbose, <a class="el" href="a04558.html#a11">uint32</a> round=0)</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa38">getNodeByName</a> (const <a class="el" href="a02551.html">UFormElm</a> **result, const char *name, <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw9">TWhereIsNode</a> *where, bool verbose, <a class="el" href="a04558.html#a11">uint32</a> round=0) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual <a class="el" href="a02551.html">UFormElm</a> * </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa39">getParent</a> () const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a02547.html">UFormDfn</a> * </td><td class="memItemRight" valign=bottom><a class="el" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructa40">getStructDfn</a> ()</td></tr> + +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the struct dfn. <a href="#NLGEORGES_1_1CFormElmVirtualStructa40"></a><br><br></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructa41">getStructNode</a> (<a class="el" href="a04558.html#a15">uint</a> element, <a class="el" href="a02551.html">UFormElm</a> **result)</td></tr> + +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a mutable element pointer. Can be NULL if the node doesn't exist. <a href="#NLGEORGES_1_1CFormElmVirtualStructa41"></a><br><br></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructa42">getStructNode</a> (<a class="el" href="a04558.html#a15">uint</a> element, const <a class="el" href="a02551.html">UFormElm</a> **result) const </td></tr> + +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a const element pointer. Can be NULL if the node doesn't exist. <a href="#NLGEORGES_1_1CFormElmVirtualStructa42"></a><br><br></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructa43">getStructNodeName</a> (<a class="el" href="a04558.html#a15">uint</a> element, std::string &result) const </td></tr> + +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the element name. <a href="#NLGEORGES_1_1CFormElmVirtualStructa43"></a><br><br></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructa44">getStructSize</a> (<a class="el" href="a04558.html#a15">uint</a> &<a class="el" href="a04223.html#a587">size</a>) const </td></tr> + +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the struct size. <a href="#NLGEORGES_1_1CFormElmVirtualStructa44"></a><br><br></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa45">getValue</a> (<a class="el" href="a03337.html">NLMISC::CRGBA</a> &resultname, <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> evaluate) const </td></tr> + +<tr><td class="mdescLeft"> </td><td class="mdescRight">Warning, only R, G and B members are filled, not A. <a href="#NLGEORGES_1_1CFormElmVirtualStructa45"></a><br><br></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa46">getValue</a> (bool &resultname, <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> evaluate) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa47">getValue</a> (double &resultname, <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> evaluate) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa48">getValue</a> (float &resultname, <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> evaluate) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa49">getValue</a> (<a class="el" href="a04558.html#a11">uint32</a> &resultname, <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> evaluate) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa50">getValue</a> (<a class="el" href="a04558.html#a10">sint32</a> &resultname, <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> evaluate) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa51">getValue</a> (<a class="el" href="a04558.html#a9">uint16</a> &resultname, <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> evaluate) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa52">getValue</a> (<a class="el" href="a04558.html#a8">sint16</a> &resultname, <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> evaluate) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa53">getValue</a> (<a class="el" href="a04558.html#a7">uint8</a> &resultname, <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> evaluate) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa54">getValue</a> (<a class="el" href="a04558.html#a6">sint8</a> &resultname, <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> evaluate) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa55">getValue</a> (std::string &resultname, <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> evaluate) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa56">getValueByName</a> (<a class="el" href="a03337.html">NLMISC::CRGBA</a> &result, const char *name, <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> evaluate, <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw10">TWhereIsValue</a> *where, <a class="el" href="a04558.html#a11">uint32</a> round=0) const </td></tr> + +<tr><td class="mdescLeft"> </td><td class="mdescRight">Warning, only R, G and B members are filled, not A. <a href="#NLGEORGES_1_1CFormElmVirtualStructa56"></a><br><br></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa57">getValueByName</a> (bool &result, const char *name, <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> evaluate, <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw10">TWhereIsValue</a> *where, <a class="el" href="a04558.html#a11">uint32</a> round=0) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa58">getValueByName</a> (double &result, const char *name, <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> evaluate, <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw10">TWhereIsValue</a> *where, <a class="el" href="a04558.html#a11">uint32</a> round=0) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa59">getValueByName</a> (float &result, const char *name, <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> evaluate, <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw10">TWhereIsValue</a> *where, <a class="el" href="a04558.html#a11">uint32</a> round=0) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa60">getValueByName</a> (<a class="el" href="a04558.html#a11">uint32</a> &result, const char *name, <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> evaluate, <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw10">TWhereIsValue</a> *where, <a class="el" href="a04558.html#a11">uint32</a> round=0) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa61">getValueByName</a> (<a class="el" href="a04558.html#a10">sint32</a> &result, const char *name, <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> evaluate, <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw10">TWhereIsValue</a> *where, <a class="el" href="a04558.html#a11">uint32</a> round=0) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa62">getValueByName</a> (<a class="el" href="a04558.html#a9">uint16</a> &result, const char *name, <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> evaluate, <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw10">TWhereIsValue</a> *where, <a class="el" href="a04558.html#a11">uint32</a> round=0) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa63">getValueByName</a> (<a class="el" href="a04558.html#a8">sint16</a> &result, const char *name, <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> evaluate, <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw10">TWhereIsValue</a> *where, <a class="el" href="a04558.html#a11">uint32</a> round=0) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa64">getValueByName</a> (<a class="el" href="a04558.html#a7">uint8</a> &result, const char *name, <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> evaluate, <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw10">TWhereIsValue</a> *where, <a class="el" href="a04558.html#a11">uint32</a> round=0) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa65">getValueByName</a> (<a class="el" href="a04558.html#a6">sint8</a> &result, const char *name, <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> evaluate, <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw10">TWhereIsValue</a> *where, <a class="el" href="a04558.html#a11">uint32</a> round=0) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa66">getValueByName</a> (std::string &result, const char *name, <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> evaluate, <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw10">TWhereIsValue</a> *where, <a class="el" href="a04558.html#a11">uint32</a> round=0) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa67">isArray</a> () const </td></tr> + +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return true if the element is an array. <a href="#NLGEORGES_1_1CFormElmVirtualStructa67"></a><br><br></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa68">isAtom</a> () const </td></tr> + +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return true if the element is an atom. <a href="#NLGEORGES_1_1CFormElmVirtualStructa68"></a><br><br></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructa69">isStruct</a> () const </td></tr> + +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return true if the element is a struct or a virtual struct. <a href="#NLGEORGES_1_1CFormElmVirtualStructa69"></a><br><br></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02555.html#NLGEORGES_1_1CFormElmStructa70">isUsed</a> (const <a class="el" href="a02544.html">CForm</a> *form) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmStructa71">isVirtualStruct</a> () const </td></tr> + +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return true if the element is a virtual struct. <a href="#NLGEORGES_1_1CFormElmStructa71"></a><br><br></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructa72">read</a> (xmlNodePtr node, <a class="el" href="a02558.html">CFormLoader</a> &loader, const <a class="el" href="a02546.html">CFormDfn</a> *dfn, <a class="el" href="a02544.html">CForm</a> *form)</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa74">setValueByName</a> (<a class="el" href="a03337.html">NLMISC::CRGBA</a> <a class="el" href="a04223.html#a658">value</a>, const char *name, bool *created)</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa75">setValueByName</a> (bool <a class="el" href="a04223.html#a658">value</a>, const char *name, bool *created)</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa76">setValueByName</a> (double <a class="el" href="a04223.html#a658">value</a>, const char *name, bool *created)</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa77">setValueByName</a> (float <a class="el" href="a04223.html#a658">value</a>, const char *name, bool *created)</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa78">setValueByName</a> (<a class="el" href="a04558.html#a11">uint32</a> <a class="el" href="a04223.html#a658">value</a>, const char *name, bool *created)</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa79">setValueByName</a> (<a class="el" href="a04558.html#a10">sint32</a> <a class="el" href="a04223.html#a658">value</a>, const char *name, bool *created)</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa80">setValueByName</a> (<a class="el" href="a04558.html#a9">uint16</a> <a class="el" href="a04223.html#a658">value</a>, const char *name, bool *created)</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa81">setValueByName</a> (<a class="el" href="a04558.html#a8">sint16</a> <a class="el" href="a04223.html#a658">value</a>, const char *name, bool *created)</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa82">setValueByName</a> (<a class="el" href="a04558.html#a7">uint8</a> <a class="el" href="a04223.html#a658">value</a>, const char *name, bool *created)</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa83">setValueByName</a> (<a class="el" href="a04558.html#a6">sint8</a> <a class="el" href="a04223.html#a658">value</a>, const char *name, bool *created)</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa84">setValueByName</a> (const char *<a class="el" href="a04223.html#a658">value</a>, const char *name, bool *created)</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructa85">unlink</a> (<a class="el" href="a02550.html">CFormElm</a> *child)</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void </td><td class="memItemRight" valign=bottom><a class="el" href="a02555.html#NLGEORGES_1_1CFormElmStructa85">warning</a> (bool exception, const char *function, const char *<a class="el" href="a04223.html#a641">format</a>,...) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>xmlNodePtr </td><td class="memItemRight" valign=bottom><a class="el" href="a02555.html#NLGEORGES_1_1CFormElmStructa86">write</a> (xmlNodePtr node, const <a class="el" href="a02544.html">CForm</a> *form, const char *structName, bool forceWrite=false) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual </td><td class="memItemRight" valign=bottom><a class="el" href="a02555.html#NLGEORGES_1_1CFormElmStructa87">~CFormElmStruct</a> ()</td></tr> + +<tr><td colspan=2><br><h2>Static Public Member Functions</h2></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>const char * </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructe0">tokenize</a> (const char *name, std::string &str, <a class="el" href="a04558.html#a15">uint</a> &errorIndex, <a class="el" href="a04558.html#a15">uint</a> &code)</td></tr> + +<tr><td colspan=2><br><h2>Data Fields</h2></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>std::vector< <a class="el" href="a02556.html">CFormElmStructElm</a> > </td><td class="memItemRight" valign=bottom><a class="el" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructo1">Elements</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a03408.html">NLMISC::CSmartPtr</a>< <a class="el" href="a02546.html">CFormDfn</a> > </td><td class="memItemRight" valign=bottom><a class="el" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructo2">FormDfn</a></td></tr> + +<tr><td colspan=2><br><h2>Protected Types</h2></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>enum </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructx3">TNodeAction</a> { <a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructx3NLGEORGES_1_1CFormElmVirtualStructx2">Return</a>, +<a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructx3NLGEORGES_1_1CFormElmVirtualStructx0">Create</a>, +<a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructx3NLGEORGES_1_1CFormElmVirtualStructx1">Delete</a> + }</td></tr> + +<tr><td colspan=2><br><h2>Static Protected Member Functions</h2></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructf0">getIternalNodeByName</a> (<a class="el" href="a02544.html">CForm</a> *form, const char *name, const <a class="el" href="a02546.html">CFormDfn</a> **parentDfn, <a class="el" href="a04558.html#a15">uint</a> &indexDfn, const <a class="el" href="a02546.html">CFormDfn</a> **nodeDfn, const <a class="el" href="a03622.html">CType</a> **nodeType, <a class="el" href="a02550.html">CFormElm</a> **node, <a class="el" href="a02547.html#NLGEORGES_1_1UFormDfnw3">UFormDfn::TEntryType</a> &<a class="el" href="a04223.html#a581">type</a>, bool &array, <a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructx3">TNodeAction</a> action, bool &created, bool &parentVDfnArray, bool verbose, <a class="el" href="a04558.html#a11">uint32</a> round)</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructf1">warning</a> (bool exception, const char *formName, const char *formFileName, const char *function, const char *<a class="el" href="a04223.html#a641">format</a>,...)</td></tr> + +<tr><td colspan=2><br><h2>Protected Attributes</h2></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a02544.html">CForm</a> * </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructp0">Form</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>const <a class="el" href="a02546.html">CFormDfn</a> * </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructp1">ParentDfn</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a04558.html#a15">uint</a> </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructp2">ParentIndex</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a02550.html">CFormElm</a> * </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructp3">ParentNode</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a04558.html#a11">uint32</a> </td><td class="memItemRight" valign=bottom><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructp4">Round</a></td></tr> + +</table> +<hr><h2>Member Enumeration Documentation</h2> +<a class="anchor" name="NLGEORGES_1_1UFormElmw8" doxytag="NLGEORGES::CFormElmStruct::TEval" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> enum <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">NLGEORGES::UFormElm::TEval</a><code> [inherited]</code> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Value evalution. +<p> +<dl compact><dt><b>Enumeration values: </b></dt><dd> +<table border=0 cellspacing=2 cellpadding=0> +<tr><td valign=top><em><a class="anchor" name="NLGEORGES_1_1UFormElmw8NLGEORGES_1_1UFormElmw7" doxytag="NoEval" ></a>NoEval</em> </td><td> +</td></tr> +<tr><td valign=top><em><a class="anchor" name="NLGEORGES_1_1UFormElmw8NLGEORGES_1_1UFormElmw2" doxytag="Formula" ></a>Formula</em> </td><td> +The value will not be evaluated at all, the litteral value will be returned. </td></tr> +<tr><td valign=top><em><a class="anchor" name="NLGEORGES_1_1UFormElmw8NLGEORGES_1_1UFormElmw1" doxytag="Eval" ></a>Eval</em> </td><td> +Eval the enumeration value, but don't evaluate the formula nor the value references. </td></tr> +</table> +</dl> + +<p> +Definition at line <a class="el" href="a06603.html#l00047">47</a> of file <a class="el" href="a06603.html">u_form_elm.h</a>. +<p> +<div class="fragment"><pre>00048 { +00049 <a class="code" href="a02551.html#NLGEORGES_1_1UFormElmw8NLGEORGES_1_1UFormElmw7">NoEval</a>, +00050 <a class="code" href="a02551.html#NLGEORGES_1_1UFormElmw8NLGEORGES_1_1UFormElmw2">Formula</a>, +00051 <a class="code" href="a02551.html#NLGEORGES_1_1UFormElmw8NLGEORGES_1_1UFormElmw1">Eval</a>, +00052 }; +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructx3" doxytag="NLGEORGES::CFormElmStruct::TNodeAction" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> enum <a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructx3">NLGEORGES::CFormElm::TNodeAction</a><code> [protected, inherited]</code> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +<dl compact><dt><b>Enumeration values: </b></dt><dd> +<table border=0 cellspacing=2 cellpadding=0> +<tr><td valign=top><em><a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructx3NLGEORGES_1_1CFormElmVirtualStructx2" doxytag="Return" ></a>Return</em> </td><td> +</td></tr> +<tr><td valign=top><em><a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructx3NLGEORGES_1_1CFormElmVirtualStructx0" doxytag="Create" ></a>Create</em> </td><td> +</td></tr> +<tr><td valign=top><em><a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructx3NLGEORGES_1_1CFormElmVirtualStructx1" doxytag="Delete" ></a>Delete</em> </td><td> +</td></tr> +</table> +</dl> + +<p> +Definition at line <a class="el" href="a05729.html#l00195">195</a> of file <a class="el" href="a05729.html">form_elm.h</a>. +<p> +<div class="fragment"><pre>00196 { +00197 <a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructx3NLGEORGES_1_1CFormElmVirtualStructx2">Return</a>, +00198 <a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructx3NLGEORGES_1_1CFormElmVirtualStructx0">Create</a>, +00199 <a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructx3NLGEORGES_1_1CFormElmVirtualStructx1">Delete</a>, +00200 }; +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1UFormElmw9" doxytag="NLGEORGES::CFormElmStruct::TWhereIsNode" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> enum <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw9">NLGEORGES::UFormElm::TWhereIsNode</a><code> [inherited]</code> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Where a node has been found. +<p> +<dl compact><dt><b>Enumeration values: </b></dt><dd> +<table border=0 cellspacing=2 cellpadding=0> +<tr><td valign=top><em><a class="anchor" name="NLGEORGES_1_1UFormElmw9NLGEORGES_1_1UFormElmw4" doxytag="NodeForm" ></a>NodeForm</em> </td><td> +</td></tr> +<tr><td valign=top><em><a class="anchor" name="NLGEORGES_1_1UFormElmw9NLGEORGES_1_1UFormElmw5" doxytag="NodeParentForm" ></a>NodeParentForm</em> </td><td> +The node has been found in the form. </td></tr> +<tr><td valign=top><em><a class="anchor" name="NLGEORGES_1_1UFormElmw9NLGEORGES_1_1UFormElmw3" doxytag="NodeDfn" ></a>NodeDfn</em> </td><td> +The node has been found in the parent form. </td></tr> +<tr><td valign=top><em><a class="anchor" name="NLGEORGES_1_1UFormElmw9NLGEORGES_1_1UFormElmw6" doxytag="NodeType" ></a>NodeType</em> </td><td> +The node is a DFN. </td></tr> +</table> +</dl> + +<p> +Definition at line <a class="el" href="a06603.html#l00055">55</a> of file <a class="el" href="a06603.html">u_form_elm.h</a>. +<p> +<div class="fragment"><pre>00056 { +00057 <a class="code" href="a02551.html#NLGEORGES_1_1UFormElmw9NLGEORGES_1_1UFormElmw4">NodeForm</a>, +00058 <a class="code" href="a02551.html#NLGEORGES_1_1UFormElmw9NLGEORGES_1_1UFormElmw5">NodeParentForm</a>, +00059 <a class="code" href="a02551.html#NLGEORGES_1_1UFormElmw9NLGEORGES_1_1UFormElmw3">NodeDfn</a>, +00060 <a class="code" href="a02551.html#NLGEORGES_1_1UFormElmw9NLGEORGES_1_1UFormElmw6">NodeType</a>, +00061 }; +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1UFormElmw10" doxytag="NLGEORGES::CFormElmStruct::TWhereIsValue" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> enum <a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw10">NLGEORGES::UFormElm::TWhereIsValue</a><code> [inherited]</code> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Where a value has been found. +<p> +<dl compact><dt><b>Enumeration values: </b></dt><dd> +<table border=0 cellspacing=2 cellpadding=0> +<tr><td valign=top><em><a class="anchor" name="NLGEORGES_1_1UFormElmw10NLGEORGES_1_1UFormElmw13" doxytag="ValueForm" ></a>ValueForm</em> </td><td> +</td></tr> +<tr><td valign=top><em><a class="anchor" name="NLGEORGES_1_1UFormElmw10NLGEORGES_1_1UFormElmw14" doxytag="ValueParentForm" ></a>ValueParentForm</em> </td><td> +The value has been found in the form. </td></tr> +<tr><td valign=top><em><a class="anchor" name="NLGEORGES_1_1UFormElmw10NLGEORGES_1_1UFormElmw11" doxytag="ValueDefaultDfn" ></a>ValueDefaultDfn</em> </td><td> +The value has been found in the parent form. </td></tr> +<tr><td valign=top><em><a class="anchor" name="NLGEORGES_1_1UFormElmw10NLGEORGES_1_1UFormElmw12" doxytag="ValueDefaultType" ></a>ValueDefaultType</em> </td><td> +The value has been found in the DFN default value. </td></tr> +<tr><td valign=top><em><a class="anchor" name="NLGEORGES_1_1UFormElmw10NLGEORGES_1_1UFormElmw0" doxytag="Dummy" ></a>Dummy</em> </td><td> +The value has been found in the TYPE default value. </td></tr> +</table> +</dl> + +<p> +Definition at line <a class="el" href="a06603.html#l00094">94</a> of file <a class="el" href="a06603.html">u_form_elm.h</a>. +<p> +<div class="fragment"><pre>00095 { +00096 <a class="code" href="a02551.html#NLGEORGES_1_1UFormElmw10NLGEORGES_1_1UFormElmw13">ValueForm</a>, +00097 <a class="code" href="a02551.html#NLGEORGES_1_1UFormElmw10NLGEORGES_1_1UFormElmw14">ValueParentForm</a>, +00098 <a class="code" href="a02551.html#NLGEORGES_1_1UFormElmw10NLGEORGES_1_1UFormElmw11">ValueDefaultDfn</a>, +00099 <a class="code" href="a02551.html#NLGEORGES_1_1UFormElmw10NLGEORGES_1_1UFormElmw12">ValueDefaultType</a>, +00100 <a class="code" href="a02551.html#NLGEORGES_1_1UFormElmw10NLGEORGES_1_1UFormElmw0">Dummy</a> = 0xffffffff +00101 }; +</pre></div> </td> + </tr> +</table> +<hr><h2>Constructor & Destructor Documentation</h2> +<a class="anchor" name="NLGEORGES_1_1CFormElmStructa3" doxytag="NLGEORGES::CFormElmStruct::CFormElmStruct" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> NLGEORGES::CFormElmStruct::CFormElmStruct </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a02544.html">CForm</a> * </td> + <td class="mdname" nowrap> <em>form</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02550.html">CFormElm</a> * </td> + <td class="mdname" nowrap> <em>parentNode</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const <a class="el" href="a02546.html">CFormDfn</a> * </td> + <td class="mdname" nowrap> <em>parentDfn</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a04558.html#a15">uint</a> </td> + <td class="mdname" nowrap> <em>parentIndex</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05728.html#l01687">1687</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05729.html#l00277">FormDfn</a>, and <a class="el" href="a05981.html#l00105">uint</a>. +<p> +Referenced by <a class="el" href="a05728.html#l01817">read()</a>. +<p> +<div class="fragment"><pre>01687 : <a class="code" href="a02550.html#NLGEORGES_1_1CFormElma2">CFormElm</a> (form, parentNode, parentDfn, parentIndex) +01688 { +01689 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructo2">FormDfn</a> = NULL; +01690 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmStructa87" doxytag="NLGEORGES::CFormElmStruct::~CFormElmStruct" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> NLGEORGES::CFormElmStruct::~<a class="el" href="a02555.html">CFormElmStruct</a> </td> + <td class="md" valign="top">( </td> + <td class="mdname1" valign="top" nowrap> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap><code> [virtual]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05728.html#l01694">1694</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +<div class="fragment"><pre>01695 { +01696 <span class="comment">// Job done in clean()</span> +01697 } +</pre></div> </td> + </tr> +</table> +<hr><h2>Member Function Documentation</h2> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa0" doxytag="NLGEORGES::CFormElmStruct::arrayDeleteNodeByName" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::arrayDeleteNodeByName </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">const char * </td> + <td class="mdname" nowrap> <em>name</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const <a class="el" href="a02546.html">CFormDfn</a> ** </td> + <td class="mdname" nowrap> <em>parentDfn</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a04558.html#a15">uint</a> & </td> + <td class="mdname" nowrap> <em>indexDfn</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const <a class="el" href="a02546.html">CFormDfn</a> ** </td> + <td class="mdname" nowrap> <em>nodeDfn</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const <a class="el" href="a03622.html">CType</a> ** </td> + <td class="mdname" nowrap> <em>nodeType</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02550.html">CFormElm</a> ** </td> + <td class="mdname" nowrap> <em>node</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02547.html#NLGEORGES_1_1UFormDfnw3">UFormDfn::TEntryType</a> & </td> + <td class="mdname" nowrap> <em>type</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>bool & </td> + <td class="mdname" nowrap> <em>array</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>bool </td> + <td class="mdname" nowrap> <em>verbose</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a04558.html#a15">uint</a> </td> + <td class="mdname" nowrap> <em>arrayIndex</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"> const<code> [inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Delete an array node by name The index asked must be < the size of the array. +<p> +Definition at line <a class="el" href="a05728.html#l00719">719</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructx3NLGEORGES_1_1CFormElmVirtualStructx0">NLGEORGES::CFormElm::Create</a>, <a class="el" href="a05729.html#l00414">NLGEORGES::CFormElmArray::Elements</a>, <a class="el" href="a05729.html#l00231">NLGEORGES::CFormElm::Form</a>, <a class="el" href="a05728.html#l00764">NLGEORGES::CFormElm::getIternalNodeByName()</a>, <a class="el" href="a05728.html#l00053">NLGEORGES::CFormElm::isArray()</a>, <a class="el" href="a05622.html#l00290">nlassert</a>, <a class="el" href="a05729.html#l00035">NLGEORGES_FIRST_ROUND</a>, <a class="el" href="a05729.html#l00237">NLGEORGES::CFormElm::ParentDfn</a>, <a class="el" href="a05729.html#l00240">NLGEORGES::CFormElm::ParentIndex</a>, <a class="el" href="a05646.html#l00244">type</a>, and <a class="el" href="a05981.html#l00105">uint</a>. +<p> +<div class="fragment"><pre>00723 { +00724 <span class="comment">// Get the node by name</span> +00725 *parentDfn = <a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructp1">ParentDfn</a>; +00726 indexDfn = <a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructp2">ParentIndex</a>; +00727 *nodeDfn = NULL; +00728 *nodeType = NULL; +00729 *node = (<a class="code" href="a02550.html#NLGEORGES_1_1CFormElma2">CFormElm</a>*)<span class="keyword">this</span>; +00730 <span class="keywordtype">bool</span> created; +00731 <span class="keywordtype">bool</span> parentVDfnArray; +00732 <span class="keywordflow">if</span> (<a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructf0">getIternalNodeByName</a> (Form, name, parentDfn, indexDfn, nodeDfn, nodeType, node, type, array, Create, created, parentVDfnArray, verbose, NLGEORGES_FIRST_ROUND)) +00733 { +00734 <span class="comment">// Must be in the same form</span> +00735 <a class="code" href="a04199.html#a6">nlassert</a> ((*node) && ((*node)->Form == Form)); +00736 +00737 <span class="comment">// Get its parent</span> +00738 <a class="code" href="a02550.html#NLGEORGES_1_1CFormElma2">CFormElm</a> *parentNode = (*node)->ParentNode; +00739 <span class="keywordflow">if</span> (parentNode->isArray ()) +00740 { +00741 <span class="comment">// Cast pointer</span> +00742 CFormElmArray *array = safe_cast<CFormElmArray*>(parentNode); +00743 +00744 <span class="comment">// Valid index ?</span> +00745 <span class="keywordflow">if</span> (arrayIndex<array->Elements.size ()) +00746 { +00747 <span class="comment">// Insert the element</span> +00748 <span class="keywordflow">if</span> (array->Elements[arrayIndex].Element) +00749 <span class="keyword">delete</span> array->Elements[arrayIndex].Element; +00750 +00751 <span class="comment">// Erase the entry</span> +00752 array->Elements.erase (array->Elements.begin () + arrayIndex); +00753 +00754 <span class="comment">// Ok </span> +00755 <span class="keywordflow">return</span> <span class="keyword">true</span>; +00756 } +00757 } +00758 } +00759 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00760 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa1" doxytag="NLGEORGES::CFormElmStruct::arrayInsertNodeByName" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::arrayInsertNodeByName </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">const char * </td> + <td class="mdname" nowrap> <em>name</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const <a class="el" href="a02546.html">CFormDfn</a> ** </td> + <td class="mdname" nowrap> <em>parentDfn</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a04558.html#a15">uint</a> & </td> + <td class="mdname" nowrap> <em>indexDfn</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const <a class="el" href="a02546.html">CFormDfn</a> ** </td> + <td class="mdname" nowrap> <em>nodeDfn</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const <a class="el" href="a03622.html">CType</a> ** </td> + <td class="mdname" nowrap> <em>nodeType</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02550.html">CFormElm</a> ** </td> + <td class="mdname" nowrap> <em>node</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02547.html#NLGEORGES_1_1UFormDfnw3">UFormDfn::TEntryType</a> & </td> + <td class="mdname" nowrap> <em>type</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>bool & </td> + <td class="mdname" nowrap> <em>array</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>bool </td> + <td class="mdname" nowrap> <em>verbose</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a04558.html#a15">uint</a> </td> + <td class="mdname" nowrap> <em>arrayIndex</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"> const<code> [inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Insert an array node by name The index asked must be < the size of the array. +<p> +Definition at line <a class="el" href="a05728.html#l00645">645</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05728.html#l02002">build()</a>, <a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructx3NLGEORGES_1_1CFormElmVirtualStructx0">NLGEORGES::CFormElm::Create</a>, <a class="el" href="a05729.html#l00414">NLGEORGES::CFormElmArray::Elements</a>, <a class="el" href="a05729.html#l00231">NLGEORGES::CFormElm::Form</a>, <a class="el" href="a05728.html#l00764">NLGEORGES::CFormElm::getIternalNodeByName()</a>, <a class="el" href="a05728.html#l00053">NLGEORGES::CFormElm::isArray()</a>, <a class="el" href="a05622.html#l00290">nlassert</a>, <a class="el" href="a05729.html#l00035">NLGEORGES_FIRST_ROUND</a>, <a class="el" href="a05622.html#l00416">nlstop</a>, <a class="el" href="a05729.html#l00237">NLGEORGES::CFormElm::ParentDfn</a>, <a class="el" href="a05729.html#l00240">NLGEORGES::CFormElm::ParentIndex</a>, <a class="el" href="a05646.html#l00244">type</a>, and <a class="el" href="a05981.html#l00105">uint</a>. +<p> +<div class="fragment"><pre>00649 { +00650 <span class="comment">// Get the node by name</span> +00651 *parentDfn = <a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructp1">ParentDfn</a>; +00652 indexDfn = <a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructp2">ParentIndex</a>; +00653 *nodeDfn = NULL; +00654 *nodeType = NULL; +00655 *node = (<a class="code" href="a02550.html#NLGEORGES_1_1CFormElma2">CFormElm</a>*)<span class="keyword">this</span>; +00656 <span class="keywordtype">bool</span> created; +00657 <span class="keywordtype">bool</span> parentVDfnArray; +00658 <span class="keywordflow">if</span> (<a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructf0">getIternalNodeByName</a> (Form, name, parentDfn, indexDfn, nodeDfn, nodeType, node, type, array, Create, created, parentVDfnArray, verbose, NLGEORGES_FIRST_ROUND)) +00659 { +00660 <span class="comment">// Must be in the same form</span> +00661 <a class="code" href="a04199.html#a6">nlassert</a> ((*node) && ((*node)->Form == Form)); +00662 +00663 <span class="comment">// Get its parent</span> +00664 <a class="code" href="a02550.html#NLGEORGES_1_1CFormElma2">CFormElm</a> *parentNode = (*node)->ParentNode; +00665 <span class="keywordflow">if</span> (parentNode->isArray ()) +00666 { +00667 <span class="comment">// Cast pointer</span> +00668 CFormElmArray *array = safe_cast<CFormElmArray*>(parentNode); +00669 +00670 <span class="comment">// Valid index ?</span> +00671 <span class="keywordflow">if</span> (arrayIndex<array->Elements.size ()) +00672 { +00673 <span class="comment">// Insert the element</span> +00674 array->Elements.insert (array->Elements.begin() + arrayIndex); +00675 +00676 <span class="comment">// Create a new element</span> +00677 +00678 <span class="comment">// The new element</span> +00679 <a class="code" href="a02550.html#NLGEORGES_1_1CFormElma2">CFormElm</a> *newelm = NULL; +00680 <span class="keywordflow">switch</span> (<a class="code" href="a04223.html#a581">type</a>) +00681 { +00682 <span class="keywordflow">case</span> UFormDfn::EntryType: +00683 { +00684 <span class="comment">// Create an atom</span> +00685 CFormElmAtom *atom = <span class="keyword">new</span> CFormElmAtom (Form, array, *parentDfn, indexDfn); +00686 newelm = atom; +00687 } +00688 <span class="keywordflow">break</span>; +00689 <span class="keywordflow">case</span> UFormDfn::EntryDfn: +00690 { +00691 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa3">CFormElmStruct</a> *_struct = <span class="keyword">new</span> <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa3">CFormElmStruct</a> (Form, array, *parentDfn, indexDfn); +00692 _struct->build (*nodeDfn); +00693 newelm = _struct; +00694 } +00695 <span class="keywordflow">break</span>; +00696 <span class="keywordflow">case</span> UFormDfn::EntryVirtualDfn: +00697 <span class="comment">// todo array of virtual struct</span> +00698 <span class="comment">//newelm = new CFormElmVirtualStruct (Form, array, *parentDfn, indexDfn);</span> +00699 <span class="keywordflow">break</span>; +00700 <span class="keywordflow">default</span>: +00701 <a class="code" href="a04199.html#a12">nlstop</a>; +00702 } +00703 +00704 <a class="code" href="a04199.html#a6">nlassert</a> (newelm); +00705 +00706 <span class="comment">// Set the element pointer</span> +00707 array->Elements[arrayIndex].Element = newelm; +00708 +00709 <span class="comment">// Ok </span> +00710 <span class="keywordflow">return</span> <span class="keyword">true</span>; +00711 } +00712 } +00713 } +00714 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00715 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa2" doxytag="NLGEORGES::CFormElmStruct::build" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> void NLGEORGES::CFormElmStruct::build </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">const <a class="el" href="a02546.html">CFormDfn</a> * </td> + <td class="mdname1" valign="top" nowrap> <em>dfn</em> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05728.html#l02002">2002</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05728.html#l01701">clean()</a>, <a class="el" href="a05726.html#l00337">NLGEORGES::CFormDfn::countParentDfn()</a>, <a class="el" href="a05729.html#l00277">FormDfn</a>, <a class="el" href="a05726.html#l00358">NLGEORGES::CFormDfn::getParentDfn()</a>, and <a class="el" href="a05981.html#l00105">uint</a>. +<p> +Referenced by <a class="el" href="a05728.html#l00645">NLGEORGES::CFormElm::arrayInsertNodeByName()</a>, <a class="el" href="a05728.html#l00764">NLGEORGES::CFormElm::getIternalNodeByName()</a>, <a class="el" href="a05728.html#l01817">read()</a>, and <a class="el" href="a05724.html#l00188">NLGEORGES::CForm::read()</a>. +<p> +<div class="fragment"><pre>02003 { +02004 <span class="comment">// Clean the form</span> +02005 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructa4">clean</a> (); +02006 +02007 <span class="comment">// Set the DFN</span> +02008 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructo2">FormDfn</a> = (CFormDfn*)dfn; +02009 +02010 <span class="comment">// Get the parents</span> +02011 vector<const CFormDfn*> arrayDfn; +02012 arrayDfn.reserve (dfn->countParentDfn ()); +02013 dfn->getParentDfn (arrayDfn); +02014 +02015 <span class="comment">// Count element</span> +02016 <a class="code" href="a04558.html#a15">uint</a> elementCount = 0; +02017 <a class="code" href="a04558.html#a15">uint</a> dfnIndex; +02018 <span class="keywordflow">for</span> (dfnIndex=0; dfnIndex<arrayDfn.size(); dfnIndex++) +02019 { +02020 elementCount += arrayDfn[dfnIndex]->getNumEntry(); +02021 } +02022 +02023 <span class="comment">// Resize the element array</span> +02024 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructo1">Elements</a>.resize (elementCount); +02025 +02026 elementCount = 0; +02027 <span class="keywordflow">for</span> (dfnIndex=0; dfnIndex<arrayDfn.size(); dfnIndex++) +02028 { +02029 <span class="comment">// For each element</span> +02030 <span class="keywordflow">for</span> (<a class="code" href="a04558.html#a15">uint</a> elm=0; elm<arrayDfn[dfnIndex]->Entries.size(); elm++) +02031 { +02032 <span class="comment">// Copy the name</span> +02033 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructo1">Elements</a>[elementCount].Name = arrayDfn[dfnIndex]->Entries[elm].Name; +02034 elementCount++; +02035 } +02036 } +02037 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa4" doxytag="NLGEORGES::CFormElmStruct::clean" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> void NLGEORGES::CFormElmStruct::clean </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">void </td> + <td class="mdname1" valign="top" nowrap> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap><code> [virtual]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Reset contents. +<p> + +<p> +Reimplemented from <a class="el" href="a02550.html#NLGEORGES_1_1CFormElmAtoma3">NLGEORGES::CFormElm</a>. +<p> +Definition at line <a class="el" href="a05728.html#l01701">1701</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05981.html#l00105">uint</a>. +<p> +Referenced by <a class="el" href="a05728.html#l02002">build()</a>. +<p> +<div class="fragment"><pre>01702 { +01703 <span class="comment">// For each element of the array</span> +01704 <a class="code" href="a04558.html#a15">uint</a> elm; +01705 <span class="keywordflow">for</span> (elm =0; elm<<a class="code" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructo1">Elements</a>.size(); elm++) +01706 { +01707 <span class="keywordflow">if</span> (<a class="code" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructo1">Elements</a>[elm].Element) +01708 <span class="keyword">delete</span> <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructo1">Elements</a>[elm].Element; +01709 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructo1">Elements</a>[elm].Element = NULL; +01710 } +01711 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa5" doxytag="NLGEORGES::CFormElmStruct::convertValue" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::convertValue </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a03337.html">NLMISC::CRGBA</a> & </td> + <td class="mdname" nowrap> <em>result</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const char * </td> + <td class="mdname" nowrap> <em>value</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"> const<code> [inline, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05729.html#l00657">657</a> of file <a class="el" href="a05729.html">form_elm.h</a>. +<p> +References <a class="el" href="a06340.html#l00338">NLMISC::CRGBA::B</a>, <a class="el" href="a05587.html#l00115">NLMISC::clamp()</a>, <a class="el" href="a06340.html#l00336">NLMISC::CRGBA::G</a>, <a class="el" href="a06340.html#l00334">NLMISC::CRGBA::R</a>, <a class="el" href="a05646.html#l00993">r</a>, <a class="el" href="a05981.html#l00096">uint8</a>, <a class="el" href="a05646.html#l01132">value</a>, and <a class="el" href="a05728.html#l01656">NLGEORGES::CFormElm::warning()</a>. +<p> +<div class="fragment"><pre>00658 { +00659 <span class="keywordtype">float</span> <a class="code" href="a04223.html#a628">r</a>, g, b; +00660 <span class="keywordflow">if</span> (sscanf (value, <span class="stringliteral">"%f,%f,%f"</span>, &r, &g, &b) == 3) +00661 { +00662 <a class="code" href="a05378.html#a374">NLMISC::clamp</a> (r, 0.f, 255.f); +00663 <a class="code" href="a05378.html#a374">NLMISC::clamp</a> (g, 0.f, 255.f); +00664 <a class="code" href="a05378.html#a374">NLMISC::clamp</a> (b, 0.f, 255.f); +00665 result.<a class="code" href="a03337.html#NLMISC_1_1CRGBAo3">R</a> = (<a class="code" href="a04558.html#a7">uint8</a>)<a class="code" href="a04223.html#a628">r</a>; +00666 result.<a class="code" href="a03337.html#NLMISC_1_1CRGBAo2">G</a> = (<a class="code" href="a04558.html#a7">uint8</a>)g; +00667 result.<a class="code" href="a03337.html#NLMISC_1_1CRGBAo1">B</a> = (<a class="code" href="a04558.html#a7">uint8</a>)b; +00668 <span class="keywordflow">return</span> <span class="keyword">true</span>; +00669 } +00670 +00671 <span class="comment">// Error message</span> +00672 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa85">warning</a> (<span class="keyword">false</span>, <span class="stringliteral">"convertValue"</span>, <span class="stringliteral">"Can't convert the string \"%s\" in RGB color."</span>, value); +00673 +00674 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00675 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa6" doxytag="NLGEORGES::CFormElmStruct::convertValue" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::convertValue </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">bool & </td> + <td class="mdname" nowrap> <em>result</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const char * </td> + <td class="mdname" nowrap> <em>value</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"> const<code> [inline, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05729.html#l00625">625</a> of file <a class="el" href="a05729.html">form_elm.h</a>. +<p> +References <a class="el" href="a05586.html#l00536">NLMISC::strlwr()</a>, <a class="el" href="a05646.html#l01132">value</a>, and <a class="el" href="a05728.html#l01656">NLGEORGES::CFormElm::warning()</a>. +<p> +<div class="fragment"><pre>00626 { +00627 <span class="keywordtype">int</span> tmp; +00628 <span class="keywordflow">if</span> (sscanf (value, <span class="stringliteral">"%d"</span>, &tmp) == 1) +00629 { +00630 result = tmp != 0; +00631 <span class="keywordflow">return</span> <span class="keyword">true</span>; +00632 } +00633 <span class="keywordflow">else</span> +00634 { +00635 std::string temp = <a class="code" href="a04223.html#a658">value</a>; +00636 temp = <a class="code" href="a05378.html#a273">NLMISC::strlwr</a> (temp); +00637 <span class="keywordflow">if</span> (strcmp (temp.c_str (), <span class="stringliteral">"true"</span>) == 0) +00638 { +00639 result = <span class="keyword">true</span>; +00640 <span class="keywordflow">return</span> <span class="keyword">true</span>; +00641 } +00642 <span class="keywordflow">if</span> (strcmp (temp.c_str (), <span class="stringliteral">"false"</span>) == 0) +00643 { +00644 result = <span class="keyword">false</span>; +00645 <span class="keywordflow">return</span> <span class="keyword">true</span>; +00646 } +00647 } +00648 +00649 <span class="comment">// Error message</span> +00650 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa85">warning</a> (<span class="keyword">false</span>, <span class="stringliteral">"convertValue"</span>, <span class="stringliteral">"Can't convert the string \"%s\" in boolean."</span>, value); +00651 +00652 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00653 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa7" doxytag="NLGEORGES::CFormElmStruct::convertValue" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::convertValue </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">double & </td> + <td class="mdname" nowrap> <em>result</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const char * </td> + <td class="mdname" nowrap> <em>value</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"> const<code> [inline, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05729.html#l00607">607</a> of file <a class="el" href="a05729.html">form_elm.h</a>. +<p> +References <a class="el" href="a05646.html#l01132">value</a>, and <a class="el" href="a05728.html#l01656">NLGEORGES::CFormElm::warning()</a>. +<p> +<div class="fragment"><pre>00608 { +00609 <span class="keywordtype">float</span> tmp; +00610 <span class="keywordflow">if</span> (sscanf (value, <span class="stringliteral">"%f"</span>, &tmp) == 1) +00611 { +00612 result = tmp; +00613 <span class="keywordflow">return</span> <span class="keyword">true</span>; +00614 } +00615 <span class="keywordflow">else</span> +00616 { +00617 <span class="comment">// Error message</span> +00618 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa85">warning</a> (<span class="keyword">false</span>, <span class="stringliteral">"convertValue"</span>, <span class="stringliteral">"Can't convert the string \"%s\" in double."</span>, value); +00619 } +00620 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00621 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa8" doxytag="NLGEORGES::CFormElmStruct::convertValue" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::convertValue </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">float & </td> + <td class="mdname" nowrap> <em>result</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const char * </td> + <td class="mdname" nowrap> <em>value</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"> const<code> [inline, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05729.html#l00591">591</a> of file <a class="el" href="a05729.html">form_elm.h</a>. +<p> +References <a class="el" href="a05646.html#l01132">value</a>, and <a class="el" href="a05728.html#l01656">NLGEORGES::CFormElm::warning()</a>. +<p> +<div class="fragment"><pre>00592 { +00593 <span class="keywordflow">if</span> (sscanf (value, <span class="stringliteral">"%f"</span>, &result) == 1) +00594 { +00595 <span class="keywordflow">return</span> <span class="keyword">true</span>; +00596 } +00597 <span class="keywordflow">else</span> +00598 { +00599 <span class="comment">// Error message</span> +00600 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa85">warning</a> (<span class="keyword">false</span>, <span class="stringliteral">"convertValue"</span>, <span class="stringliteral">"Can't convert the string \"%s\" in float."</span>, value); +00601 } +00602 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00603 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa9" doxytag="NLGEORGES::CFormElmStruct::convertValue" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::convertValue </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a11">uint32</a> & </td> + <td class="mdname" nowrap> <em>result</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const char * </td> + <td class="mdname" nowrap> <em>value</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"> const<code> [inline, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05729.html#l00572">572</a> of file <a class="el" href="a05729.html">form_elm.h</a>. +<p> +References <a class="el" href="a05587.html#l00115">NLMISC::clamp()</a>, <a class="el" href="a05981.html#l00099">sint32</a>, <a class="el" href="a05981.html#l00100">uint32</a>, <a class="el" href="a05646.html#l01132">value</a>, and <a class="el" href="a05728.html#l01656">NLGEORGES::CFormElm::warning()</a>. +<p> +<div class="fragment"><pre>00573 { +00574 <span class="keywordtype">float</span> tmp; +00575 <span class="keywordflow">if</span> (sscanf (value, <span class="stringliteral">"%f"</span>, &tmp) == 1) +00576 { +00577 <a class="code" href="a05378.html#a374">NLMISC::clamp</a> (tmp, 0.f, 4294967295.f); +00578 result = (<a class="code" href="a04558.html#a10">sint32</a>)tmp; +00579 <span class="keywordflow">return</span> <span class="keyword">true</span>; +00580 } +00581 <span class="keywordflow">else</span> +00582 { +00583 <span class="comment">// Error message</span> +00584 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa85">warning</a> (<span class="keyword">false</span>, <span class="stringliteral">"convertValue"</span>, <span class="stringliteral">"Can't convert the string \"%s\" in uint32."</span>, value); +00585 } +00586 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00587 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa10" doxytag="NLGEORGES::CFormElmStruct::convertValue" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::convertValue </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a10">sint32</a> & </td> + <td class="mdname" nowrap> <em>result</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const char * </td> + <td class="mdname" nowrap> <em>value</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"> const<code> [inline, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05729.html#l00553">553</a> of file <a class="el" href="a05729.html">form_elm.h</a>. +<p> +References <a class="el" href="a05587.html#l00115">NLMISC::clamp()</a>, <a class="el" href="a05981.html#l00099">sint32</a>, <a class="el" href="a05646.html#l01132">value</a>, and <a class="el" href="a05728.html#l01656">NLGEORGES::CFormElm::warning()</a>. +<p> +<div class="fragment"><pre>00554 { +00555 <span class="keywordtype">float</span> tmp; +00556 <span class="keywordflow">if</span> (sscanf (value, <span class="stringliteral">"%f"</span>, &tmp) == 1) +00557 { +00558 <a class="code" href="a05378.html#a374">NLMISC::clamp</a> (tmp, -2147483648.f, 2147483647.f); +00559 result = (<a class="code" href="a04558.html#a10">sint32</a>)tmp; +00560 <span class="keywordflow">return</span> <span class="keyword">true</span>; +00561 } +00562 <span class="keywordflow">else</span> +00563 { +00564 <span class="comment">// Error message</span> +00565 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa85">warning</a> (<span class="keyword">false</span>, <span class="stringliteral">"convertValue"</span>, <span class="stringliteral">"Can't convert the string \"%s\" in sint32."</span>, value); +00566 } +00567 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00568 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa11" doxytag="NLGEORGES::CFormElmStruct::convertValue" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::convertValue </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a9">uint16</a> & </td> + <td class="mdname" nowrap> <em>result</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const char * </td> + <td class="mdname" nowrap> <em>value</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"> const<code> [inline, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05729.html#l00534">534</a> of file <a class="el" href="a05729.html">form_elm.h</a>. +<p> +References <a class="el" href="a05587.html#l00115">NLMISC::clamp()</a>, <a class="el" href="a05981.html#l00098">uint16</a>, <a class="el" href="a05646.html#l01132">value</a>, and <a class="el" href="a05728.html#l01656">NLGEORGES::CFormElm::warning()</a>. +<p> +<div class="fragment"><pre>00535 { +00536 <span class="keywordtype">float</span> tmp; +00537 <span class="keywordflow">if</span> (sscanf (value, <span class="stringliteral">"%f"</span>, &tmp) == 1) +00538 { +00539 <a class="code" href="a05378.html#a374">NLMISC::clamp</a> (tmp, 0.f, 65535.f); +00540 result = (<a class="code" href="a04558.html#a9">uint16</a>)tmp; +00541 <span class="keywordflow">return</span> <span class="keyword">true</span>; +00542 } +00543 <span class="keywordflow">else</span> +00544 { +00545 <span class="comment">// Error message</span> +00546 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa85">warning</a> (<span class="keyword">false</span>, <span class="stringliteral">"convertValue"</span>, <span class="stringliteral">"Can't convert the string \"%s\" in uint16."</span>, value); +00547 } +00548 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00549 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa12" doxytag="NLGEORGES::CFormElmStruct::convertValue" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::convertValue </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a8">sint16</a> & </td> + <td class="mdname" nowrap> <em>result</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const char * </td> + <td class="mdname" nowrap> <em>value</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"> const<code> [inline, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05729.html#l00515">515</a> of file <a class="el" href="a05729.html">form_elm.h</a>. +<p> +References <a class="el" href="a05587.html#l00115">NLMISC::clamp()</a>, <a class="el" href="a05981.html#l00097">sint16</a>, <a class="el" href="a05646.html#l01132">value</a>, and <a class="el" href="a05728.html#l01656">NLGEORGES::CFormElm::warning()</a>. +<p> +<div class="fragment"><pre>00516 { +00517 <span class="keywordtype">float</span> tmp; +00518 <span class="keywordflow">if</span> (sscanf (value, <span class="stringliteral">"%f"</span>, &tmp) == 1) +00519 { +00520 <a class="code" href="a05378.html#a374">NLMISC::clamp</a> (tmp, -32768.f, 32767.f); +00521 result = (<a class="code" href="a04558.html#a8">sint16</a>)tmp; +00522 <span class="keywordflow">return</span> <span class="keyword">true</span>; +00523 } +00524 <span class="keywordflow">else</span> +00525 { +00526 <span class="comment">// Error message</span> +00527 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa85">warning</a> (<span class="keyword">false</span>, <span class="stringliteral">"convertValue"</span>, <span class="stringliteral">"Can't convert the string \"%s\" in sint16."</span>, value); +00528 } +00529 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00530 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa13" doxytag="NLGEORGES::CFormElmStruct::convertValue" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::convertValue </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a7">uint8</a> & </td> + <td class="mdname" nowrap> <em>result</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const char * </td> + <td class="mdname" nowrap> <em>value</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"> const<code> [inline, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05729.html#l00496">496</a> of file <a class="el" href="a05729.html">form_elm.h</a>. +<p> +References <a class="el" href="a05587.html#l00115">NLMISC::clamp()</a>, <a class="el" href="a05981.html#l00096">uint8</a>, <a class="el" href="a05646.html#l01132">value</a>, and <a class="el" href="a05728.html#l01656">NLGEORGES::CFormElm::warning()</a>. +<p> +<div class="fragment"><pre>00497 { +00498 <span class="keywordtype">float</span> tmp; +00499 <span class="keywordflow">if</span> (sscanf (value, <span class="stringliteral">"%f"</span>, &tmp) == 1) +00500 { +00501 <a class="code" href="a05378.html#a374">NLMISC::clamp</a> (tmp, 0.f, 255.f); +00502 result = (<a class="code" href="a04558.html#a7">uint8</a>)tmp; +00503 <span class="keywordflow">return</span> <span class="keyword">true</span>; +00504 } +00505 <span class="keywordflow">else</span> +00506 { +00507 <span class="comment">// Error message</span> +00508 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa85">warning</a> (<span class="keyword">false</span>, <span class="stringliteral">"convertValue"</span>, <span class="stringliteral">"Can't convert the string \"%s\" in uint8."</span>, value); +00509 } +00510 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00511 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa14" doxytag="NLGEORGES::CFormElmStruct::convertValue" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::convertValue </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a6">sint8</a> & </td> + <td class="mdname" nowrap> <em>result</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const char * </td> + <td class="mdname" nowrap> <em>value</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"> const<code> [inline, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05729.html#l00477">477</a> of file <a class="el" href="a05729.html">form_elm.h</a>. +<p> +References <a class="el" href="a05587.html#l00115">NLMISC::clamp()</a>, <a class="el" href="a05981.html#l00095">sint8</a>, <a class="el" href="a05646.html#l01132">value</a>, and <a class="el" href="a05728.html#l01656">NLGEORGES::CFormElm::warning()</a>. +<p> +Referenced by <a class="el" href="a05728.html#l02361">NLGEORGES::CFormElmArray::getArrayValue()</a>, <a class="el" href="a05728.html#l02826">NLGEORGES::CFormElmAtom::getValue()</a>, and <a class="el" href="a05728.html#l00449">NLGEORGES::CFormElm::getValueByName()</a>. +<p> +<div class="fragment"><pre>00478 { +00479 <span class="keywordtype">float</span> tmp; +00480 <span class="keywordflow">if</span> (sscanf (value, <span class="stringliteral">"%f"</span>, &tmp) == 1) +00481 { +00482 <a class="code" href="a05378.html#a374">NLMISC::clamp</a> (tmp, -128.f, 127.f); +00483 result = (<a class="code" href="a04558.html#a6">sint8</a>)tmp; +00484 <span class="keywordflow">return</span> <span class="keyword">true</span>; +00485 } +00486 <span class="keywordflow">else</span> +00487 { +00488 <span class="comment">// Error message</span> +00489 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa85">warning</a> (<span class="keyword">false</span>, <span class="stringliteral">"convertValue"</span>, <span class="stringliteral">"Can't convert the string \"%s\" in sint8."</span>, value); +00490 } +00491 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00492 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa15" doxytag="NLGEORGES::CFormElmStruct::createNodeByName" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::createNodeByName </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">const char * </td> + <td class="mdname" nowrap> <em>name</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const <a class="el" href="a02546.html">CFormDfn</a> ** </td> + <td class="mdname" nowrap> <em>parentDfn</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a04558.html#a15">uint</a> & </td> + <td class="mdname" nowrap> <em>indexDfn</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const <a class="el" href="a02546.html">CFormDfn</a> ** </td> + <td class="mdname" nowrap> <em>nodeDfn</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const <a class="el" href="a03622.html">CType</a> ** </td> + <td class="mdname" nowrap> <em>nodeType</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02550.html">CFormElm</a> ** </td> + <td class="mdname" nowrap> <em>node</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02547.html#NLGEORGES_1_1UFormDfnw3">UFormDfn::TEntryType</a> & </td> + <td class="mdname" nowrap> <em>type</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>bool & </td> + <td class="mdname" nowrap> <em>array</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>bool & </td> + <td class="mdname" nowrap> <em>created</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"><code> [inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05728.html#l00596">596</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructx3NLGEORGES_1_1CFormElmVirtualStructx0">NLGEORGES::CFormElm::Create</a>, <a class="el" href="a05729.html#l00231">NLGEORGES::CFormElm::Form</a>, <a class="el" href="a05728.html#l00764">NLGEORGES::CFormElm::getIternalNodeByName()</a>, <a class="el" href="a05729.html#l00035">NLGEORGES_FIRST_ROUND</a>, <a class="el" href="a05729.html#l00237">NLGEORGES::CFormElm::ParentDfn</a>, <a class="el" href="a05729.html#l00240">NLGEORGES::CFormElm::ParentIndex</a>, <a class="el" href="a05646.html#l00244">type</a>, and <a class="el" href="a05981.html#l00105">uint</a>. +<p> +Referenced by <a class="el" href="a05728.html#l01532">NLGEORGES::CFormElm::setValueByName()</a>. +<p> +<div class="fragment"><pre>00600 { +00601 *parentDfn = <a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructp1">ParentDfn</a>; +00602 indexDfn = <a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructp2">ParentIndex</a>; +00603 *nodeDfn = NULL; +00604 *nodeType = NULL; +00605 *node = <span class="keyword">this</span>; +00606 <span class="keywordtype">bool</span> parentVDfnArray; +00607 <span class="keywordflow">return</span> <a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructf0">getIternalNodeByName</a> (Form, name, parentDfn, indexDfn, nodeDfn, nodeType, node, type, array, Create, created, parentVDfnArray, <span class="keyword">true</span>, NLGEORGES_FIRST_ROUND); +00608 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa16" doxytag="NLGEORGES::CFormElmStruct::deleteNodeByName" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::deleteNodeByName </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">const char * </td> + <td class="mdname" nowrap> <em>name</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const <a class="el" href="a02546.html">CFormDfn</a> ** </td> + <td class="mdname" nowrap> <em>parentDfn</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a04558.html#a15">uint</a> & </td> + <td class="mdname" nowrap> <em>indexDfn</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const <a class="el" href="a02546.html">CFormDfn</a> ** </td> + <td class="mdname" nowrap> <em>nodeDfn</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const <a class="el" href="a03622.html">CType</a> ** </td> + <td class="mdname" nowrap> <em>nodeType</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02550.html">CFormElm</a> ** </td> + <td class="mdname" nowrap> <em>node</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02547.html#NLGEORGES_1_1UFormDfnw3">UFormDfn::TEntryType</a> & </td> + <td class="mdname" nowrap> <em>type</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>bool & </td> + <td class="mdname" nowrap> <em>array</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"><code> [inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Delete a node by name. If the node already exist, return it Delete its parent if not used +<p> +Definition at line <a class="el" href="a05728.html#l00612">612</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructx3NLGEORGES_1_1CFormElmVirtualStructx1">NLGEORGES::CFormElm::Delete</a>, <a class="el" href="a05729.html#l00231">NLGEORGES::CFormElm::Form</a>, <a class="el" href="a05728.html#l00764">NLGEORGES::CFormElm::getIternalNodeByName()</a>, <a class="el" href="a05729.html#l00035">NLGEORGES_FIRST_ROUND</a>, <a class="el" href="a05729.html#l00237">NLGEORGES::CFormElm::ParentDfn</a>, <a class="el" href="a05729.html#l00240">NLGEORGES::CFormElm::ParentIndex</a>, <a class="el" href="a05646.html#l00244">type</a>, and <a class="el" href="a05981.html#l00105">uint</a>. +<p> +<div class="fragment"><pre>00616 { +00617 *parentDfn = <a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructp1">ParentDfn</a>; +00618 indexDfn = <a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructp2">ParentIndex</a>; +00619 *nodeDfn = NULL; +00620 *nodeType = NULL; +00621 *node = <span class="keyword">this</span>; +00622 <span class="keywordtype">bool</span> created; +00623 <span class="keywordtype">bool</span> parentVDfnArray; +00624 <span class="keywordflow">return</span> <a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructf0">getIternalNodeByName</a> (Form, name, parentDfn, indexDfn, nodeDfn, nodeType, node, type, array, Delete, created, parentVDfnArray, <span class="keyword">true</span>, NLGEORGES_FIRST_ROUND); +00625 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa17" doxytag="NLGEORGES::CFormElmStruct::getArrayNode" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::getArrayNode </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a02551.html">UFormElm</a> ** </td> + <td class="mdname" nowrap> <em>result</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a04558.html#a15">uint</a> </td> + <td class="mdname" nowrap> <em>arrayIndex</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"><code> [virtual, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Get a array sub element mutable pointer. If return true, fill result with the arrayIndex cell's element pointer. Can be NULL if the node doesn't exist. +<p> +Implements <a class="el" href="a02551.html#NLGEORGES_1_1UFormElma0">NLGEORGES::UFormElm</a>. +<p> +Reimplemented in <a class="el" href="a02552.html#NLGEORGES_1_1CFormElmArraya16">NLGEORGES::CFormElmArray</a>. +<p> +Definition at line <a class="el" href="a05728.html#l00076">76</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05981.html#l00105">uint</a>, and <a class="el" href="a05728.html#l01656">NLGEORGES::CFormElm::warning()</a>. +<p> +<div class="fragment"><pre>00077 { +00078 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa85">warning</a> (<span class="keyword">false</span>, <span class="stringliteral">"getArrayNode"</span>, <span class="stringliteral">"This node is not an array."</span>); +00079 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00080 }; +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa18" doxytag="NLGEORGES::CFormElmStruct::getArrayNode" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::getArrayNode </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">const <a class="el" href="a02551.html">UFormElm</a> ** </td> + <td class="mdname" nowrap> <em>result</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a04558.html#a15">uint</a> </td> + <td class="mdname" nowrap> <em>arrayIndex</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"> const<code> [virtual, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Get a array sub element const pointer. If return true, fill result with the arrayIndex cell's element Can be NULL if the node doesn't exist. +<p> +Implements <a class="el" href="a02551.html#NLGEORGES_1_1UFormElma1">NLGEORGES::UFormElm</a>. +<p> +Reimplemented in <a class="el" href="a02552.html#NLGEORGES_1_1CFormElmArraya17">NLGEORGES::CFormElmArray</a>. +<p> +Definition at line <a class="el" href="a05728.html#l00068">68</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05981.html#l00105">uint</a>, and <a class="el" href="a05728.html#l01656">NLGEORGES::CFormElm::warning()</a>. +<p> +<div class="fragment"><pre>00069 { +00070 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa85">warning</a> (<span class="keyword">false</span>, <span class="stringliteral">"getArrayNode"</span>, <span class="stringliteral">"This node is not an array."</span>); +00071 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00072 }; +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa19" doxytag="NLGEORGES::CFormElmStruct::getArrayNodeName" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::getArrayNodeName </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">std::string & </td> + <td class="mdname" nowrap> <em>result</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a04558.html#a15">uint</a> </td> + <td class="mdname" nowrap> <em>arrayIndex</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"> const<code> [virtual, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Return the name of a table element. +<p> + +<p> +Implements <a class="el" href="a02551.html#NLGEORGES_1_1UFormElma2">NLGEORGES::UFormElm</a>. +<p> +Reimplemented in <a class="el" href="a02552.html#NLGEORGES_1_1CFormElmArraya18">NLGEORGES::CFormElmArray</a>. +<p> +Definition at line <a class="el" href="a05728.html#l00084">84</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05981.html#l00105">uint</a>, and <a class="el" href="a05728.html#l01656">NLGEORGES::CFormElm::warning()</a>. +<p> +<div class="fragment"><pre>00085 { +00086 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa85">warning</a> (<span class="keyword">false</span>, <span class="stringliteral">"getArrayNodeName"</span>, <span class="stringliteral">"This node is not an array."</span>); +00087 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00088 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa20" doxytag="NLGEORGES::CFormElmStruct::getArraySize" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::getArraySize </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a15">uint</a> & </td> + <td class="mdname1" valign="top" nowrap> <em>size</em> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap> const<code> [virtual, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Return true if the element is an array and fill size with the array size. +<p> + +<p> +Implements <a class="el" href="a02551.html#NLGEORGES_1_1UFormElma3">NLGEORGES::UFormElm</a>. +<p> +Reimplemented in <a class="el" href="a02552.html#NLGEORGES_1_1CFormElmArraya19">NLGEORGES::CFormElmArray</a>. +<p> +Definition at line <a class="el" href="a05728.html#l00060">60</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05646.html#l00645">size</a>, <a class="el" href="a05981.html#l00105">uint</a>, and <a class="el" href="a05728.html#l01656">NLGEORGES::CFormElm::warning()</a>. +<p> +<div class="fragment"><pre>00061 { +00062 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa85">warning</a> (<span class="keyword">false</span>, <span class="stringliteral">"getArraySize"</span>, <span class="stringliteral">"This node is not an array."</span>); +00063 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00064 }; +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa21" doxytag="NLGEORGES::CFormElmStruct::getArrayValue" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::getArrayValue </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a03337.html">NLMISC::CRGBA</a> & </td> + <td class="mdname" nowrap> <em>result</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a04558.html#a15">uint</a> </td> + <td class="mdname" nowrap> <em>arrayIndex</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> </td> + <td class="mdname" nowrap> <em>evaluate</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw10">TWhereIsValue</a> * </td> + <td class="mdname" nowrap> <em>where</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"> const<code> [virtual, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Warning, only R, G and B members are filled, not A. +<p> + +<p> +Implements <a class="el" href="a02551.html#NLGEORGES_1_1UFormElma4">NLGEORGES::UFormElm</a>. +<p> +Reimplemented in <a class="el" href="a02552.html#NLGEORGES_1_1CFormElmArraya20">NLGEORGES::CFormElmArray</a>. +<p> +Definition at line <a class="el" href="a05728.html#l00172">172</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05981.html#l00105">uint</a>, and <a class="el" href="a05728.html#l01656">NLGEORGES::CFormElm::warning()</a>. +<p> +<div class="fragment"><pre>00173 { +00174 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa85">warning</a> (<span class="keyword">false</span>, <span class="stringliteral">"getArrayValue"</span>, <span class="stringliteral">"This node is not an array."</span>); +00175 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00176 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa22" doxytag="NLGEORGES::CFormElmStruct::getArrayValue" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::getArrayValue </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">bool & </td> + <td class="mdname" nowrap> <em>result</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a04558.html#a15">uint</a> </td> + <td class="mdname" nowrap> <em>arrayIndex</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> </td> + <td class="mdname" nowrap> <em>evaluate</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw10">TWhereIsValue</a> * </td> + <td class="mdname" nowrap> <em>where</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"> const<code> [virtual, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Implements <a class="el" href="a02551.html#NLGEORGES_1_1UFormElma5">NLGEORGES::UFormElm</a>. +<p> +Reimplemented in <a class="el" href="a02552.html#NLGEORGES_1_1CFormElmArraya21">NLGEORGES::CFormElmArray</a>. +<p> +Definition at line <a class="el" href="a05728.html#l00164">164</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05981.html#l00105">uint</a>, and <a class="el" href="a05728.html#l01656">NLGEORGES::CFormElm::warning()</a>. +<p> +<div class="fragment"><pre>00165 { +00166 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa85">warning</a> (<span class="keyword">false</span>, <span class="stringliteral">"getArrayValue"</span>, <span class="stringliteral">"This node is not an array."</span>); +00167 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00168 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa23" doxytag="NLGEORGES::CFormElmStruct::getArrayValue" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::getArrayValue </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">double & </td> + <td class="mdname" nowrap> <em>result</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a04558.html#a15">uint</a> </td> + <td class="mdname" nowrap> <em>arrayIndex</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> </td> + <td class="mdname" nowrap> <em>evaluate</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw10">TWhereIsValue</a> * </td> + <td class="mdname" nowrap> <em>where</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"> const<code> [virtual, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Implements <a class="el" href="a02551.html#NLGEORGES_1_1UFormElma6">NLGEORGES::UFormElm</a>. +<p> +Reimplemented in <a class="el" href="a02552.html#NLGEORGES_1_1CFormElmArraya22">NLGEORGES::CFormElmArray</a>. +<p> +Definition at line <a class="el" href="a05728.html#l00156">156</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05981.html#l00105">uint</a>, and <a class="el" href="a05728.html#l01656">NLGEORGES::CFormElm::warning()</a>. +<p> +<div class="fragment"><pre>00157 { +00158 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa85">warning</a> (<span class="keyword">false</span>, <span class="stringliteral">"getArrayValue"</span>, <span class="stringliteral">"This node is not an array."</span>); +00159 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00160 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa24" doxytag="NLGEORGES::CFormElmStruct::getArrayValue" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::getArrayValue </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">float & </td> + <td class="mdname" nowrap> <em>result</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a04558.html#a15">uint</a> </td> + <td class="mdname" nowrap> <em>arrayIndex</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> </td> + <td class="mdname" nowrap> <em>evaluate</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw10">TWhereIsValue</a> * </td> + <td class="mdname" nowrap> <em>where</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"> const<code> [virtual, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Implements <a class="el" href="a02551.html#NLGEORGES_1_1UFormElma7">NLGEORGES::UFormElm</a>. +<p> +Reimplemented in <a class="el" href="a02552.html#NLGEORGES_1_1CFormElmArraya23">NLGEORGES::CFormElmArray</a>. +<p> +Definition at line <a class="el" href="a05728.html#l00148">148</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05981.html#l00105">uint</a>, and <a class="el" href="a05728.html#l01656">NLGEORGES::CFormElm::warning()</a>. +<p> +<div class="fragment"><pre>00149 { +00150 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa85">warning</a> (<span class="keyword">false</span>, <span class="stringliteral">"getArrayValue"</span>, <span class="stringliteral">"This node is not an array."</span>); +00151 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00152 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa25" doxytag="NLGEORGES::CFormElmStruct::getArrayValue" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::getArrayValue </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a11">uint32</a> & </td> + <td class="mdname" nowrap> <em>result</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a04558.html#a15">uint</a> </td> + <td class="mdname" nowrap> <em>arrayIndex</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> </td> + <td class="mdname" nowrap> <em>evaluate</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw10">TWhereIsValue</a> * </td> + <td class="mdname" nowrap> <em>where</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"> const<code> [virtual, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Implements <a class="el" href="a02551.html#NLGEORGES_1_1UFormElma8">NLGEORGES::UFormElm</a>. +<p> +Reimplemented in <a class="el" href="a02552.html#NLGEORGES_1_1CFormElmArraya24">NLGEORGES::CFormElmArray</a>. +<p> +Definition at line <a class="el" href="a05728.html#l00140">140</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05981.html#l00105">uint</a>, <a class="el" href="a05981.html#l00100">uint32</a>, and <a class="el" href="a05728.html#l01656">NLGEORGES::CFormElm::warning()</a>. +<p> +<div class="fragment"><pre>00141 { +00142 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa85">warning</a> (<span class="keyword">false</span>, <span class="stringliteral">"getArrayValue"</span>, <span class="stringliteral">"This node is not an array."</span>); +00143 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00144 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa26" doxytag="NLGEORGES::CFormElmStruct::getArrayValue" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::getArrayValue </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a10">sint32</a> & </td> + <td class="mdname" nowrap> <em>result</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a04558.html#a15">uint</a> </td> + <td class="mdname" nowrap> <em>arrayIndex</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> </td> + <td class="mdname" nowrap> <em>evaluate</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw10">TWhereIsValue</a> * </td> + <td class="mdname" nowrap> <em>where</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"> const<code> [virtual, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Implements <a class="el" href="a02551.html#NLGEORGES_1_1UFormElma9">NLGEORGES::UFormElm</a>. +<p> +Reimplemented in <a class="el" href="a02552.html#NLGEORGES_1_1CFormElmArraya25">NLGEORGES::CFormElmArray</a>. +<p> +Definition at line <a class="el" href="a05728.html#l00132">132</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05981.html#l00099">sint32</a>, <a class="el" href="a05981.html#l00105">uint</a>, and <a class="el" href="a05728.html#l01656">NLGEORGES::CFormElm::warning()</a>. +<p> +<div class="fragment"><pre>00133 { +00134 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa85">warning</a> (<span class="keyword">false</span>, <span class="stringliteral">"getArrayValue"</span>, <span class="stringliteral">"This node is not an array."</span>); +00135 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00136 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa27" doxytag="NLGEORGES::CFormElmStruct::getArrayValue" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::getArrayValue </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a9">uint16</a> & </td> + <td class="mdname" nowrap> <em>result</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a04558.html#a15">uint</a> </td> + <td class="mdname" nowrap> <em>arrayIndex</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> </td> + <td class="mdname" nowrap> <em>evaluate</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw10">TWhereIsValue</a> * </td> + <td class="mdname" nowrap> <em>where</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"> const<code> [virtual, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Implements <a class="el" href="a02551.html#NLGEORGES_1_1UFormElma10">NLGEORGES::UFormElm</a>. +<p> +Reimplemented in <a class="el" href="a02552.html#NLGEORGES_1_1CFormElmArraya26">NLGEORGES::CFormElmArray</a>. +<p> +Definition at line <a class="el" href="a05728.html#l00124">124</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05981.html#l00105">uint</a>, <a class="el" href="a05981.html#l00098">uint16</a>, and <a class="el" href="a05728.html#l01656">NLGEORGES::CFormElm::warning()</a>. +<p> +<div class="fragment"><pre>00125 { +00126 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa85">warning</a> (<span class="keyword">false</span>, <span class="stringliteral">"getArrayValue"</span>, <span class="stringliteral">"This node is not an array."</span>); +00127 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00128 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa28" doxytag="NLGEORGES::CFormElmStruct::getArrayValue" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::getArrayValue </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a8">sint16</a> & </td> + <td class="mdname" nowrap> <em>result</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a04558.html#a15">uint</a> </td> + <td class="mdname" nowrap> <em>arrayIndex</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> </td> + <td class="mdname" nowrap> <em>evaluate</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw10">TWhereIsValue</a> * </td> + <td class="mdname" nowrap> <em>where</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"> const<code> [virtual, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Implements <a class="el" href="a02551.html#NLGEORGES_1_1UFormElma11">NLGEORGES::UFormElm</a>. +<p> +Reimplemented in <a class="el" href="a02552.html#NLGEORGES_1_1CFormElmArraya27">NLGEORGES::CFormElmArray</a>. +<p> +Definition at line <a class="el" href="a05728.html#l00116">116</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05981.html#l00097">sint16</a>, <a class="el" href="a05981.html#l00105">uint</a>, and <a class="el" href="a05728.html#l01656">NLGEORGES::CFormElm::warning()</a>. +<p> +<div class="fragment"><pre>00117 { +00118 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa85">warning</a> (<span class="keyword">false</span>, <span class="stringliteral">"getArrayValue"</span>, <span class="stringliteral">"This node is not an array."</span>); +00119 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00120 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa29" doxytag="NLGEORGES::CFormElmStruct::getArrayValue" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::getArrayValue </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a7">uint8</a> & </td> + <td class="mdname" nowrap> <em>result</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a04558.html#a15">uint</a> </td> + <td class="mdname" nowrap> <em>arrayIndex</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> </td> + <td class="mdname" nowrap> <em>evaluate</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw10">TWhereIsValue</a> * </td> + <td class="mdname" nowrap> <em>where</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"> const<code> [virtual, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Implements <a class="el" href="a02551.html#NLGEORGES_1_1UFormElma12">NLGEORGES::UFormElm</a>. +<p> +Reimplemented in <a class="el" href="a02552.html#NLGEORGES_1_1CFormElmArraya28">NLGEORGES::CFormElmArray</a>. +<p> +Definition at line <a class="el" href="a05728.html#l00108">108</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05981.html#l00105">uint</a>, <a class="el" href="a05981.html#l00096">uint8</a>, and <a class="el" href="a05728.html#l01656">NLGEORGES::CFormElm::warning()</a>. +<p> +<div class="fragment"><pre>00109 { +00110 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa85">warning</a> (<span class="keyword">false</span>, <span class="stringliteral">"getArrayValue"</span>, <span class="stringliteral">"This node is not an array."</span>); +00111 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00112 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa30" doxytag="NLGEORGES::CFormElmStruct::getArrayValue" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::getArrayValue </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a6">sint8</a> & </td> + <td class="mdname" nowrap> <em>result</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a04558.html#a15">uint</a> </td> + <td class="mdname" nowrap> <em>arrayIndex</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> </td> + <td class="mdname" nowrap> <em>evaluate</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw10">TWhereIsValue</a> * </td> + <td class="mdname" nowrap> <em>where</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"> const<code> [virtual, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Implements <a class="el" href="a02551.html#NLGEORGES_1_1UFormElma13">NLGEORGES::UFormElm</a>. +<p> +Reimplemented in <a class="el" href="a02552.html#NLGEORGES_1_1CFormElmArraya29">NLGEORGES::CFormElmArray</a>. +<p> +Definition at line <a class="el" href="a05728.html#l00100">100</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05981.html#l00095">sint8</a>, <a class="el" href="a05981.html#l00105">uint</a>, and <a class="el" href="a05728.html#l01656">NLGEORGES::CFormElm::warning()</a>. +<p> +<div class="fragment"><pre>00101 { +00102 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa85">warning</a> (<span class="keyword">false</span>, <span class="stringliteral">"getArrayValue"</span>, <span class="stringliteral">"This node is not an array."</span>); +00103 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00104 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa31" doxytag="NLGEORGES::CFormElmStruct::getArrayValue" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::getArrayValue </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">std::string & </td> + <td class="mdname" nowrap> <em>result</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a04558.html#a15">uint</a> </td> + <td class="mdname" nowrap> <em>arrayIndex</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> </td> + <td class="mdname" nowrap> <em>evaluate</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw10">TWhereIsValue</a> * </td> + <td class="mdname" nowrap> <em>where</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"> const<code> [virtual, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Get an array value. The node must be an array of atom element.<p> +<dl compact><dt><b>Parameters:</b></dt><dd> + <table border="0" cellspacing="2" cellpadding="0"> + <tr><td valign=top><em>result</em> </td><td>is a reference on the value to fill with the result. </td></tr> + <tr><td valign=top><em>arrayIndex</em> </td><td>is the array index to evaluate. </td></tr> + <tr><td valign=top><em>evaluate</em> </td><td>must be true if you want to have an evaluated value, false if you want the formula value. </td></tr> + <tr><td valign=top><em>where</em> </td><td>is a pointer on the information flag of the value. If Where is not NULL, it is filled with the position where the value has been found. </td></tr> + </table> +</dl> +<dl compact><dt><b>Returns:</b></dt><dd>true if the result has been filled, false if the value has not been found or the cast has failed or the evaluation has failed.</dd></dl> + +<p> +Implements <a class="el" href="a02551.html#NLGEORGES_1_1UFormElma14">NLGEORGES::UFormElm</a>. +<p> +Reimplemented in <a class="el" href="a02552.html#NLGEORGES_1_1CFormElmArraya30">NLGEORGES::CFormElmArray</a>. +<p> +Definition at line <a class="el" href="a05728.html#l00092">92</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05981.html#l00105">uint</a>, and <a class="el" href="a05728.html#l01656">NLGEORGES::CFormElm::warning()</a>. +<p> +<div class="fragment"><pre>00093 { +00094 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa85">warning</a> (<span class="keyword">false</span>, <span class="stringliteral">"getArrayNode"</span>, <span class="stringliteral">"This node is not an array."</span>); +00095 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00096 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa32" doxytag="NLGEORGES::CFormElmStruct::getDependencies" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> void NLGEORGES::CFormElmStruct::getDependencies </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">std::set< std::string > & </td> + <td class="mdname1" valign="top" nowrap> <em>dependencies</em> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap> const<code> [virtual]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Implements <a class="el" href="a02550.html#NLGEORGES_1_1CFormElma31">NLGEORGES::CFormElm</a>. +<p> +Definition at line <a class="el" href="a05728.html#l02116">2116</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05729.html#l00277">FormDfn</a>, and <a class="el" href="a05981.html#l00105">uint</a>. +<p> +Referenced by <a class="el" href="a05724.html#l00373">NLGEORGES::CForm::getDependencies()</a>. +<p> +<div class="fragment"><pre>02117 { +02118 <span class="comment">// Visit the dfn</span> +02119 <span class="keywordflow">if</span> (<a class="code" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructo2">FormDfn</a>) +02120 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructo2">FormDfn</a>->getDependencies (dependencies); +02121 +02122 <span class="comment">// Visit elements</span> +02123 <span class="keywordflow">for</span> (<a class="code" href="a04558.html#a15">uint</a> i=0; i<<a class="code" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructo1">Elements</a>.size (); i++) +02124 { +02125 <span class="keywordflow">if</span> (<a class="code" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructo1">Elements</a>[i].Element) +02126 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructo1">Elements</a>[i].Element->getDependencies (dependencies); +02127 } +02128 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmStructa33" doxytag="NLGEORGES::CFormElmStruct::getDfnName" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::getDfnName </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">std::string & </td> + <td class="mdname1" valign="top" nowrap> <em>dfnName</em> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap> const<code> [virtual, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Get the dfn filename for this virtual struct. Must be a virtual struct node. +<p> + +<p> +Implements <a class="el" href="a02551.html#NLGEORGES_1_1UFormElma15">NLGEORGES::UFormElm</a>. +<p> +Reimplemented in <a class="el" href="a02557.html#NLGEORGES_1_1CFormElmVirtualStructa33">NLGEORGES::CFormElmVirtualStruct</a>. +<p> +Definition at line <a class="el" href="a05728.html#l00194">194</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +<div class="fragment"><pre>00195 { +00196 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00197 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa34" doxytag="NLGEORGES::CFormElmStruct::getForm" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> <a class="el" href="a02544.html">CForm</a> * NLGEORGES::CFormElm::getForm </td> + <td class="md" valign="top">( </td> + <td class="mdname1" valign="top" nowrap> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap> const<code> [inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05728.html#l00353">353</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05729.html#l00231">NLGEORGES::CFormElm::Form</a>. +<p> +Referenced by <a class="el" href="a05728.html#l01671">NLGEORGES::CFormElm::warning()</a>. +<p> +<div class="fragment"><pre>00354 { +00355 <span class="keywordflow">return</span> <a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructp0">Form</a>; +00356 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa35" doxytag="NLGEORGES::CFormElmStruct::getFormName" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> void NLGEORGES::CFormElmStruct::getFormName </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">std::string & </td> + <td class="mdname" nowrap> <em>result</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const <a class="el" href="a02550.html">CFormElm</a> * </td> + <td class="mdname" nowrap> <em>child</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"> const<code> [virtual]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Implements <a class="el" href="a02550.html#NLGEORGES_1_1CFormElma34">NLGEORGES::CFormElm</a>. +<p> +Definition at line <a class="el" href="a05728.html#l02059">2059</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a02550.html#NLGEORGES_1_1CFormElma34">NLGEORGES::CFormElm::getFormName()</a>, <a class="el" href="a05981.html#l00105">uint</a>, and <a class="el" href="a05728.html#l02099">warning()</a>. +<p> +Referenced by <a class="el" href="a05728.html#l00764">NLGEORGES::CFormElm::getIternalNodeByName()</a>, <a class="el" href="a05728.html#l02230">NLGEORGES::CFormElmVirtualStruct::warning()</a>, and <a class="el" href="a05728.html#l02099">warning()</a>. +<p> +<div class="fragment"><pre>02060 { +02061 <span class="comment">// Reset the result</span> +02062 <span class="keywordflow">if</span> (child == NULL) +02063 { +02064 result = <span class="stringliteral">""</span>; +02065 result.reserve (50); +02066 } +02067 +02068 <span class="comment">// Get parent form name</span> +02069 <span class="keywordflow">if</span> (<a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructp3">ParentNode</a>) +02070 <a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructp3">ParentNode</a>->getFormName (result, <span class="keyword">this</span>); +02071 +02072 <span class="comment">// Get node name</span> +02073 <span class="keywordflow">if</span> (child) +02074 { +02075 <span class="comment">// Look for the child</span> +02076 <a class="code" href="a04558.html#a15">uint</a> i; +02077 <span class="keywordflow">for</span> (i=0; i<<a class="code" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructo1">Elements</a>.size (); i++) +02078 { +02079 <span class="comment">// This one ?</span> +02080 <span class="keywordflow">if</span> (<a class="code" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructo1">Elements</a>[i].Element == child) +02081 { +02082 <span class="comment">// Add the field name</span> +02083 result += <span class="stringliteral">"."</span>; +02084 result += <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructo1">Elements</a>[i].Name; +02085 <span class="keywordflow">break</span>; +02086 } +02087 } +02088 +02089 <span class="comment">// Draw some warning</span> +02090 <span class="keywordflow">if</span> (i==<a class="code" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructo1">Elements</a>.size ()) +02091 { +02092 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa85">warning</a> (<span class="keyword">false</span>, <span class="stringliteral">"getFormName"</span>, <span class="stringliteral">"Child node not found."</span>); +02093 } +02094 } +02095 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructf0" doxytag="NLGEORGES::CFormElmStruct::getIternalNodeByName" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::getIternalNodeByName </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a02544.html">CForm</a> * </td> + <td class="mdname" nowrap> <em>form</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const char * </td> + <td class="mdname" nowrap> <em>name</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const <a class="el" href="a02546.html">CFormDfn</a> ** </td> + <td class="mdname" nowrap> <em>parentDfn</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a04558.html#a15">uint</a> & </td> + <td class="mdname" nowrap> <em>indexDfn</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const <a class="el" href="a02546.html">CFormDfn</a> ** </td> + <td class="mdname" nowrap> <em>nodeDfn</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const <a class="el" href="a03622.html">CType</a> ** </td> + <td class="mdname" nowrap> <em>nodeType</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02550.html">CFormElm</a> ** </td> + <td class="mdname" nowrap> <em>node</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02547.html#NLGEORGES_1_1UFormDfnw3">UFormDfn::TEntryType</a> & </td> + <td class="mdname" nowrap> <em>type</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>bool & </td> + <td class="mdname" nowrap> <em>array</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructx3">TNodeAction</a> </td> + <td class="mdname" nowrap> <em>action</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>bool & </td> + <td class="mdname" nowrap> <em>created</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>bool & </td> + <td class="mdname" nowrap> <em>parentVDfnArray</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>bool </td> + <td class="mdname" nowrap> <em>verbose</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a04558.html#a11">uint32</a> </td> + <td class="mdname" nowrap> <em>round</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"><code> [static, protected, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Is createNode == Create, (*node)->Form must be == to the form argument. Is createNode == Return, form argument is not used, can be undefined.<p> +Only form, name, and action, must be defined. Then, else (*parentDfn / indexDfn ) or *node must be defined. Others value are for result only. +<p> +Definition at line <a class="el" href="a05728.html#l00764">764</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05728.html#l02002">build()</a>, <a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructx3NLGEORGES_1_1CFormElmVirtualStructx0">NLGEORGES::CFormElm::Create</a>, <a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructx3NLGEORGES_1_1CFormElmVirtualStructx1">NLGEORGES::CFormElm::Delete</a>, <a class="el" href="a05729.html#l00335">NLGEORGES::CFormElmVirtualStruct::DfnFilename</a>, <a class="el" href="a05729.html#l00414">NLGEORGES::CFormElmArray::Elements</a>, <a class="el" href="a05729.html#l00318">Elements</a>, <a class="el" href="a05727.html#l00245">NLGEORGES::CFormDfn::Entries</a>, <a class="el" href="a05729.html#l00277">FormDfn</a>, <a class="el" href="a05726.html#l00532">NLGEORGES::CFormDfn::CEntry::getArrayFlag()</a>, <a class="el" href="a05726.html#l00567">NLGEORGES::CFormDfn::CEntry::getDfnPtr()</a>, <a class="el" href="a05726.html#l00435">NLGEORGES::CFormDfn::getEntry()</a>, <a class="el" href="a05724.html#l00351">NLGEORGES::CForm::getFilename()</a>, <a class="el" href="a02550.html#NLGEORGES_1_1CFormElma34">NLGEORGES::CFormElm::getFormName()</a>, <a class="el" href="a05728.html#l02059">getFormName()</a>, <a class="el" href="a02551.html#NLGEORGES_1_1UFormElma17">NLGEORGES::UFormElm::getNodeByName()</a>, <a class="el" href="a05724.html#l00316">NLGEORGES::CForm::getParent()</a>, <a class="el" href="a05724.html#l00330">NLGEORGES::CForm::getParentCount()</a>, <a class="el" href="a05724.html#l00078">NLGEORGES::CForm::getRootNode()</a>, <a class="el" href="a05726.html#l00539">NLGEORGES::CFormDfn::CEntry::getType()</a>, <a class="el" href="a05726.html#l00560">NLGEORGES::CFormDfn::CEntry::getTypePtr()</a>, <a class="el" href="a05728.html#l00053">NLGEORGES::CFormElm::isArray()</a>, <a class="el" href="a02551.html#NLGEORGES_1_1UFormElma48">NLGEORGES::UFormElm::isVirtualStruct()</a>, <a class="el" href="a05622.html#l00290">nlassert</a>, <a class="el" href="a05729.html#l00036">NLGEORGES_MAX_RECURSION</a>, <a class="el" href="a05622.html#l00416">nlstop</a>, <a class="el" href="a05622.html#l00355">nlverify</a>, <a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructx3NLGEORGES_1_1CFormElmVirtualStructx2">NLGEORGES::CFormElm::Return</a>, <a class="el" href="a05586.html#l00161">NLMISC::smprintf()</a>, <a class="el" href="a02550.html#NLGEORGES_1_1CFormElmy4NLGEORGES_1_1CFormElmy0">NLGEORGES::CFormElm::TokenArrayBegin</a>, <a class="el" href="a02550.html#NLGEORGES_1_1CFormElmy4NLGEORGES_1_1CFormElmy1">NLGEORGES::CFormElm::TokenArrayEnd</a>, <a class="el" href="a05728.html#l01482">NLGEORGES::CFormElm::tokenize()</a>, <a class="el" href="a02550.html#NLGEORGES_1_1CFormElmy4NLGEORGES_1_1CFormElmy2">NLGEORGES::CFormElm::TokenPoint</a>, <a class="el" href="a02550.html#NLGEORGES_1_1CFormElmy4NLGEORGES_1_1CFormElmy3">NLGEORGES::CFormElm::TokenString</a>, <a class="el" href="a06587.html#l00072">NLGEORGES::CType::Type</a>, <a class="el" href="a05646.html#l00244">type</a>, <a class="el" href="a05981.html#l00105">uint</a>, <a class="el" href="a05981.html#l00100">uint32</a>, <a class="el" href="a05728.html#l01524">NLGEORGES::CFormElm::unlink()</a>, and <a class="el" href="a05728.html#l01656">NLGEORGES::CFormElm::warning()</a>. +<p> +Referenced by <a class="el" href="a05728.html#l00719">NLGEORGES::CFormElm::arrayDeleteNodeByName()</a>, <a class="el" href="a05728.html#l00645">NLGEORGES::CFormElm::arrayInsertNodeByName()</a>, <a class="el" href="a05728.html#l00596">NLGEORGES::CFormElm::createNodeByName()</a>, <a class="el" href="a05728.html#l00612">NLGEORGES::CFormElm::deleteNodeByName()</a>, and <a class="el" href="a05728.html#l00629">NLGEORGES::CFormElm::getNodeByName()</a>. +<p> +<div class="fragment"><pre>00765 { +00766 <span class="comment">// *** Init output variables</span> +00767 created = <span class="keyword">false</span>; +00768 parentVDfnArray = <span class="keyword">false</span>; +00769 +00770 <span class="comment">// ParentDfn or Node..</span> +00771 <a class="code" href="a04199.html#a6">nlassert</a> ( (*parentDfn) || (*node) ); +00772 +00773 <span class="comment">// Error message</span> +00774 <span class="keywordtype">char</span> error[512]; +00775 +00776 <span class="comment">// Parent exist ?</span> +00777 <span class="keywordflow">if</span> (*parentDfn) +00778 { +00779 <span class="comment">// Get the entry</span> +00780 <span class="keyword">const</span> CFormDfn::CEntry &theEntry = (*parentDfn)->getEntry (indexDfn); +00781 +00782 <span class="comment">// Get the type</span> +00783 <a class="code" href="a04223.html#a581">type</a> = theEntry.getType (); +00784 *nodeType = theEntry.getTypePtr (); +00785 <span class="keywordflow">if</span> (<a class="code" href="a04223.html#a581">type</a> == UFormDfn::EntryVirtualDfn) +00786 { +00787 <span class="keywordflow">if</span> (*node) +00788 *nodeDfn = safe_cast <CFormElmVirtualStruct*> (*node)->FormDfn; +00789 <span class="keywordflow">else</span> +00790 *nodeDfn = NULL; +00791 } +00792 <span class="keywordflow">else</span> +00793 *nodeDfn = theEntry.getDfnPtr (); +00794 array = theEntry.getArrayFlag (); +00795 } +00796 <span class="keywordflow">else</span> <span class="keywordflow">if</span> (*node) +00797 { +00798 <a class="code" href="a04199.html#a6">nlassert</a> (!(*node)->isArray ()); +00799 indexDfn = 0xffffffff; +00800 *nodeType = (*node)->isAtom () ? safe_cast<CFormElmAtom*>(*node)->Type : NULL; +00801 *nodeDfn = (*node)->isStruct () ? (<span class="keyword">const</span> CFormDfn *)(safe_cast<CFormElmStruct*>(*node)->FormDfn) : NULL; +00802 <a class="code" href="a04223.html#a581">type</a> = (*node)->isAtom () ? UFormDfn::EntryType : (*node)->isVirtualStruct () ? UFormDfn::EntryVirtualDfn : UFormDfn::EntryDfn; +00803 array = <span class="keyword">false</span>; +00804 } +00805 +00806 <span class="comment">// Check node pointer</span> +00807 <span class="keywordflow">if</span> (action == <a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructx3NLGEORGES_1_1CFormElmVirtualStructx0">Create</a>) +00808 { +00809 <a class="code" href="a04199.html#a6">nlassert</a> (*node); +00810 <a class="code" href="a04199.html#a6">nlassert</a> ((*node)->getForm () == form); +00811 } +00812 +00813 <span class="comment">// Backup current node</span> +00814 <a class="code" href="a02550.html#NLGEORGES_1_1CFormElma2">CFormElm</a> *backupFirstElm = *node; +00815 +00816 <span class="comment">// *** Parsing variables</span> +00817 +00818 <span class="comment">// Current token start and end</span> +00819 <span class="keyword">const</span> <span class="keywordtype">char</span> *startToken = name; +00820 <span class="keyword">const</span> <span class="keywordtype">char</span> *endToken; +00821 +00822 <span class="comment">// Current token start</span> +00823 string token; +00824 +00825 <span class="comment">// Current form name</span> +00826 string currentName; +00827 <span class="keywordflow">if</span> (*node) +00828 (*node)->getFormName (currentName); +00829 +00830 <span class="comment">// Error</span> +00831 <a class="code" href="a04558.html#a15">uint</a> errorIndex; +00832 +00833 <span class="comment">// Token code</span> +00834 <a class="code" href="a04558.html#a15">uint</a> code; +00835 +00836 <span class="comment">// Are we parsing an array ?</span> +00837 <span class="keywordtype">bool</span> inArrayIndex = <span class="keyword">false</span>; +00838 +00839 <span class="comment">// Index in the array</span> +00840 <a class="code" href="a04558.html#a15">uint</a> arrayIndex; +00841 +00842 <span class="comment">// Bool next token must be an array index</span> +00843 <span class="keywordtype">bool</span> wantArrayIndex = <span class="keyword">false</span>; +00844 +00845 <span class="comment">// Last struct elm</span> +00846 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa3">CFormElmStruct</a> *lastStructElm = ((*node)->ParentNode && (*node)->ParentNode->isStruct ()) ? safe_cast<CFormElmStruct*> ((*node)->ParentNode) : NULL; +00847 <a class="code" href="a04558.html#a15">uint</a> lastStructIndex = 0; +00848 <span class="keywordflow">if</span> (lastStructElm) +00849 { +00850 <span class="comment">// Look for node in the parent</span> +00851 <span class="keywordflow">for</span> (; lastStructIndex<lastStructElm->Elements.size (); lastStructIndex++) +00852 { +00853 <span class="comment">// The same node ?</span> +00854 <span class="keywordflow">if</span> (lastStructElm->Elements[lastStructIndex].Element == (*node)) +00855 <span class="keywordflow">break</span>; +00856 } +00857 +00858 <span class="comment">// Must have been found</span> +00859 <a class="code" href="a04199.html#a6">nlassert</a> (lastStructIndex<lastStructElm-><a class="code" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructo1">Elements</a>.size ()); +00860 } +00861 +00862 <span class="comment">// While there is tokens</span> +00863 <span class="keywordflow">while</span> ((endToken = <a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructe0">tokenize</a> (startToken, token, errorIndex, code))) +00864 { +00865 <span class="comment">// Ready an array index ?</span> +00866 <span class="keywordflow">if</span> (!inArrayIndex) +00867 { +00868 <span class="comment">// For each code</span> +00869 <span class="keywordflow">switch</span> (code) +00870 { +00871 <span class="keywordflow">case</span> TokenString: +00872 { +00873 <span class="comment">// Need an array index array ?</span> +00874 <span class="keywordflow">if</span> (wantArrayIndex) +00875 { +00876 <span class="comment">// Error message</span> +00877 <a class="code" href="a05378.html#a259">smprintf</a> (error, 512, <span class="stringliteral">"Token (%s) should be an array index."</span>, token.c_str()); +00878 <span class="keywordflow">goto</span> exit; +00879 } +00880 +00881 <span class="comment">// Are we a struct ?</span> +00882 <span class="keywordflow">if</span> ( ((<a class="code" href="a04223.html#a581">type</a> == UFormDfn::EntryDfn) || (<a class="code" href="a04223.html#a581">type</a> == UFormDfn::EntryVirtualDfn)) <span class="comment">/*&& (!array)*/</span> ) +00883 { +00884 <span class="comment">// Check the virtual DFN is not empty..</span> +00885 <span class="keywordflow">if</span> ( (<a class="code" href="a04223.html#a581">type</a> == UFormDfn::EntryVirtualDfn) && (*nodeDfn == NULL) ) +00886 { +00887 <span class="comment">// Is it a parent virtual DFN ?</span> +00888 <span class="keywordflow">if</span> ( (<a class="code" href="a04223.html#a581">type</a> == UFormDfn::EntryVirtualDfn) && (*node == NULL) ) +00889 parentVDfnArray = <span class="keyword">true</span>; +00890 +00891 <span class="comment">// Create mode ?</span> +00892 <span class="keywordflow">if</span> (action == <a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructx3NLGEORGES_1_1CFormElmVirtualStructx0">Create</a>) +00893 { +00894 <span class="comment">// Should have a valid node</span> +00895 <a class="code" href="a04199.html#a6">nlassert</a> (*node && lastStructElm); +00896 +00897 <span class="comment">// Get the current virtual dfn</span> +00898 CFormElmVirtualStruct *vStruct = safe_cast<CFormElmVirtualStruct*> (*node); +00899 +00900 <span class="comment">// Get the form name of the current node</span> +00901 string formName; +00902 vStruct->getFormName (formName, NULL); +00903 +00904 <span class="comment">// Get the parent node if available</span> +00905 <span class="keywordflow">for</span> (<a class="code" href="a04558.html#a15">uint</a> parent=0; parent<form->getParentCount (); parent++) +00906 { +00907 <span class="comment">// Get the parent</span> +00908 CForm *parentPtr = form->getParent (parent); +00909 <a class="code" href="a04199.html#a6">nlassert</a> (parentPtr); +00910 +00911 <span class="comment">// Get the virtual node by name</span> +00912 UFormElm *uelm; +00913 <span class="keywordflow">if</span> (parentPtr->getRootNode ().getNodeByName (&uelm, formName.c_str (), NULL, verbose, round+1) && uelm) +00914 { +00915 <span class="comment">// Value node ?</span> +00916 <span class="keywordflow">if</span> (uelm->isVirtualStruct ()) +00917 { +00918 <span class="comment">// Get a virtual struct pointer</span> +00919 CFormElmVirtualStruct *vStructParent = safe_cast<CFormElmVirtualStruct*> (uelm); +00920 +00921 <span class="comment">// Copy the DFN filename</span> +00922 vStruct->DfnFilename = vStructParent->DfnFilename; +00923 +00924 <span class="comment">// Build it</span> +00925 vStruct->build (vStructParent->FormDfn); +00926 +00927 <span class="comment">// Set the current DFN</span> +00928 *nodeDfn = vStruct->FormDfn; +00929 +00930 <span class="comment">// Stop looking for parent</span> +00931 <span class="keywordflow">break</span>; +00932 } +00933 <span class="keywordflow">else</span> +00934 { +00935 <span class="comment">// Error message</span> +00936 <a class="code" href="a05378.html#a259">smprintf</a> (error, 512, <span class="stringliteral">"Internal node parsing error."</span>); +00937 <span class="keywordflow">goto</span> exit; +00938 } +00939 } +00940 } +00941 } +00942 +00943 <span class="comment">// Still no DFN ?</span> +00944 <span class="keywordflow">if</span> (*nodeDfn == NULL) +00945 { +00946 <span class="comment">// Error message</span> +00947 <a class="code" href="a05378.html#a259">smprintf</a> (error, 512, <span class="stringliteral">"Empty virtual struct element. Can't look into it while it is not defined."</span>); +00948 <span class="keywordflow">goto</span> exit; +00949 } +00950 } +00951 +00952 <span class="comment">// Must hjave a nodeDfn here</span> +00953 <a class="code" href="a04199.html#a6">nlassert</a> (*nodeDfn); +00954 +00955 <span class="comment">// Look for the element</span> +00956 <span class="comment">// uint elementCount = (*nodeDfn)->getNumEntry ();</span> +00957 +00958 <span class="comment">// Get the parents</span> +00959 vector<const CFormDfn*> arrayDfn; +00960 arrayDfn.reserve ((*nodeDfn)->countParentDfn ()); +00961 (*nodeDfn)->getParentDfn (arrayDfn); +00962 +00963 <span class="comment">// For each parent</span> +00964 <a class="code" href="a04558.html#a15">uint</a> i; +00965 <a class="code" href="a04558.html#a15">uint</a> formElm = 0; +00966 <span class="keywordflow">for</span> (i=0; i<arrayDfn.size(); i++) +00967 { +00968 <span class="comment">// The dfn</span> +00969 <span class="keyword">const</span> CFormDfn &dfn = *(arrayDfn[i]); +00970 +00971 <span class="comment">// For each elements</span> +00972 <a class="code" href="a04558.html#a15">uint</a> element; +00973 <span class="keywordflow">for</span> (element=0; element<dfn.Entries.size(); element++) +00974 { +00975 <span class="comment">// Good name ?</span> +00976 <span class="keywordflow">if</span> (dfn.Entries[element].Name == token) +00977 { +00978 <span class="comment">// Good one.</span> +00979 *parentDfn = &dfn; +00980 indexDfn = element; +00981 *nodeDfn = dfn.Entries[element].Dfn; +00982 *nodeType = dfn.Entries[element].Type; +00983 <a class="code" href="a04223.html#a581">type</a> = dfn.Entries[element].TypeElement; +00984 array = dfn.Entries[element].Array; +00985 wantArrayIndex = array; +00986 +00987 <span class="comment">// Next node</span> +00988 <span class="keywordflow">if</span> (*node) +00989 { +00990 <span class="comment">// Get next node</span> +00991 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa3">CFormElmStruct</a> *nodeStruct = safe_cast<CFormElmStruct*> (*node); +00992 <a class="code" href="a02550.html#NLGEORGES_1_1CFormElma2">CFormElm</a> *nextElt = nodeStruct->Elements[formElm].Element; +00993 +00994 <span class="comment">// If no next node, watch for parent node</span> +00995 *node = nextElt; +00996 +00997 <span class="comment">// Create node</span> +00998 <span class="keywordflow">if</span> ( (action == <a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructx3NLGEORGES_1_1CFormElmVirtualStructx0">Create</a>) && (*node == NULL) ) +00999 { +01000 <span class="comment">// Is an array ?</span> +01001 <span class="keywordflow">if</span> (array) +01002 { +01003 <span class="comment">// Create an atom</span> +01004 CFormElmArray *atom = <span class="keyword">new</span> CFormElmArray (form, *nodeDfn, *nodeType, nodeStruct, *parentDfn, indexDfn); +01005 *node = atom; +01006 } +01007 <span class="keywordflow">else</span> +01008 { +01009 <span class="comment">// What kind of node ?</span> +01010 <span class="keywordflow">switch</span> (<a class="code" href="a04223.html#a581">type</a>) +01011 { +01012 <span class="keywordflow">case</span> UFormDfn::EntryType: +01013 { +01014 <span class="comment">// Create an atom</span> +01015 CFormElmAtom *atom = <span class="keyword">new</span> CFormElmAtom (form, nodeStruct, *parentDfn, indexDfn); +01016 *node = atom; +01017 } +01018 <span class="keywordflow">break</span>; +01019 <span class="keywordflow">case</span> UFormDfn::EntryDfn: +01020 { +01021 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa3">CFormElmStruct</a> *_struct = <span class="keyword">new</span> <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa3">CFormElmStruct</a> (form, nodeStruct, *parentDfn, indexDfn); +01022 _struct->build (*nodeDfn); +01023 *node = _struct; +01024 } +01025 <span class="keywordflow">break</span>; +01026 <span class="keywordflow">case</span> UFormDfn::EntryVirtualDfn: +01027 *node = <span class="keyword">new</span> CFormElmVirtualStruct (form, nodeStruct, *parentDfn, indexDfn); +01028 <span class="keywordflow">break</span>; +01029 <span class="keywordflow">default</span>: +01030 <a class="code" href="a04199.html#a12">nlstop</a>; +01031 } +01032 } +01033 +01034 <span class="comment">// Node created</span> +01035 created = <span class="keyword">true</span>; +01036 +01037 <span class="comment">// Set the node in parent</span> +01038 nodeStruct->Elements[formElm].Element = *node; +01039 } +01040 +01041 <span class="comment">// Is a virtual DFN ?</span> +01042 <span class="keywordflow">if</span> ((*node) && (*node)->isVirtualStruct ()) +01043 { +01044 <span class="comment">// Should be NULL</span> +01045 <a class="code" href="a04199.html#a6">nlassert</a> (*nodeDfn == NULL); +01046 +01047 <span class="comment">// Set the current dfn</span> +01048 *nodeDfn = safe_cast<const CFormElmVirtualStruct*> (*node)->FormDfn; +01049 } +01050 +01051 <span class="comment">// Save last struct</span> +01052 lastStructElm = nodeStruct; +01053 lastStructIndex = formElm; +01054 } +01055 <span class="keywordflow">else</span> +01056 { +01057 <span class="comment">// Save last struct</span> +01058 <span class="comment">// CFormElmStruct *lastStructElm = NULL;</span> +01059 <span class="comment">//uint lastStructIndex = 0xffffffff;</span> +01060 +01061 *node = NULL; +01062 } +01063 +01064 <span class="keywordflow">break</span>; +01065 } +01066 formElm++; +01067 } +01068 +01069 <span class="comment">// Breaked ?</span> +01070 <span class="keywordflow">if</span> (element!=dfn.Entries.size()) +01071 <span class="keywordflow">break</span>; +01072 } +01073 +01074 <span class="comment">// Breaked ?</span> +01075 <span class="keywordflow">if</span> (i==arrayDfn.size()) +01076 { +01077 <span class="comment">// Not found</span> +01078 <a class="code" href="a05378.html#a259">smprintf</a> (error, 512, <span class="stringliteral">"Struct does not contain element named (%s)."</span>, token.c_str()); +01079 <span class="keywordflow">goto</span> exit; +01080 } +01081 } +01082 <span class="keywordflow">else</span> +01083 { +01084 <span class="comment">// Error message</span> +01085 <a class="code" href="a05378.html#a259">smprintf</a> (error, 512, <span class="stringliteral">"Not a struct element. Can't open the node (%s)."</span>, token.c_str()); +01086 <span class="keywordflow">goto</span> exit; +01087 } +01088 } +01089 <span class="keywordflow">break</span>; +01090 <span class="keywordflow">case</span> TokenPoint: +01091 { +01092 <span class="comment">// Need an array index array ?</span> +01093 <span class="keywordflow">if</span> (wantArrayIndex) +01094 { +01095 <span class="comment">// Error message</span> +01096 <a class="code" href="a05378.html#a259">smprintf</a> (error, 512, <span class="stringliteral">"Token (%s) should be an array index."</span>, token.c_str()); +01097 <span class="keywordflow">goto</span> exit; +01098 } +01099 +01100 <span class="comment">// Are we a struct ?</span> +01101 <span class="keywordflow">if</span> ((<a class="code" href="a04223.html#a581">type</a> != UFormDfn::EntryDfn) && (<a class="code" href="a04223.html#a581">type</a> != UFormDfn::EntryVirtualDfn)) +01102 { +01103 <span class="comment">// Error message</span> +01104 <a class="code" href="a05378.html#a259">smprintf</a> (error, 512, <span class="stringliteral">"Not a struct element. Can't open the node (%s)."</span>, token.c_str()); +01105 <span class="keywordflow">goto</span> exit; +01106 } +01107 } +01108 <span class="keywordflow">break</span>; +01109 <span class="keywordflow">case</span> TokenArrayBegin: +01110 { +01111 <span class="comment">// Are we an array ?</span> +01112 <span class="keywordflow">if</span> (!array) +01113 { +01114 <span class="comment">// Error message</span> +01115 <a class="code" href="a05378.html#a259">smprintf</a> (error, 512, <span class="stringliteral">"Not an array element. Can't open the node (%s)."</span>, token.c_str()); +01116 <span class="keywordflow">goto</span> exit; +01117 } +01118 inArrayIndex = <span class="keyword">true</span>; +01119 arrayIndex = 0xffffffff; +01120 } +01121 <span class="keywordflow">break</span>; +01122 <span class="keywordflow">default</span>: +01123 { +01124 <span class="comment">// Error message</span> +01125 <a class="code" href="a05378.html#a259">smprintf</a> (error, 512, <span class="stringliteral">"Syntax error at keyword (%s)."</span>, token.c_str ()); +01126 <span class="keywordflow">goto</span> exit; +01127 } +01128 <span class="keywordflow">break</span>; +01129 } +01130 } +01131 <span class="keywordflow">else</span> +01132 { +01133 <span class="keywordflow">switch</span> (code) +01134 { +01135 <span class="keywordflow">case</span> TokenString: +01136 { +01137 <span class="comment">// To int</span> +01138 <span class="keywordflow">if</span> (sscanf (token.c_str(), <span class="stringliteral">"%d"</span>, &arrayIndex)!=1) +01139 { +01140 <span class="comment">// Error message</span> +01141 <a class="code" href="a05378.html#a259">smprintf</a> (error, 512, <span class="stringliteral">"Keyword (%s) is not an array index."</span>, token.c_str()); +01142 <span class="keywordflow">goto</span> exit; +01143 } +01144 +01145 <span class="comment">// Is it a parent virtual DFN ?</span> +01146 <span class="keywordflow">if</span> (*node == NULL) +01147 parentVDfnArray = <span class="keyword">true</span>; +01148 +01149 <span class="comment">// Should have an array defined</span> +01150 <span class="keywordflow">if</span> (*node) +01151 { +01152 <span class="comment">// Check index</span> +01153 <a class="code" href="a04558.html#a15">uint</a> arraySize; +01154 <a class="code" href="a04199.html#a9">nlverify</a> ((*node)->getArraySize (arraySize)); +01155 <span class="keywordflow">if</span> (arrayIndex>=arraySize) +01156 { +01157 <span class="comment">// Create mode ?</span> +01158 <span class="keywordflow">if</span> (action == <a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructx3NLGEORGES_1_1CFormElmVirtualStructx0">Create</a>) +01159 { +01160 <span class="comment">// Must be in the same form</span> +01161 <a class="code" href="a04199.html#a6">nlassert</a> ((*node)->Form == form); +01162 +01163 <span class="comment">// The array pointer</span> +01164 CFormElmArray *array = safe_cast<CFormElmArray*>(*node); +01165 <a class="code" href="a04558.html#a15">uint</a> oldSize = array->Elements.size (); +01166 array->Elements.resize (arrayIndex+1); +01167 +01168 <span class="comment">// Insert empty element</span> +01169 <a class="code" href="a04558.html#a15">uint</a> i; +01170 <span class="keywordflow">for</span> (i=oldSize; i<array->Elements.size (); i++) +01171 { +01172 <span class="comment">// The new element</span> +01173 <a class="code" href="a02550.html#NLGEORGES_1_1CFormElma2">CFormElm</a> *newelm = NULL; +01174 <span class="keywordflow">switch</span> (<a class="code" href="a04223.html#a581">type</a>) +01175 { +01176 <span class="keywordflow">case</span> UFormDfn::EntryType: +01177 { +01178 <span class="comment">// Create an atom</span> +01179 CFormElmAtom *atom = <span class="keyword">new</span> CFormElmAtom (form, array, *parentDfn, indexDfn); +01180 newelm = atom; +01181 } +01182 <span class="keywordflow">break</span>; +01183 <span class="keywordflow">case</span> UFormDfn::EntryDfn: +01184 { +01185 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa3">CFormElmStruct</a> *_struct = <span class="keyword">new</span> <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa3">CFormElmStruct</a> (form, array, *parentDfn, indexDfn); +01186 _struct->build (*nodeDfn); +01187 newelm = _struct; +01188 } +01189 <span class="keywordflow">break</span>; +01190 <span class="keywordflow">case</span> UFormDfn::EntryVirtualDfn: +01191 <span class="comment">// todo array of virtual struct</span> +01192 <span class="comment">//newelm = new CFormElmVirtualStruct (form, array, *parentDfn, indexDfn);</span> +01193 <span class="keywordflow">break</span>; +01194 <span class="keywordflow">default</span>: +01195 <a class="code" href="a04199.html#a12">nlstop</a>; +01196 } +01197 +01198 <a class="code" href="a04199.html#a6">nlassert</a> (newelm); +01199 +01200 <span class="comment">// Node created</span> +01201 created = <span class="keyword">true</span>; +01202 +01203 <span class="comment">// Set the element pointer</span> +01204 array->Elements[i].Element = newelm; +01205 } +01206 } +01207 <span class="keywordflow">else</span> +01208 { +01209 <span class="comment">// Error message</span> +01210 <a class="code" href="a05378.html#a259">smprintf</a> (error, 512, <span class="stringliteral">"Out of array bounds (%d >= %d)."</span>, arrayIndex, arraySize); +01211 <span class="keywordflow">goto</span> exit; +01212 } +01213 } +01214 } +01215 <span class="keywordflow">else</span> +01216 { +01217 <span class="comment">// Error message</span> +01218 <a class="code" href="a05378.html#a259">smprintf</a> (error, 512, <span class="stringliteral">"Array is not defined."</span>); +01219 <span class="keywordflow">goto</span> exit; +01220 } +01221 } +01222 <span class="keywordflow">break</span>; +01223 <span class="keywordflow">case</span> TokenArrayEnd: +01224 { +01225 <span class="comment">// No need of an array index any more</span> +01226 wantArrayIndex = <span class="keyword">false</span>; +01227 +01228 <span class="comment">// Index found ?</span> +01229 <span class="keywordflow">if</span> (arrayIndex == 0xffffffff) +01230 { +01231 <span class="comment">// Error message</span> +01232 <a class="code" href="a05378.html#a259">smprintf</a> (error, 512, <span class="stringliteral">"Missing array index."</span>); +01233 } +01234 <span class="keywordflow">else</span> +01235 { +01236 <span class="comment">// Let the parent DFN</span> +01237 <a class="code" href="a04199.html#a6">nlassert</a> (*parentDfn); +01238 +01239 <span class="comment">// New current node</span> +01240 CFormElmArray *parentNode = safe_cast<CFormElmArray*> (*node); +01241 +01242 <span class="comment">// Get the element</span> +01243 *node = parentNode->Elements[arrayIndex].Element; +01244 +01245 <span class="comment">// Is a dfn ?</span> +01246 *nodeDfn = (*parentDfn)->getEntry (indexDfn).getDfnPtr (); +01247 +01248 <span class="comment">// Is a type ?</span> +01249 *nodeType = (*parentDfn)->getEntry (indexDfn).getTypePtr (); +01250 +01251 <span class="comment">// Type ?</span> +01252 <a class="code" href="a04223.html#a581">type</a> = (*parentDfn)->getEntry (indexDfn).getType (); +01253 +01254 <span class="comment">// Can't be an array of array</span> +01255 array = <span class="keyword">false</span>; +01256 +01257 <span class="comment">// Not any more in index</span> +01258 inArrayIndex = <span class="keyword">false</span>; +01259 +01260 <span class="comment">// What kind of node ?</span> +01261 <span class="keywordflow">if</span> ( (action == <a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructx3NLGEORGES_1_1CFormElmVirtualStructx0">Create</a>) && ( *node == NULL) ) +01262 { +01263 <span class="keywordflow">switch</span> (<a class="code" href="a04223.html#a581">type</a>) +01264 { +01265 <span class="keywordflow">case</span> UFormDfn::EntryType: +01266 { +01267 <span class="comment">// Create an atom</span> +01268 CFormElmAtom *atom = <span class="keyword">new</span> CFormElmAtom (form, parentNode, *parentDfn, indexDfn); +01269 *node = atom; +01270 } +01271 <span class="keywordflow">break</span>; +01272 <span class="keywordflow">case</span> UFormDfn::EntryDfn: +01273 { +01274 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa3">CFormElmStruct</a> *_struct = <span class="keyword">new</span> <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa3">CFormElmStruct</a> (form, parentNode, *parentDfn, indexDfn); +01275 _struct->build (*nodeDfn); +01276 *node = _struct; +01277 } +01278 <span class="keywordflow">break</span>; +01279 <span class="keywordflow">case</span> UFormDfn::EntryVirtualDfn: +01280 <span class="comment">// todo array of virtual struct</span> +01281 <span class="comment">// *node = new CFormElmVirtualStruct (form, parentNode, *parentDfn, indexDfn);</span> +01282 <span class="keywordflow">break</span>; +01283 <span class="keywordflow">default</span>: +01284 <a class="code" href="a04199.html#a12">nlstop</a>; +01285 } +01286 +01287 <a class="code" href="a04199.html#a6">nlassert</a> (*node); +01288 +01289 <span class="comment">// Node created</span> +01290 created = <span class="keyword">true</span>; +01291 +01292 <span class="comment">// Set the element pointer</span> +01293 parentNode->Elements[arrayIndex].Element = *node; +01294 } +01295 +01296 <span class="comment">// Is a virtual DFN ?</span> +01297 <span class="keywordflow">if</span> ((*node) && (*node)->isVirtualStruct ()) +01298 { +01299 <span class="comment">// Should be NULL</span> +01300 <a class="code" href="a04199.html#a6">nlassert</a> (*nodeDfn == NULL); +01301 +01302 <span class="comment">// Set the current dfn</span> +01303 *nodeDfn = safe_cast<const CFormElmVirtualStruct*> (*node)->FormDfn; +01304 } +01305 } +01306 } +01307 <span class="keywordflow">break</span>; +01308 <span class="keywordflow">default</span>: +01309 { +01310 <span class="comment">// Error message</span> +01311 <a class="code" href="a05378.html#a259">smprintf</a> (error, 512, <span class="stringliteral">"Keyword (%s) is not an array index."</span>, token.c_str()); +01312 <span class="keywordflow">goto</span> exit; +01313 } +01314 } +01315 } +01316 +01317 <span class="comment">// Concat current adress</span> +01318 currentName += token; +01319 startToken = endToken; +01320 } +01321 exit:; +01322 +01323 <span class="comment">// Error ?</span> +01324 <span class="keywordtype">bool</span> errorAppend = endToken != NULL; +01325 +01326 <span class="comment">// Continue ?</span> +01327 <span class="keywordflow">if</span> (!errorAppend) +01328 { +01329 <span class="comment">// Delete the node ?</span> +01330 <span class="keywordflow">if</span> ( (action == <a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructx3NLGEORGES_1_1CFormElmVirtualStructx1">Delete</a>) && (*node) ) +01331 { +01332 <span class="comment">// Get its parent</span> +01333 <a class="code" href="a02550.html#NLGEORGES_1_1CFormElma2">CFormElm</a> *parent = safe_cast<CFormElm*> ((*node)->getParent ()); +01334 +01335 <span class="comment">// Don't erase the root structure</span> +01336 <span class="keywordflow">if</span> (parent && !parent->isArray ()) +01337 { +01338 <span class="comment">// Unlink the primitive from its parent</span> +01339 parent->unlink (*node); +01340 +01341 <span class="comment">// Erase the node</span> +01342 <span class="keyword">delete</span> (*node); +01343 *node = parent; +01344 parent = (<a class="code" href="a02550.html#NLGEORGES_1_1CFormElma2">CFormElm</a>*) (parent->getParent ()); +01345 +01346 <span class="comment">// For each parent</span> +01347 <span class="keywordflow">while</span> (parent && !(*node)->isUsed (form) && !parent->isArray ()) +01348 { +01349 <span class="comment">// Unlink the primitive from its parent</span> +01350 parent->unlink (*node); +01351 +01352 <span class="comment">// Erase it and get next parent</span> +01353 <span class="keyword">delete</span> (*node); +01354 *node = parent; +01355 parent = (<a class="code" href="a02550.html#NLGEORGES_1_1CFormElma2">CFormElm</a>*) (parent->getParent ()); +01356 } +01357 +01358 <span class="comment">// No more node</span> +01359 *node = NULL; +01360 } +01361 } +01362 } +01363 +01364 <span class="comment">// Node not found in get node ? Look in parents !</span> +01365 <span class="keywordflow">if</span> ( ((*node) == NULL) && (action == <a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructx3NLGEORGES_1_1CFormElmVirtualStructx2">Return</a>) && backupFirstElm ) +01366 { +01367 <span class="comment">// Get the path name</span> +01368 string formName; +01369 backupFirstElm->getFormName (formName); +01370 <a class="code" href="a04558.html#a15">uint</a> formNameSize = formName.size (); +01371 <span class="keywordflow">if</span> ((formNameSize > 0) && (formName[formNameSize-1] != <span class="charliteral">'.'</span>) && (formName[formNameSize-1] != <span class="charliteral">'['</span>)) +01372 formName += <span class="stringliteral">"."</span>; +01373 formName += name; +01374 +01375 <span class="comment">// Backup first parent default value</span> +01376 <span class="keywordtype">bool</span> defaultValue = <span class="keyword">false</span>; +01377 <span class="keyword">const</span> CFormDfn *defaultParentDfnParent=0; +01378 <a class="code" href="a04558.html#a15">uint</a> defaultIndexDfnParent=0; +01379 <span class="keyword">const</span> CFormDfn *defaultNodeDfnParent=0; +01380 <span class="keyword">const</span> CType *defaultNodeTypeParent=0; +01381 <a class="code" href="a02550.html#NLGEORGES_1_1CFormElma2">CFormElm</a> *defaultNodeParent=0; +01382 UFormDfn::TEntryType defaultTypeParent = UFormDfn::EntryType; +01383 <span class="keywordtype">bool</span> defaultArrayParent=<span class="keyword">false</span>; +01384 <span class="keywordtype">bool</span> defaultCreatedParent=<span class="keyword">false</span>; +01385 <span class="keywordtype">bool</span> defaultParentVDfnArray=<span class="keyword">false</span>; +01386 +01387 <span class="comment">// Look in parent form</span> +01388 <span class="keywordflow">for</span> (<a class="code" href="a04558.html#a15">uint</a> parent=0; parent<form->getParentCount (); parent++) +01389 { +01390 <span class="comment">// Get the parent</span> +01391 CForm *parentPtr = form->getParent (parent); +01392 <a class="code" href="a04199.html#a6">nlassert</a> (parentPtr); +01393 +01394 <span class="comment">// Get the node by name in the parent</span> +01395 <span class="keyword">const</span> CFormDfn *parentDfnParent = NULL; +01396 <a class="code" href="a04558.html#a15">uint</a> indexDfnParent = 0xffffffff; +01397 <span class="keyword">const</span> CFormDfn *nodeDfnParent = NULL; +01398 <span class="keyword">const</span> CType *nodeTypeParent = NULL; +01399 <a class="code" href="a02550.html#NLGEORGES_1_1CFormElma2">CFormElm</a> *nodeParent = (<a class="code" href="a02550.html#NLGEORGES_1_1CFormElma2">CFormElm</a>*)&parentPtr->getRootNode (); +01400 UFormDfn::TEntryType typeParent; +01401 <span class="keywordtype">bool</span> arrayParent; +01402 <span class="keywordtype">bool</span> createdParent; +01403 <span class="keywordtype">bool</span> parentVDfnArray; +01404 <span class="keywordflow">if</span> (<a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructf0">getIternalNodeByName</a> (parentPtr, formName.c_str (), &parentDfnParent, indexDfnParent, &nodeDfnParent, &nodeTypeParent, &nodeParent, typeParent, arrayParent, action, createdParent, parentVDfnArray, <span class="keyword">false</span>, round+1)) +01405 { +01406 <span class="comment">// Node found ?</span> +01407 <span class="keywordflow">if</span> (nodeParent) +01408 { +01409 <span class="comment">// Found copy return values</span> +01410 *parentDfn = parentDfnParent; +01411 indexDfn = indexDfnParent; +01412 *nodeDfn = nodeDfnParent; +01413 *nodeType = nodeTypeParent; +01414 *node = nodeParent; +01415 <a class="code" href="a04223.html#a581">type</a> = typeParent; +01416 array = arrayParent; +01417 created = createdParent; +01418 +01419 <span class="keywordflow">return</span> <span class="keyword">true</span>; +01420 } +01421 <span class="keywordflow">else</span> +01422 { +01423 <span class="comment">// Backup the first parent default value found</span> +01424 <span class="keywordflow">if</span> (!defaultValue) +01425 { +01426 defaultParentDfnParent = parentDfnParent; +01427 defaultIndexDfnParent = indexDfnParent; +01428 defaultNodeDfnParent = nodeDfnParent; +01429 defaultNodeTypeParent = nodeTypeParent; +01430 defaultNodeParent = nodeParent; +01431 defaultTypeParent = typeParent; +01432 defaultArrayParent = arrayParent; +01433 defaultCreatedParent = createdParent; +01434 defaultParentVDfnArray = parentVDfnArray; +01435 defaultValue = <span class="keyword">true</span>; +01436 } +01437 } +01438 } +01439 } +01440 +01441 <span class="comment">// Default value available ?</span> +01442 <span class="keywordflow">if</span> (defaultValue) +01443 { +01444 *parentDfn = defaultParentDfnParent; +01445 indexDfn = defaultIndexDfnParent; +01446 *nodeDfn = defaultNodeDfnParent; +01447 *nodeType = defaultNodeTypeParent; +01448 *node = defaultNodeParent; +01449 <a class="code" href="a04223.html#a581">type</a> = defaultTypeParent; +01450 array = defaultArrayParent; +01451 created = defaultCreatedParent; +01452 <span class="keywordflow">return</span> <span class="keyword">true</span>; +01453 } +01454 } +01455 +01456 <span class="comment">// Recurce warning !</span> +01457 <span class="keywordflow">if</span> (*node) +01458 { +01459 <span class="keywordflow">if</span> (round > <a class="code" href="a04306.html#a1">NLGEORGES_MAX_RECURSION</a>) +01460 { +01461 <span class="comment">// Turn around..</span> +01462 string formName; +01463 (*node)->getFormName (formName); +01464 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa85">warning</a> (<span class="keyword">false</span>, formName.c_str (), form->getFilename ().c_str(), <span class="stringliteral">"getIternalNodeByName"</span>, <span class="stringliteral">"Recurcive call on the same node (%s), look for loop references or inheritances."</span>, name); +01465 <span class="keywordflow">return</span> <span class="keyword">false</span>; +01466 } +01467 } +01468 +01469 <span class="keywordflow">if</span> (verbose && errorAppend) +01470 { +01471 <a class="code" href="a04199.html#a6">nlassert</a> (*error); +01472 +01473 <span class="comment">// Get the best form name</span> +01474 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa85">warning</a> (<span class="keyword">false</span>, currentName.c_str (), form->getFilename ().c_str(), <span class="stringliteral">"getIternalNodeByName"</span>, <span class="stringliteral">"Getting the node (%s) : %s"</span>, name, error); +01475 } +01476 +01477 <span class="keywordflow">return</span> !errorAppend; +01478 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa36" doxytag="NLGEORGES::CFormElmStruct::getNodeByName" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::getNodeByName </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">const char * </td> + <td class="mdname" nowrap> <em>name</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const <a class="el" href="a02546.html">CFormDfn</a> ** </td> + <td class="mdname" nowrap> <em>parentDfn</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a04558.html#a15">uint</a> & </td> + <td class="mdname" nowrap> <em>indexDfn</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const <a class="el" href="a02546.html">CFormDfn</a> ** </td> + <td class="mdname" nowrap> <em>nodeDfn</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const <a class="el" href="a03622.html">CType</a> ** </td> + <td class="mdname" nowrap> <em>nodeType</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02550.html">CFormElm</a> ** </td> + <td class="mdname" nowrap> <em>node</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02547.html#NLGEORGES_1_1UFormDfnw3">UFormDfn::TEntryType</a> & </td> + <td class="mdname" nowrap> <em>type</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>bool & </td> + <td class="mdname" nowrap> <em>array</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>bool & </td> + <td class="mdname" nowrap> <em>parentVDfnArray</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>bool </td> + <td class="mdname" nowrap> <em>verbose</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a04558.html#a11">uint32</a> </td> + <td class="mdname" nowrap> <em>round</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"> const<code> [inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05728.html#l00629">629</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05729.html#l00231">NLGEORGES::CFormElm::Form</a>, <a class="el" href="a05728.html#l00764">NLGEORGES::CFormElm::getIternalNodeByName()</a>, <a class="el" href="a05729.html#l00237">NLGEORGES::CFormElm::ParentDfn</a>, <a class="el" href="a05729.html#l00240">NLGEORGES::CFormElm::ParentIndex</a>, <a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructx3NLGEORGES_1_1CFormElmVirtualStructx2">NLGEORGES::CFormElm::Return</a>, <a class="el" href="a05646.html#l00244">type</a>, <a class="el" href="a05981.html#l00105">uint</a>, and <a class="el" href="a05981.html#l00100">uint32</a>. +<p> +<div class="fragment"><pre>00633 { +00634 *parentDfn = <a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructp1">ParentDfn</a>; +00635 indexDfn = <a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructp2">ParentIndex</a>; +00636 *nodeDfn = NULL; +00637 *nodeType = NULL; +00638 *node = (<a class="code" href="a02550.html#NLGEORGES_1_1CFormElma2">CFormElm</a>*)<span class="keyword">this</span>; +00639 <span class="keywordtype">bool</span> created; +00640 <span class="keywordflow">return</span> <a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructf0">getIternalNodeByName</a> (Form, name, parentDfn, indexDfn, nodeDfn, nodeType, node, type, array, Return, created, parentVDfnArray, verbose, round); +00641 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa37" doxytag="NLGEORGES::CFormElmStruct::getNodeByName" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::getNodeByName </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a02551.html">UFormElm</a> ** </td> + <td class="mdname" nowrap> <em>result</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const char * </td> + <td class="mdname" nowrap> <em>name</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw9">TWhereIsNode</a> * </td> + <td class="mdname" nowrap> <em>where</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>bool </td> + <td class="mdname" nowrap> <em>verbose</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a04558.html#a11">uint32</a> </td> + <td class="mdname" nowrap> <em>round</em> = 0</td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"><code> [virtual, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Implements <a class="el" href="a02551.html#NLGEORGES_1_1UFormElma16">NLGEORGES::UFormElm</a>. +<p> +Definition at line <a class="el" href="a05728.html#l00360">360</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05981.html#l00100">uint32</a>. +<p> +<div class="fragment"><pre>00361 { +00362 <span class="keyword">const</span> UFormElm *resultConst = NULL; +00363 <span class="keywordflow">if</span> (((<span class="keyword">const</span> UFormElm*)<span class="keyword">this</span>)->getNodeByName (&resultConst, name, where, verbose, round)) +00364 { +00365 *result = const_cast<UFormElm*> (resultConst); +00366 <span class="keywordflow">return</span> <span class="keyword">true</span>; +00367 } +00368 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00369 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa38" doxytag="NLGEORGES::CFormElmStruct::getNodeByName" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::getNodeByName </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">const <a class="el" href="a02551.html">UFormElm</a> ** </td> + <td class="mdname" nowrap> <em>result</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const char * </td> + <td class="mdname" nowrap> <em>name</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw9">TWhereIsNode</a> * </td> + <td class="mdname" nowrap> <em>where</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>bool </td> + <td class="mdname" nowrap> <em>verbose</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a04558.html#a11">uint32</a> </td> + <td class="mdname" nowrap> <em>round</em> = 0</td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"> const<code> [virtual, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Return a node pointer with its name.<p> +<dl compact><dt><b>Parameters:</b></dt><dd> + <table border="0" cellspacing="2" cellpadding="0"> + <tr><td valign=top><em>result</em> </td><td>will be filled with the node pointer. Can be NULL if the node doesn't exist. </td></tr> + <tr><td valign=top><em>name</em> </td><td>is the form node name </td></tr> + <tr><td valign=top><em>where</em> </td><td>is a pointer on the information flag of the value. If Where is not NULL, it is filled with the position where the node has been found. If result is NULL, where is undefined. </td></tr> + </table> +</dl> +<dl compact><dt><b>Returns:</b></dt><dd>true if the result has been filled, false if the node is not referenced.</dd></dl> +About the node existance<p> +An atom node exist if its value are defined. A struct node exist if one of its children exist. An array node exist if one of its children exist. If the node doesn't exist, you can't have a pointer on it with <a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa38">getNodeByName()</a>. It returns NULL. But, you can evaluate the value of non-existant atom nodes with <a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa66">getValueByName()</a>.<p> +About the form name:<p> +Struct elements name must be separeted by '.' Struct indexes must be between '[' and ']'<p> +Exemple: "position.x" : get the element named x in the struct named position "entities[2].color" : get the node named color in the second element of the entities array +<p> +Implements <a class="el" href="a02551.html#NLGEORGES_1_1UFormElma17">NLGEORGES::UFormElm</a>. +<p> +Definition at line <a class="el" href="a05728.html#l00373">373</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05729.html#l00231">NLGEORGES::CFormElm::Form</a>, <a class="el" href="a05646.html#l00244">type</a>, <a class="el" href="a05981.html#l00105">uint</a>, and <a class="el" href="a05981.html#l00100">uint32</a>. +<p> +Referenced by <a class="el" href="a05728.html#l00406">NLGEORGES::CFormElm::getValueByName()</a>. +<p> +<div class="fragment"><pre>00374 { +00375 <span class="comment">// The parent Dfn</span> +00376 <span class="keyword">const</span> CFormDfn *parentDfn; +00377 <span class="keyword">const</span> CFormDfn *nodeDfn; +00378 <span class="keyword">const</span> CType *nodeType; +00379 <a class="code" href="a02550.html#NLGEORGES_1_1CFormElma2">CFormElm</a> *node; +00380 <a class="code" href="a04558.html#a15">uint</a> indexDfn; +00381 <span class="keywordtype">bool</span> array; +00382 <span class="keywordtype">bool</span> parentVDfnArray; +00383 UFormDfn::TEntryType <a class="code" href="a04223.html#a581">type</a>; +00384 +00385 <span class="comment">// Search for the node</span> +00386 <span class="keywordflow">if</span> (<a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa38">getNodeByName</a> (name, &parentDfn, indexDfn, &nodeDfn, &nodeType, &node, type, array, parentVDfnArray, verbose, round)) +00387 { +00388 <span class="comment">// Set the result</span> +00389 *result = node; +00390 +00391 <span class="comment">// Where ?</span> +00392 <span class="keywordflow">if</span> (where && node) +00393 { +00394 *where = (node->getForm () == <a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructp0">Form</a>) ? <a class="code" href="a02551.html#NLGEORGES_1_1UFormElmw9NLGEORGES_1_1UFormElmw4">NodeForm</a> : <a class="code" href="a02551.html#NLGEORGES_1_1UFormElmw9NLGEORGES_1_1UFormElmw5">NodeParentForm</a>; +00395 } +00396 +00397 <span class="comment">// Ok </span> +00398 <span class="keywordflow">return</span> <span class="keyword">true</span>; +00399 } +00400 +00401 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00402 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa39" doxytag="NLGEORGES::CFormElmStruct::getParent" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> <a class="el" href="a02551.html">UFormElm</a> * NLGEORGES::CFormElm::getParent </td> + <td class="md" valign="top">( </td> + <td class="mdname1" valign="top" nowrap> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap> const<code> [virtual, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05728.html#l00589">589</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05729.html#l00234">NLGEORGES::CFormElm::ParentNode</a>. +<p> +<div class="fragment"><pre>00590 { +00591 <span class="keywordflow">return</span> <a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructp3">ParentNode</a>; +00592 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa40" doxytag="NLGEORGES::CFormElmStruct::getStructDfn" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> <a class="el" href="a02547.html">UFormDfn</a> * NLGEORGES::CFormElmStruct::getStructDfn </td> + <td class="md" valign="top">( </td> + <td class="mdname1" valign="top" nowrap> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap><code> [virtual]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Return the struct dfn. +<p> + +<p> +Reimplemented from <a class="el" href="a02550.html#NLGEORGES_1_1CFormElmAtoma39">NLGEORGES::CFormElm</a>. +<p> +Definition at line <a class="el" href="a05728.html#l01762">1762</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05729.html#l00277">FormDfn</a>. +<p> +<div class="fragment"><pre>01763 { +01764 <span class="keywordflow">return</span> (CFormDfn*)<a class="code" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructo2">FormDfn</a>; +01765 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa41" doxytag="NLGEORGES::CFormElmStruct::getStructNode" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElmStruct::getStructNode </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a15">uint</a> </td> + <td class="mdname" nowrap> <em>element</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02551.html">UFormElm</a> ** </td> + <td class="mdname" nowrap> <em>result</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"><code> [virtual]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Return a mutable element pointer. Can be NULL if the node doesn't exist. +<p> + +<p> +Reimplemented from <a class="el" href="a02550.html#NLGEORGES_1_1CFormElmAtoma40">NLGEORGES::CFormElm</a>. +<p> +Definition at line <a class="el" href="a05728.html#l01769">1769</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05981.html#l00105">uint</a>, and <a class="el" href="a05728.html#l02099">warning()</a>. +<p> +<div class="fragment"><pre>01770 { +01771 <span class="keywordflow">if</span> (element<<a class="code" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructo1">Elements</a>.size()) +01772 { +01773 *result = <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructo1">Elements</a>[element].Element; +01774 <span class="keywordflow">return</span> <span class="keyword">true</span>; +01775 } +01776 <span class="keywordflow">else</span> +01777 { +01778 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa85">warning</a> (<span class="keyword">false</span>, <span class="stringliteral">"getStructNode"</span>, <span class="stringliteral">"Index (%d) out of bound (%d)."</span>, element, <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructo1">Elements</a>.size() ); +01779 <span class="keywordflow">return</span> <span class="keyword">false</span>; +01780 } +01781 }; +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa42" doxytag="NLGEORGES::CFormElmStruct::getStructNode" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElmStruct::getStructNode </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a15">uint</a> </td> + <td class="mdname" nowrap> <em>element</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const <a class="el" href="a02551.html">UFormElm</a> ** </td> + <td class="mdname" nowrap> <em>result</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"> const<code> [virtual]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Return a const element pointer. Can be NULL if the node doesn't exist. +<p> + +<p> +Reimplemented from <a class="el" href="a02550.html#NLGEORGES_1_1CFormElmAtoma41">NLGEORGES::CFormElm</a>. +<p> +Definition at line <a class="el" href="a05728.html#l01746">1746</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05981.html#l00105">uint</a>, and <a class="el" href="a05728.html#l02099">warning()</a>. +<p> +<div class="fragment"><pre>01747 { +01748 <span class="keywordflow">if</span> (element<<a class="code" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructo1">Elements</a>.size()) +01749 { +01750 *result = <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructo1">Elements</a>[element].Element; +01751 <span class="keywordflow">return</span> <span class="keyword">true</span>; +01752 } +01753 <span class="keywordflow">else</span> +01754 { +01755 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa85">warning</a> (<span class="keyword">false</span>, <span class="stringliteral">"getStructNode"</span>, <span class="stringliteral">"Index (%d) out of bound (%d)."</span>, element, <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructo1">Elements</a>.size() ); +01756 <span class="keywordflow">return</span> <span class="keyword">false</span>; +01757 } +01758 }; +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa43" doxytag="NLGEORGES::CFormElmStruct::getStructNodeName" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElmStruct::getStructNodeName </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a15">uint</a> </td> + <td class="mdname" nowrap> <em>element</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>std::string & </td> + <td class="mdname" nowrap> <em>result</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"> const<code> [virtual]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Return the element name. +<p> + +<p> +Reimplemented from <a class="el" href="a02550.html#NLGEORGES_1_1CFormElmAtoma42">NLGEORGES::CFormElm</a>. +<p> +Definition at line <a class="el" href="a05728.html#l01730">1730</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05981.html#l00105">uint</a>, and <a class="el" href="a05728.html#l02099">warning()</a>. +<p> +<div class="fragment"><pre>01731 { +01732 <span class="keywordflow">if</span> (element<<a class="code" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructo1">Elements</a>.size()) +01733 { +01734 result = <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructo1">Elements</a>[element].Name; +01735 <span class="keywordflow">return</span> <span class="keyword">true</span>; +01736 } +01737 <span class="keywordflow">else</span> +01738 { +01739 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa85">warning</a> (<span class="keyword">false</span>, <span class="stringliteral">"getStructNodeName"</span>, <span class="stringliteral">"Index (%d) out of bound (%d)."</span>, element, <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructo1">Elements</a>.size() ); +01740 <span class="keywordflow">return</span> <span class="keyword">false</span>; +01741 } +01742 }; +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa44" doxytag="NLGEORGES::CFormElmStruct::getStructSize" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElmStruct::getStructSize </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a15">uint</a> & </td> + <td class="mdname1" valign="top" nowrap> <em>size</em> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap> const<code> [virtual]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Return the struct size. +<p> + +<p> +Reimplemented from <a class="el" href="a02550.html#NLGEORGES_1_1CFormElmAtoma43">NLGEORGES::CFormElm</a>. +<p> +Definition at line <a class="el" href="a05728.html#l01722">1722</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05646.html#l00645">size</a>, and <a class="el" href="a05981.html#l00105">uint</a>. +<p> +<div class="fragment"><pre>01723 { +01724 <a class="code" href="a04223.html#a587">size</a> = <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructo1">Elements</a>.size(); +01725 <span class="keywordflow">return</span> <span class="keyword">true</span>; +01726 }; +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa45" doxytag="NLGEORGES::CFormElmStruct::getValue" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::getValue </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a03337.html">NLMISC::CRGBA</a> & </td> + <td class="mdname" nowrap> <em>resultname</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> </td> + <td class="mdname" nowrap> <em>evaluate</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"> const<code> [virtual, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Warning, only R, G and B members are filled, not A. +<p> + +<p> +Implements <a class="el" href="a02551.html#NLGEORGES_1_1UFormElma23">NLGEORGES::UFormElm</a>. +<p> +Reimplemented in <a class="el" href="a02554.html#NLGEORGES_1_1CFormElmAtoma44">NLGEORGES::CFormElmAtom</a>. +<p> +Definition at line <a class="el" href="a05728.html#l00320">320</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05728.html#l01656">NLGEORGES::CFormElm::warning()</a>. +<p> +<div class="fragment"><pre>00321 { +00322 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa85">warning</a> (<span class="keyword">false</span>, <span class="stringliteral">"getValue"</span>, <span class="stringliteral">"This node is not an atom."</span>); +00323 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00324 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa46" doxytag="NLGEORGES::CFormElmStruct::getValue" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::getValue </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">bool & </td> + <td class="mdname" nowrap> <em>resultname</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> </td> + <td class="mdname" nowrap> <em>evaluate</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"> const<code> [virtual, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Implements <a class="el" href="a02551.html#NLGEORGES_1_1UFormElma24">NLGEORGES::UFormElm</a>. +<p> +Reimplemented in <a class="el" href="a02554.html#NLGEORGES_1_1CFormElmAtoma45">NLGEORGES::CFormElmAtom</a>. +<p> +Definition at line <a class="el" href="a05728.html#l00312">312</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05728.html#l01656">NLGEORGES::CFormElm::warning()</a>. +<p> +<div class="fragment"><pre>00313 { +00314 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa85">warning</a> (<span class="keyword">false</span>, <span class="stringliteral">"getValue"</span>, <span class="stringliteral">"This node is not an atom."</span>); +00315 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00316 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa47" doxytag="NLGEORGES::CFormElmStruct::getValue" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::getValue </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">double & </td> + <td class="mdname" nowrap> <em>resultname</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> </td> + <td class="mdname" nowrap> <em>evaluate</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"> const<code> [virtual, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Implements <a class="el" href="a02551.html#NLGEORGES_1_1UFormElma25">NLGEORGES::UFormElm</a>. +<p> +Reimplemented in <a class="el" href="a02554.html#NLGEORGES_1_1CFormElmAtoma46">NLGEORGES::CFormElmAtom</a>. +<p> +Definition at line <a class="el" href="a05728.html#l00304">304</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05728.html#l01656">NLGEORGES::CFormElm::warning()</a>. +<p> +<div class="fragment"><pre>00305 { +00306 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa85">warning</a> (<span class="keyword">false</span>, <span class="stringliteral">"getValue"</span>, <span class="stringliteral">"This node is not an atom."</span>); +00307 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00308 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa48" doxytag="NLGEORGES::CFormElmStruct::getValue" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::getValue </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">float & </td> + <td class="mdname" nowrap> <em>resultname</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> </td> + <td class="mdname" nowrap> <em>evaluate</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"> const<code> [virtual, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Implements <a class="el" href="a02551.html#NLGEORGES_1_1UFormElma26">NLGEORGES::UFormElm</a>. +<p> +Reimplemented in <a class="el" href="a02554.html#NLGEORGES_1_1CFormElmAtoma47">NLGEORGES::CFormElmAtom</a>. +<p> +Definition at line <a class="el" href="a05728.html#l00296">296</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05728.html#l01656">NLGEORGES::CFormElm::warning()</a>. +<p> +<div class="fragment"><pre>00297 { +00298 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa85">warning</a> (<span class="keyword">false</span>, <span class="stringliteral">"getValue"</span>, <span class="stringliteral">"This node is not an atom."</span>); +00299 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00300 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa49" doxytag="NLGEORGES::CFormElmStruct::getValue" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::getValue </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a11">uint32</a> & </td> + <td class="mdname" nowrap> <em>resultname</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> </td> + <td class="mdname" nowrap> <em>evaluate</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"> const<code> [virtual, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Implements <a class="el" href="a02551.html#NLGEORGES_1_1UFormElma27">NLGEORGES::UFormElm</a>. +<p> +Reimplemented in <a class="el" href="a02554.html#NLGEORGES_1_1CFormElmAtoma48">NLGEORGES::CFormElmAtom</a>. +<p> +Definition at line <a class="el" href="a05728.html#l00288">288</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05981.html#l00100">uint32</a>, and <a class="el" href="a05728.html#l01656">NLGEORGES::CFormElm::warning()</a>. +<p> +<div class="fragment"><pre>00289 { +00290 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa85">warning</a> (<span class="keyword">false</span>, <span class="stringliteral">"getValue"</span>, <span class="stringliteral">"This node is not an atom."</span>); +00291 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00292 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa50" doxytag="NLGEORGES::CFormElmStruct::getValue" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::getValue </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a10">sint32</a> & </td> + <td class="mdname" nowrap> <em>resultname</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> </td> + <td class="mdname" nowrap> <em>evaluate</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"> const<code> [virtual, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Implements <a class="el" href="a02551.html#NLGEORGES_1_1UFormElma28">NLGEORGES::UFormElm</a>. +<p> +Reimplemented in <a class="el" href="a02554.html#NLGEORGES_1_1CFormElmAtoma49">NLGEORGES::CFormElmAtom</a>. +<p> +Definition at line <a class="el" href="a05728.html#l00280">280</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05981.html#l00099">sint32</a>, and <a class="el" href="a05728.html#l01656">NLGEORGES::CFormElm::warning()</a>. +<p> +<div class="fragment"><pre>00281 { +00282 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa85">warning</a> (<span class="keyword">false</span>, <span class="stringliteral">"getValue"</span>, <span class="stringliteral">"This node is not an atom."</span>); +00283 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00284 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa51" doxytag="NLGEORGES::CFormElmStruct::getValue" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::getValue </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a9">uint16</a> & </td> + <td class="mdname" nowrap> <em>resultname</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> </td> + <td class="mdname" nowrap> <em>evaluate</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"> const<code> [virtual, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Implements <a class="el" href="a02551.html#NLGEORGES_1_1UFormElma29">NLGEORGES::UFormElm</a>. +<p> +Reimplemented in <a class="el" href="a02554.html#NLGEORGES_1_1CFormElmAtoma50">NLGEORGES::CFormElmAtom</a>. +<p> +Definition at line <a class="el" href="a05728.html#l00272">272</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05981.html#l00098">uint16</a>, and <a class="el" href="a05728.html#l01656">NLGEORGES::CFormElm::warning()</a>. +<p> +<div class="fragment"><pre>00273 { +00274 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa85">warning</a> (<span class="keyword">false</span>, <span class="stringliteral">"getValue"</span>, <span class="stringliteral">"This node is not an atom."</span>); +00275 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00276 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa52" doxytag="NLGEORGES::CFormElmStruct::getValue" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::getValue </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a8">sint16</a> & </td> + <td class="mdname" nowrap> <em>resultname</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> </td> + <td class="mdname" nowrap> <em>evaluate</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"> const<code> [virtual, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Implements <a class="el" href="a02551.html#NLGEORGES_1_1UFormElma30">NLGEORGES::UFormElm</a>. +<p> +Reimplemented in <a class="el" href="a02554.html#NLGEORGES_1_1CFormElmAtoma51">NLGEORGES::CFormElmAtom</a>. +<p> +Definition at line <a class="el" href="a05728.html#l00264">264</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05981.html#l00097">sint16</a>, and <a class="el" href="a05728.html#l01656">NLGEORGES::CFormElm::warning()</a>. +<p> +<div class="fragment"><pre>00265 { +00266 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa85">warning</a> (<span class="keyword">false</span>, <span class="stringliteral">"getValue"</span>, <span class="stringliteral">"This node is not an atom."</span>); +00267 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00268 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa53" doxytag="NLGEORGES::CFormElmStruct::getValue" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::getValue </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a7">uint8</a> & </td> + <td class="mdname" nowrap> <em>resultname</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> </td> + <td class="mdname" nowrap> <em>evaluate</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"> const<code> [virtual, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Implements <a class="el" href="a02551.html#NLGEORGES_1_1UFormElma31">NLGEORGES::UFormElm</a>. +<p> +Reimplemented in <a class="el" href="a02554.html#NLGEORGES_1_1CFormElmAtoma52">NLGEORGES::CFormElmAtom</a>. +<p> +Definition at line <a class="el" href="a05728.html#l00256">256</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05981.html#l00096">uint8</a>, and <a class="el" href="a05728.html#l01656">NLGEORGES::CFormElm::warning()</a>. +<p> +<div class="fragment"><pre>00257 { +00258 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa85">warning</a> (<span class="keyword">false</span>, <span class="stringliteral">"getValue"</span>, <span class="stringliteral">"This node is not an atom."</span>); +00259 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00260 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa54" doxytag="NLGEORGES::CFormElmStruct::getValue" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::getValue </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a6">sint8</a> & </td> + <td class="mdname" nowrap> <em>resultname</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> </td> + <td class="mdname" nowrap> <em>evaluate</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"> const<code> [virtual, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Implements <a class="el" href="a02551.html#NLGEORGES_1_1UFormElma32">NLGEORGES::UFormElm</a>. +<p> +Reimplemented in <a class="el" href="a02554.html#NLGEORGES_1_1CFormElmAtoma53">NLGEORGES::CFormElmAtom</a>. +<p> +Definition at line <a class="el" href="a05728.html#l00248">248</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05981.html#l00095">sint8</a>, and <a class="el" href="a05728.html#l01656">NLGEORGES::CFormElm::warning()</a>. +<p> +<div class="fragment"><pre>00249 { +00250 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa85">warning</a> (<span class="keyword">false</span>, <span class="stringliteral">"getValue"</span>, <span class="stringliteral">"This node is not an atom."</span>); +00251 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00252 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa55" doxytag="NLGEORGES::CFormElmStruct::getValue" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::getValue </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">std::string & </td> + <td class="mdname" nowrap> <em>resultname</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> </td> + <td class="mdname" nowrap> <em>evaluate</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"> const<code> [virtual, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Return the atom value. The numbers are clamped to the type limit values.<p> +<dl compact><dt><b>Parameters:</b></dt><dd> + <table border="0" cellspacing="2" cellpadding="0"> + <tr><td valign=top><em>result</em> </td><td>is the reference on the value to fill with result </td></tr> + <tr><td valign=top><em>evaluate</em> </td><td>must be true if you want to have an evaluated value, false if you want the formula value.</td></tr> + </table> +</dl> + +<p> +Implements <a class="el" href="a02551.html#NLGEORGES_1_1UFormElma33">NLGEORGES::UFormElm</a>. +<p> +Reimplemented in <a class="el" href="a02554.html#NLGEORGES_1_1CFormElmAtoma54">NLGEORGES::CFormElmAtom</a>. +<p> +Definition at line <a class="el" href="a05728.html#l00240">240</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05728.html#l01656">NLGEORGES::CFormElm::warning()</a>. +<p> +<div class="fragment"><pre>00241 { +00242 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa85">warning</a> (<span class="keyword">false</span>, <span class="stringliteral">"getValue"</span>, <span class="stringliteral">"This node is not an atom."</span>); +00243 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00244 }; +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa56" doxytag="NLGEORGES::CFormElmStruct::getValueByName" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::getValueByName </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a03337.html">NLMISC::CRGBA</a> & </td> + <td class="mdname" nowrap> <em>result</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const char * </td> + <td class="mdname" nowrap> <em>name</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> </td> + <td class="mdname" nowrap> <em>evaluate</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw10">TWhereIsValue</a> * </td> + <td class="mdname" nowrap> <em>where</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a04558.html#a11">uint32</a> </td> + <td class="mdname" nowrap> <em>round</em> = 0</td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"> const<code> [virtual, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Warning, only R, G and B members are filled, not A. +<p> + +<p> +Implements <a class="el" href="a02551.html#NLGEORGES_1_1UFormElma34">NLGEORGES::UFormElm</a>. +<p> +Definition at line <a class="el" href="a05728.html#l00575">575</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05729.html#l00477">NLGEORGES::CFormElm::convertValue()</a>, <a class="el" href="a05728.html#l00406">NLGEORGES::CFormElm::getValueByName()</a>, <a class="el" href="a05981.html#l00100">uint32</a>, and <a class="el" href="a05646.html#l01132">value</a>. +<p> +<div class="fragment"><pre>00576 { +00577 <span class="comment">// Get the string value</span> +00578 string <a class="code" href="a04223.html#a658">value</a>; +00579 <span class="keywordflow">if</span> (<a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa66">getValueByName</a> (value, name, evaluate, where, round)) +00580 { +00581 <span class="keywordflow">return</span> <a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa14">convertValue</a> (result, <a class="code" href="a04223.html#a658">value</a>.c_str ()); +00582 } +00583 +00584 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00585 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa57" doxytag="NLGEORGES::CFormElmStruct::getValueByName" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::getValueByName </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">bool & </td> + <td class="mdname" nowrap> <em>result</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const char * </td> + <td class="mdname" nowrap> <em>name</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> </td> + <td class="mdname" nowrap> <em>evaluate</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw10">TWhereIsValue</a> * </td> + <td class="mdname" nowrap> <em>where</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a04558.html#a11">uint32</a> </td> + <td class="mdname" nowrap> <em>round</em> = 0</td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"> const<code> [virtual, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Implements <a class="el" href="a02551.html#NLGEORGES_1_1UFormElma35">NLGEORGES::UFormElm</a>. +<p> +Definition at line <a class="el" href="a05728.html#l00561">561</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05729.html#l00477">NLGEORGES::CFormElm::convertValue()</a>, <a class="el" href="a05728.html#l00406">NLGEORGES::CFormElm::getValueByName()</a>, <a class="el" href="a05981.html#l00100">uint32</a>, and <a class="el" href="a05646.html#l01132">value</a>. +<p> +<div class="fragment"><pre>00562 { +00563 <span class="comment">// Get the string value</span> +00564 string <a class="code" href="a04223.html#a658">value</a>; +00565 <span class="keywordflow">if</span> (<a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa66">getValueByName</a> (value, name, evaluate, where, round)) +00566 { +00567 <span class="keywordflow">return</span> <a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa14">convertValue</a> (result, <a class="code" href="a04223.html#a658">value</a>.c_str ()); +00568 } +00569 +00570 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00571 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa58" doxytag="NLGEORGES::CFormElmStruct::getValueByName" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::getValueByName </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">double & </td> + <td class="mdname" nowrap> <em>result</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const char * </td> + <td class="mdname" nowrap> <em>name</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> </td> + <td class="mdname" nowrap> <em>evaluate</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw10">TWhereIsValue</a> * </td> + <td class="mdname" nowrap> <em>where</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a04558.html#a11">uint32</a> </td> + <td class="mdname" nowrap> <em>round</em> = 0</td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"> const<code> [virtual, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Implements <a class="el" href="a02551.html#NLGEORGES_1_1UFormElma36">NLGEORGES::UFormElm</a>. +<p> +Definition at line <a class="el" href="a05728.html#l00547">547</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05729.html#l00477">NLGEORGES::CFormElm::convertValue()</a>, <a class="el" href="a05728.html#l00406">NLGEORGES::CFormElm::getValueByName()</a>, <a class="el" href="a05981.html#l00100">uint32</a>, and <a class="el" href="a05646.html#l01132">value</a>. +<p> +<div class="fragment"><pre>00548 { +00549 <span class="comment">// Get the string value</span> +00550 string <a class="code" href="a04223.html#a658">value</a>; +00551 <span class="keywordflow">if</span> (<a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa66">getValueByName</a> (value, name, evaluate, where, round)) +00552 { +00553 <span class="keywordflow">return</span> <a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa14">convertValue</a> (result, <a class="code" href="a04223.html#a658">value</a>.c_str ()); +00554 } +00555 +00556 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00557 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa59" doxytag="NLGEORGES::CFormElmStruct::getValueByName" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::getValueByName </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">float & </td> + <td class="mdname" nowrap> <em>result</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const char * </td> + <td class="mdname" nowrap> <em>name</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> </td> + <td class="mdname" nowrap> <em>evaluate</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw10">TWhereIsValue</a> * </td> + <td class="mdname" nowrap> <em>where</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a04558.html#a11">uint32</a> </td> + <td class="mdname" nowrap> <em>round</em> = 0</td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"> const<code> [virtual, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Implements <a class="el" href="a02551.html#NLGEORGES_1_1UFormElma37">NLGEORGES::UFormElm</a>. +<p> +Definition at line <a class="el" href="a05728.html#l00533">533</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05729.html#l00477">NLGEORGES::CFormElm::convertValue()</a>, <a class="el" href="a05728.html#l00406">NLGEORGES::CFormElm::getValueByName()</a>, <a class="el" href="a05981.html#l00100">uint32</a>, and <a class="el" href="a05646.html#l01132">value</a>. +<p> +<div class="fragment"><pre>00534 { +00535 <span class="comment">// Get the string value</span> +00536 string <a class="code" href="a04223.html#a658">value</a>; +00537 <span class="keywordflow">if</span> (<a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa66">getValueByName</a> (value, name, evaluate, where, round)) +00538 { +00539 <span class="keywordflow">return</span> <a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa14">convertValue</a> (result, <a class="code" href="a04223.html#a658">value</a>.c_str ()); +00540 } +00541 +00542 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00543 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa60" doxytag="NLGEORGES::CFormElmStruct::getValueByName" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::getValueByName </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a11">uint32</a> & </td> + <td class="mdname" nowrap> <em>result</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const char * </td> + <td class="mdname" nowrap> <em>name</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> </td> + <td class="mdname" nowrap> <em>evaluate</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw10">TWhereIsValue</a> * </td> + <td class="mdname" nowrap> <em>where</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a04558.html#a11">uint32</a> </td> + <td class="mdname" nowrap> <em>round</em> = 0</td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"> const<code> [virtual, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Implements <a class="el" href="a02551.html#NLGEORGES_1_1UFormElma38">NLGEORGES::UFormElm</a>. +<p> +Definition at line <a class="el" href="a05728.html#l00519">519</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05729.html#l00477">NLGEORGES::CFormElm::convertValue()</a>, <a class="el" href="a05728.html#l00406">NLGEORGES::CFormElm::getValueByName()</a>, <a class="el" href="a05981.html#l00100">uint32</a>, and <a class="el" href="a05646.html#l01132">value</a>. +<p> +<div class="fragment"><pre>00520 { +00521 <span class="comment">// Get the string value</span> +00522 string <a class="code" href="a04223.html#a658">value</a>; +00523 <span class="keywordflow">if</span> (<a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa66">getValueByName</a> (value, name, evaluate, where, round)) +00524 { +00525 <span class="keywordflow">return</span> <a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa14">convertValue</a> (result, <a class="code" href="a04223.html#a658">value</a>.c_str ()); +00526 } +00527 +00528 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00529 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa61" doxytag="NLGEORGES::CFormElmStruct::getValueByName" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::getValueByName </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a10">sint32</a> & </td> + <td class="mdname" nowrap> <em>result</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const char * </td> + <td class="mdname" nowrap> <em>name</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> </td> + <td class="mdname" nowrap> <em>evaluate</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw10">TWhereIsValue</a> * </td> + <td class="mdname" nowrap> <em>where</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a04558.html#a11">uint32</a> </td> + <td class="mdname" nowrap> <em>round</em> = 0</td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"> const<code> [virtual, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Implements <a class="el" href="a02551.html#NLGEORGES_1_1UFormElma39">NLGEORGES::UFormElm</a>. +<p> +Definition at line <a class="el" href="a05728.html#l00505">505</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05729.html#l00477">NLGEORGES::CFormElm::convertValue()</a>, <a class="el" href="a05728.html#l00406">NLGEORGES::CFormElm::getValueByName()</a>, <a class="el" href="a05981.html#l00099">sint32</a>, <a class="el" href="a05981.html#l00100">uint32</a>, and <a class="el" href="a05646.html#l01132">value</a>. +<p> +<div class="fragment"><pre>00506 { +00507 <span class="comment">// Get the string value</span> +00508 string <a class="code" href="a04223.html#a658">value</a>; +00509 <span class="keywordflow">if</span> (<a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa66">getValueByName</a> (value, name, evaluate, where, round)) +00510 { +00511 <span class="keywordflow">return</span> <a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa14">convertValue</a> (result, <a class="code" href="a04223.html#a658">value</a>.c_str ()); +00512 } +00513 +00514 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00515 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa62" doxytag="NLGEORGES::CFormElmStruct::getValueByName" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::getValueByName </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a9">uint16</a> & </td> + <td class="mdname" nowrap> <em>result</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const char * </td> + <td class="mdname" nowrap> <em>name</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> </td> + <td class="mdname" nowrap> <em>evaluate</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw10">TWhereIsValue</a> * </td> + <td class="mdname" nowrap> <em>where</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a04558.html#a11">uint32</a> </td> + <td class="mdname" nowrap> <em>round</em> = 0</td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"> const<code> [virtual, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Implements <a class="el" href="a02551.html#NLGEORGES_1_1UFormElma40">NLGEORGES::UFormElm</a>. +<p> +Definition at line <a class="el" href="a05728.html#l00491">491</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05729.html#l00477">NLGEORGES::CFormElm::convertValue()</a>, <a class="el" href="a05728.html#l00406">NLGEORGES::CFormElm::getValueByName()</a>, <a class="el" href="a05981.html#l00098">uint16</a>, <a class="el" href="a05981.html#l00100">uint32</a>, and <a class="el" href="a05646.html#l01132">value</a>. +<p> +<div class="fragment"><pre>00492 { +00493 <span class="comment">// Get the string value</span> +00494 string <a class="code" href="a04223.html#a658">value</a>; +00495 <span class="keywordflow">if</span> (<a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa66">getValueByName</a> (value, name, evaluate, where, round)) +00496 { +00497 <span class="keywordflow">return</span> <a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa14">convertValue</a> (result, <a class="code" href="a04223.html#a658">value</a>.c_str ()); +00498 } +00499 +00500 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00501 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa63" doxytag="NLGEORGES::CFormElmStruct::getValueByName" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::getValueByName </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a8">sint16</a> & </td> + <td class="mdname" nowrap> <em>result</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const char * </td> + <td class="mdname" nowrap> <em>name</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> </td> + <td class="mdname" nowrap> <em>evaluate</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw10">TWhereIsValue</a> * </td> + <td class="mdname" nowrap> <em>where</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a04558.html#a11">uint32</a> </td> + <td class="mdname" nowrap> <em>round</em> = 0</td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"> const<code> [virtual, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Implements <a class="el" href="a02551.html#NLGEORGES_1_1UFormElma41">NLGEORGES::UFormElm</a>. +<p> +Definition at line <a class="el" href="a05728.html#l00477">477</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05729.html#l00477">NLGEORGES::CFormElm::convertValue()</a>, <a class="el" href="a05728.html#l00406">NLGEORGES::CFormElm::getValueByName()</a>, <a class="el" href="a05981.html#l00097">sint16</a>, <a class="el" href="a05981.html#l00100">uint32</a>, and <a class="el" href="a05646.html#l01132">value</a>. +<p> +<div class="fragment"><pre>00478 { +00479 <span class="comment">// Get the string value</span> +00480 string <a class="code" href="a04223.html#a658">value</a>; +00481 <span class="keywordflow">if</span> (<a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa66">getValueByName</a> (value, name, evaluate, where, round)) +00482 { +00483 <span class="keywordflow">return</span> <a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa14">convertValue</a> (result, <a class="code" href="a04223.html#a658">value</a>.c_str ()); +00484 } +00485 +00486 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00487 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa64" doxytag="NLGEORGES::CFormElmStruct::getValueByName" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::getValueByName </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a7">uint8</a> & </td> + <td class="mdname" nowrap> <em>result</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const char * </td> + <td class="mdname" nowrap> <em>name</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> </td> + <td class="mdname" nowrap> <em>evaluate</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw10">TWhereIsValue</a> * </td> + <td class="mdname" nowrap> <em>where</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a04558.html#a11">uint32</a> </td> + <td class="mdname" nowrap> <em>round</em> = 0</td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"> const<code> [virtual, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Implements <a class="el" href="a02551.html#NLGEORGES_1_1UFormElma42">NLGEORGES::UFormElm</a>. +<p> +Definition at line <a class="el" href="a05728.html#l00463">463</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05729.html#l00477">NLGEORGES::CFormElm::convertValue()</a>, <a class="el" href="a05728.html#l00406">NLGEORGES::CFormElm::getValueByName()</a>, <a class="el" href="a05981.html#l00100">uint32</a>, <a class="el" href="a05981.html#l00096">uint8</a>, and <a class="el" href="a05646.html#l01132">value</a>. +<p> +<div class="fragment"><pre>00464 { +00465 <span class="comment">// Get the string value</span> +00466 string <a class="code" href="a04223.html#a658">value</a>; +00467 <span class="keywordflow">if</span> (<a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa66">getValueByName</a> (value, name, evaluate, where, round)) +00468 { +00469 <span class="keywordflow">return</span> <a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa14">convertValue</a> (result, <a class="code" href="a04223.html#a658">value</a>.c_str ()); +00470 } +00471 +00472 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00473 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa65" doxytag="NLGEORGES::CFormElmStruct::getValueByName" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::getValueByName </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a6">sint8</a> & </td> + <td class="mdname" nowrap> <em>result</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const char * </td> + <td class="mdname" nowrap> <em>name</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> </td> + <td class="mdname" nowrap> <em>evaluate</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw10">TWhereIsValue</a> * </td> + <td class="mdname" nowrap> <em>where</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a04558.html#a11">uint32</a> </td> + <td class="mdname" nowrap> <em>round</em> = 0</td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"> const<code> [virtual, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Implements <a class="el" href="a02551.html#NLGEORGES_1_1UFormElma43">NLGEORGES::UFormElm</a>. +<p> +Definition at line <a class="el" href="a05728.html#l00449">449</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05729.html#l00477">NLGEORGES::CFormElm::convertValue()</a>, <a class="el" href="a05728.html#l00406">NLGEORGES::CFormElm::getValueByName()</a>, <a class="el" href="a05981.html#l00095">sint8</a>, <a class="el" href="a05981.html#l00100">uint32</a>, and <a class="el" href="a05646.html#l01132">value</a>. +<p> +<div class="fragment"><pre>00450 { +00451 <span class="comment">// Get the string value</span> +00452 string <a class="code" href="a04223.html#a658">value</a>; +00453 <span class="keywordflow">if</span> (<a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa66">getValueByName</a> (value, name, evaluate, where, round)) +00454 { +00455 <span class="keywordflow">return</span> <a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa14">convertValue</a> (result, <a class="code" href="a04223.html#a658">value</a>.c_str ()); +00456 } +00457 +00458 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00459 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa66" doxytag="NLGEORGES::CFormElmStruct::getValueByName" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::getValueByName </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">std::string & </td> + <td class="mdname" nowrap> <em>result</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const char * </td> + <td class="mdname" nowrap> <em>name</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw8">TEval</a> </td> + <td class="mdname" nowrap> <em>evaluate</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02551.html#NLGEORGES_1_1UFormElmw10">TWhereIsValue</a> * </td> + <td class="mdname" nowrap> <em>where</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a04558.html#a11">uint32</a> </td> + <td class="mdname" nowrap> <em>round</em> = 0</td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"> const<code> [virtual, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Get a form value with its name. The numbers are clamped to the type limit values.<p> +<dl compact><dt><b>Parameters:</b></dt><dd> + <table border="0" cellspacing="2" cellpadding="0"> + <tr><td valign=top><em>result</em> </td><td>is a reference on the value to fill with the result. </td></tr> + <tr><td valign=top><em>name</em> </td><td>is the form name of the value to found. </td></tr> + <tr><td valign=top><em>evaluate</em> </td><td>must be true if you want to have an evaluated value, false if you want the formula value. </td></tr> + <tr><td valign=top><em>where</em> </td><td>is a pointer on the information flag of the value. If Where is not NULL, it is filled with the position where the value has been found. </td></tr> + </table> +</dl> +<dl compact><dt><b>Returns:</b></dt><dd>true if the result has been filled, false if the value has not been found or the cast has failed or the evaluation has failed. </dd></dl> +<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa38">getNodeByName</a> ()</dd></dl> + +<p> +Implements <a class="el" href="a02551.html#NLGEORGES_1_1UFormElma44">NLGEORGES::UFormElm</a>. +<p> +Definition at line <a class="el" href="a05728.html#l00406">406</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05729.html#l00231">NLGEORGES::CFormElm::Form</a>, <a class="el" href="a05728.html#l00373">NLGEORGES::CFormElm::getNodeByName()</a>, <a class="el" href="a03622.html#NLGEORGES_1_1CTypea11">NLGEORGES::CType::getValue()</a>, <a class="el" href="a05622.html#l00290">nlassert</a>, <a class="el" href="a05646.html#l00244">type</a>, <a class="el" href="a05981.html#l00105">uint</a>, <a class="el" href="a05981.html#l00100">uint32</a>, and <a class="el" href="a05728.html#l01656">NLGEORGES::CFormElm::warning()</a>. +<p> +Referenced by <a class="el" href="a05728.html#l00449">NLGEORGES::CFormElm::getValueByName()</a>. +<p> +<div class="fragment"><pre>00407 { +00408 <span class="comment">// The parent Dfn</span> +00409 <span class="keyword">const</span> CFormDfn *parentDfn; +00410 <span class="keyword">const</span> CFormDfn *nodeDfn; +00411 <span class="keyword">const</span> CType *nodeType; +00412 <a class="code" href="a02550.html#NLGEORGES_1_1CFormElma2">CFormElm</a> *node; +00413 <a class="code" href="a04558.html#a15">uint</a> parentIndex; +00414 <span class="keywordtype">bool</span> array; +00415 <span class="keywordtype">bool</span> parentVDfnArray; +00416 UFormDfn::TEntryType <a class="code" href="a04223.html#a581">type</a>; +00417 +00418 <span class="comment">// Search for the node</span> +00419 <span class="keywordflow">if</span> (<a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa38">getNodeByName</a> (name, &parentDfn, parentIndex, &nodeDfn, &nodeType, &node, type, array, parentVDfnArray, <span class="keyword">true</span>, round)) +00420 { +00421 <span class="comment">// End, return the current index</span> +00422 <span class="keywordflow">if</span> (<a class="code" href="a04223.html#a581">type</a> == UFormDfn::EntryType) +00423 { +00424 <span class="comment">// The atom</span> +00425 <span class="keyword">const</span> CFormElmAtom *atom = node ? safe_cast<const CFormElmAtom*> (node) : NULL; +00426 +00427 <span class="comment">// Evale</span> +00428 <a class="code" href="a04199.html#a6">nlassert</a> (nodeType); +00429 <span class="keywordflow">return</span> (nodeType->getValue (result, Form, atom, *parentDfn, parentIndex, evaluate, (<a class="code" href="a04558.html#a11">uint32</a>*)where, round, name)); +00430 } +00431 <span class="keywordflow">else</span> +00432 { +00433 <span class="comment">// Error message</span> +00434 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa85">warning</a> (<span class="keyword">false</span>, <span class="stringliteral">"getValueByName"</span>, <span class="stringliteral">"The node (%s) is not an atom element. Can't return a value."</span>, name); +00435 } +00436 } +00437 <span class="keywordflow">else</span> +00438 { +00439 <span class="comment">// Error message</span> +00440 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa85">warning</a> (<span class="keyword">false</span>, <span class="stringliteral">"getValueByName"</span>, <span class="stringliteral">"Can't find the node (%s)."</span>, name); +00441 } +00442 +00443 <span class="comment">// Error</span> +00444 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00445 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa67" doxytag="NLGEORGES::CFormElmStruct::isArray" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::isArray </td> + <td class="md" valign="top">( </td> + <td class="mdname1" valign="top" nowrap> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap> const<code> [virtual, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Return true if the element is an array. +<p> + +<p> +Implements <a class="el" href="a02551.html#NLGEORGES_1_1UFormElma45">NLGEORGES::UFormElm</a>. +<p> +Reimplemented in <a class="el" href="a02552.html#NLGEORGES_1_1CFormElmArraya66">NLGEORGES::CFormElmArray</a>. +<p> +Definition at line <a class="el" href="a05728.html#l00053">53</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +Referenced by <a class="el" href="a05728.html#l00719">NLGEORGES::CFormElm::arrayDeleteNodeByName()</a>, <a class="el" href="a05728.html#l00645">NLGEORGES::CFormElm::arrayInsertNodeByName()</a>, and <a class="el" href="a05728.html#l00764">NLGEORGES::CFormElm::getIternalNodeByName()</a>. +<p> +<div class="fragment"><pre>00054 { +00055 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00056 }; +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa68" doxytag="NLGEORGES::CFormElmStruct::isAtom" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::isAtom </td> + <td class="md" valign="top">( </td> + <td class="mdname1" valign="top" nowrap> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap> const<code> [virtual, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Return true if the element is an atom. +<p> + +<p> +Implements <a class="el" href="a02551.html#NLGEORGES_1_1UFormElma46">NLGEORGES::UFormElm</a>. +<p> +Reimplemented in <a class="el" href="a02554.html#NLGEORGES_1_1CFormElmAtoma67">NLGEORGES::CFormElmAtom</a>. +<p> +Definition at line <a class="el" href="a05728.html#l00233">233</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +<div class="fragment"><pre>00234 { +00235 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00236 }; +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa69" doxytag="NLGEORGES::CFormElmStruct::isStruct" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElmStruct::isStruct </td> + <td class="md" valign="top">( </td> + <td class="mdname1" valign="top" nowrap> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap> const<code> [virtual]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Return true if the element is a struct or a virtual struct. +<p> + +<p> +Reimplemented from <a class="el" href="a02550.html#NLGEORGES_1_1CFormElmAtoma68">NLGEORGES::CFormElm</a>. +<p> +Definition at line <a class="el" href="a05728.html#l01715">1715</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +<div class="fragment"><pre>01716 { +01717 <span class="keywordflow">return</span> <span class="keyword">true</span>; +01718 }; +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmStructa70" doxytag="NLGEORGES::CFormElmStruct::isUsed" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElmStruct::isUsed </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">const <a class="el" href="a02544.html">CForm</a> * </td> + <td class="mdname1" valign="top" nowrap> <em>form</em> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap> const<code> [virtual]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Reimplemented from <a class="el" href="a02550.html#NLGEORGES_1_1CFormElmAtoma69">NLGEORGES::CFormElm</a>. +<p> +Reimplemented in <a class="el" href="a02557.html#NLGEORGES_1_1CFormElmVirtualStructa70">NLGEORGES::CFormElmVirtualStruct</a>. +<p> +Definition at line <a class="el" href="a05728.html#l01990">1990</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05981.html#l00105">uint</a>. +<p> +Referenced by <a class="el" href="a05728.html#l01785">write()</a>. +<p> +<div class="fragment"><pre>01991 { +01992 <span class="keywordflow">for</span> (<a class="code" href="a04558.html#a15">uint</a> i=0; i<<a class="code" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructo1">Elements</a>.size(); i++) +01993 { +01994 <span class="keywordflow">if</span> (<a class="code" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructo1">Elements</a>[i].Element && <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructo1">Elements</a>[i].Element->isUsed (form)) +01995 <span class="keywordflow">return</span> <span class="keyword">true</span>; +01996 } +01997 <span class="keywordflow">return</span> <span class="keyword">false</span>; +01998 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmStructa71" doxytag="NLGEORGES::CFormElmStruct::isVirtualStruct" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::isVirtualStruct </td> + <td class="md" valign="top">( </td> + <td class="mdname1" valign="top" nowrap> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap> const<code> [virtual, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Return true if the element is a virtual struct. +<p> + +<p> +Implements <a class="el" href="a02551.html#NLGEORGES_1_1UFormElma48">NLGEORGES::UFormElm</a>. +<p> +Reimplemented in <a class="el" href="a02557.html#NLGEORGES_1_1CFormElmVirtualStructa71">NLGEORGES::CFormElmVirtualStruct</a>. +<p> +Definition at line <a class="el" href="a05728.html#l00187">187</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +<div class="fragment"><pre>00188 { +00189 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00190 }; +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa72" doxytag="NLGEORGES::CFormElmStruct::read" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> void NLGEORGES::CFormElmStruct::read </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">xmlNodePtr </td> + <td class="mdname" nowrap> <em>node</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02558.html">CFormLoader</a> & </td> + <td class="mdname" nowrap> <em>loader</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const <a class="el" href="a02546.html">CFormDfn</a> * </td> + <td class="mdname" nowrap> <em>dfn</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02544.html">CForm</a> * </td> + <td class="mdname" nowrap> <em>form</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05728.html#l01817">1817</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05728.html#l02002">build()</a>, <a class="el" href="a05728.html#l01687">CFormElmStruct()</a>, <a class="el" href="a05726.html#l00337">NLGEORGES::CFormDfn::countParentDfn()</a>, <a class="el" href="a05729.html#l00277">FormDfn</a>, <a class="el" href="a05726.html#l00358">NLGEORGES::CFormDfn::getParentDfn()</a>, <a class="el" href="a05622.html#l00290">nlassert</a>, <a class="el" href="a05728.html#l02175">NLGEORGES::CFormElmVirtualStruct::read()</a>, <a class="el" href="a05728.html#l03001">NLGEORGES::CFormElmAtom::read()</a>, <a class="el" href="a05728.html#l02594">NLGEORGES::CFormElmArray::read()</a>, <a class="el" href="a05981.html#l00105">uint</a>, and <a class="el" href="a05728.html#l02099">warning()</a>. +<p> +Referenced by <a class="el" href="a05728.html#l02594">NLGEORGES::CFormElmArray::read()</a>, and <a class="el" href="a05724.html#l00188">NLGEORGES::CForm::read()</a>. +<p> +<div class="fragment"><pre>01818 { +01819 <span class="comment">// Get the smart pointer on the dfn</span> +01820 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructo2">FormDfn</a> = (CFormDfn*)dfn; +01821 +01822 <span class="comment">// Build the Form</span> +01823 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructa2">build</a> (dfn); +01824 +01825 <span class="comment">// Count parent</span> +01826 <a class="code" href="a04558.html#a15">uint</a> dfnCount = dfn->countParentDfn (); +01827 +01828 <span class="comment">// Array of Dfn</span> +01829 std::vector<const CFormDfn*> dfnArray; +01830 dfnArray.reserve (dfnCount); +01831 dfn->getParentDfn (dfnArray); +01832 +01833 <span class="comment">// For each Dfn</span> +01834 <a class="code" href="a04558.html#a15">uint</a> dfnId; +01835 <a class="code" href="a04558.html#a15">uint</a> elmIndex=0; +01836 <span class="keywordflow">for</span> (dfnId=0; dfnId<dfnCount; dfnId++) +01837 { +01838 <span class="comment">// Lookup for the name in the DFN</span> +01839 <a class="code" href="a04558.html#a15">uint</a> elm; +01840 <span class="keywordflow">for</span> (elm=0; elm<dfnArray[dfnId]->Entries.size(); elm++) +01841 { +01842 <span class="comment">// Found ?</span> +01843 <span class="comment">// bool found = false;</span> +01844 +01845 <span class="comment">// Read the struct</span> +01846 xmlNodePtr child = NULL; +01847 +01848 <span class="comment">// Node can be NULL</span> +01849 <span class="keywordflow">if</span> (node) +01850 child = node->children; +01851 +01852 <span class="keywordflow">while</span> (child) +01853 { +01854 <span class="comment">// Good node ?</span> +01855 <span class="keyword">const</span> <span class="keywordtype">char</span> *name = (<span class="keyword">const</span> <span class="keywordtype">char</span>*)xmlGetProp (child, (xmlChar*)<span class="stringliteral">"Name"</span>); +01856 <span class="keywordflow">if</span> (name && (dfnArray[dfnId]->Entries[elm].getName () == name) ) +01857 { +01858 <span class="comment">// Type</span> +01859 <span class="keywordtype">bool</span> atom=<span class="keyword">false</span>; +01860 <span class="keywordtype">bool</span> array=<span class="keyword">false</span>; +01861 <span class="keywordtype">bool</span> _struct=<span class="keyword">false</span>; +01862 <span class="keywordtype">bool</span> vStruct=<span class="keyword">false</span>; +01863 +01864 <span class="comment">// Is an atom ?</span> +01865 <span class="keywordflow">if</span> (strcmp ((<span class="keyword">const</span> <span class="keywordtype">char</span>*)child->name, <span class="stringliteral">"ATOM"</span>) == 0) +01866 { +01867 atom = <span class="keyword">true</span>; +01868 } +01869 <span class="comment">// Is a struct ?</span> +01870 <span class="keywordflow">else</span> <span class="keywordflow">if</span> (strcmp ((<span class="keyword">const</span> <span class="keywordtype">char</span>*)child->name, <span class="stringliteral">"STRUCT"</span>) == 0) +01871 { +01872 _struct = <span class="keyword">true</span>; +01873 } +01874 <span class="comment">// Is a struct ?</span> +01875 <span class="keywordflow">else</span> <span class="keywordflow">if</span> (strcmp ((<span class="keyword">const</span> <span class="keywordtype">char</span>*)child->name, <span class="stringliteral">"VSTRUCT"</span>) == 0) +01876 { +01877 vStruct = <span class="keyword">true</span>; +01878 } +01879 <span class="comment">// Is an array ?</span> +01880 <span class="keywordflow">else</span> <span class="keywordflow">if</span> (strcmp ((<span class="keyword">const</span> <span class="keywordtype">char</span>*)child->name, <span class="stringliteral">"ARRAY"</span>) == 0) +01881 { +01882 array = <span class="keyword">true</span>; +01883 } +01884 +01885 <span class="comment">// Continue ?</span> +01886 <span class="keywordflow">if</span> (atom || _struct || vStruct || array) +01887 { +01888 <span class="comment">// Same type ?</span> +01889 <span class="keywordflow">if</span> ( +01890 (atom && (dfnArray[dfnId]->Entries[elm].getType ()==UFormDfn::EntryType) && (!dfnArray[dfnId]->Entries[elm].getArrayFlag ()) ) || +01891 (array && dfnArray[dfnId]->Entries[elm].getArrayFlag () && ( (dfnArray[dfnId]->Entries[elm].getType () == UFormDfn::EntryType) || (dfnArray[dfnId]->Entries[elm].getType () == UFormDfn::EntryDfn) ) ) || +01892 (_struct && (dfnArray[dfnId]->Entries[elm].getType () == UFormDfn::EntryDfn) && (!dfnArray[dfnId]->Entries[elm].getArrayFlag ()) ) || +01893 (vStruct && (dfnArray[dfnId]->Entries[elm].getType () == UFormDfn::EntryVirtualDfn) && (!dfnArray[dfnId]->Entries[elm].getArrayFlag ()) ) +01894 ) +01895 { +01896 <span class="comment">// Ok keep it</span> +01897 xmlFree((<span class="keywordtype">void</span>*) name); +01898 <span class="keywordflow">break</span>; +01899 } +01900 <span class="keywordflow">else</span> +01901 { +01902 <span class="comment">// Make a warning message</span> +01903 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa85">warning</a> (<span class="keyword">false</span>, <span class="stringliteral">"read"</span>, <span class="stringliteral">"In block line %d, node (%s) type in DFN have changed."</span>, +01904 (<span class="keywordtype">int</span>)child->content, child->name); +01905 } +01906 } +01907 <span class="keywordflow">else</span> +01908 { +01909 <span class="keywordflow">if</span> (name) +01910 { +01911 <span class="comment">// Delete the value</span> +01912 xmlFree ((<span class="keywordtype">void</span>*)name); +01913 } +01914 +01915 <span class="comment">// Throw exception</span> +01916 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa85">warning</a> (<span class="keyword">true</span>, <span class="stringliteral">"read"</span>, <span class="stringliteral">"XML Syntax error in block line %d, node (%s) name should be STRUCT, ATOM or ARRAY."</span>, +01917 (<span class="keywordtype">int</span>)child->content, child->name); +01918 } +01919 } +01920 +01921 <span class="keywordflow">if</span> (name) +01922 { +01923 <span class="comment">// Delete the value</span> +01924 xmlFree ((<span class="keywordtype">void</span>*)name); +01925 } +01926 +01927 <span class="comment">// Next child</span> +01928 child = child->next; +01929 } +01930 +01931 <span class="comment">// Found ?</span> +01932 <span class="keywordflow">if</span> (child) +01933 { +01934 <span class="comment">// Create a new element</span> +01935 <span class="keywordflow">if</span> (dfnArray[dfnId]->Entries[elm].getArrayFlag ()) +01936 { +01937 <span class="comment">// Array of type</span> +01938 CFormElmArray *newElm = NULL; +01939 <span class="keywordflow">if</span> (dfnArray[dfnId]->Entries[elm].getType () == UFormDfn::EntryType) +01940 { +01941 <span class="comment">// Load the new element</span> +01942 newElm = <span class="keyword">new</span> CFormElmArray (form, NULL, dfnArray[dfnId]->Entries[elm].getTypePtr (), <span class="keyword">this</span>, dfnArray[dfnId], elm); +01943 } +01944 <span class="comment">// Array of struct</span> +01945 <span class="keywordflow">else</span> <span class="keywordflow">if</span> (dfnArray[dfnId]->Entries[elm].getType () == UFormDfn::EntryDfn) +01946 { +01947 newElm = <span class="keyword">new</span> CFormElmArray (form, dfnArray[dfnId]->Entries[elm].getDfnPtr (), NULL, <span class="keyword">this</span>, dfnArray[dfnId], elm); +01948 } +01949 +01950 <span class="comment">// Should be created</span> +01951 <a class="code" href="a04199.html#a6">nlassert</a> (newElm); +01952 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructo1">Elements</a>[elmIndex].Element = newElm; +01953 newElm->read (child, loader, form); +01954 } +01955 <span class="keywordflow">else</span> <span class="keywordflow">if</span> (dfnArray[dfnId]->Entries[elm].getType () == UFormDfn::EntryType) +01956 { +01957 <span class="comment">// Load the new element</span> +01958 CFormElmAtom *newElm = <span class="keyword">new</span> CFormElmAtom (form, <span class="keyword">this</span>, dfnArray[dfnId], elm); +01959 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructo1">Elements</a>[elmIndex].Element = newElm; +01960 newElm->read (child, loader, dfnArray[dfnId]->Entries[elm].getTypePtr (), form); +01961 } +01962 <span class="keywordflow">else</span> <span class="keywordflow">if</span> (dfnArray[dfnId]->Entries[elm].getType () == UFormDfn::EntryDfn) +01963 { +01964 <span class="comment">// Load the new element</span> +01965 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa3">CFormElmStruct</a> *newElm = <span class="keyword">new</span> <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa3">CFormElmStruct</a> (form, <span class="keyword">this</span>, dfnArray[dfnId], elm); +01966 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructo1">Elements</a>[elmIndex].Element = newElm; +01967 newElm->read (child, loader, dfnArray[dfnId]->Entries[elm].getDfnPtr (), form); +01968 } +01969 <span class="keywordflow">else</span> <span class="comment">// if dfnArray[dfnId]->Entries[elm].getType () == CFormDfn::CEntry::EntryVirtualDfn)</span> +01970 { +01971 <span class="comment">// Should be a struct</span> +01972 <a class="code" href="a04199.html#a6">nlassert</a> (dfnArray[dfnId]->Entries[elm].getType () == UFormDfn::EntryVirtualDfn); +01973 +01974 <span class="comment">// Load the new element</span> +01975 CFormElmVirtualStruct *newElm = <span class="keyword">new</span> CFormElmVirtualStruct (form, <span class="keyword">this</span>, dfnArray[dfnId], elm); +01976 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructo1">Elements</a>[elmIndex].Element = newElm; +01977 newElm->read (child, loader, form); +01978 } +01979 } +01980 <span class="keywordflow">else</span> +01981 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructo1">Elements</a>[elmIndex].Element = NULL; +01982 +01983 elmIndex++; +01984 } +01985 } +01986 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa74" doxytag="NLGEORGES::CFormElmStruct::setValueByName" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::setValueByName </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a03337.html">NLMISC::CRGBA</a> </td> + <td class="mdname" nowrap> <em>value</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const char * </td> + <td class="mdname" nowrap> <em>name</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>bool * </td> + <td class="mdname" nowrap> <em>created</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"><code> [virtual, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Implements <a class="el" href="a02551.html#NLGEORGES_1_1UFormElma49">NLGEORGES::UFormElm</a>. +<p> +Definition at line <a class="el" href="a05728.html#l01647">1647</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05728.html#l01532">NLGEORGES::CFormElm::setValueByName()</a>, <a class="el" href="a05586.html#l00161">NLMISC::smprintf()</a>, and <a class="el" href="a05646.html#l01132">value</a>. +<p> +<div class="fragment"><pre>01648 { +01649 <span class="keywordtype">char</span> tmp[512]; +01650 <a class="code" href="a05378.html#a259">smprintf</a> (tmp, 512, <span class="stringliteral">"%d,%d,%d"</span>, <a class="code" href="a04223.html#a658">value</a>.R, <a class="code" href="a04223.html#a658">value</a>.G, <a class="code" href="a04223.html#a658">value</a>.B); +01651 <span class="keywordflow">return</span> <a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa84">setValueByName</a> (tmp, name, created); +01652 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa75" doxytag="NLGEORGES::CFormElmStruct::setValueByName" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::setValueByName </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">bool </td> + <td class="mdname" nowrap> <em>value</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const char * </td> + <td class="mdname" nowrap> <em>name</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>bool * </td> + <td class="mdname" nowrap> <em>created</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"><code> [virtual, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Implements <a class="el" href="a02551.html#NLGEORGES_1_1UFormElma50">NLGEORGES::UFormElm</a>. +<p> +Definition at line <a class="el" href="a05728.html#l01640">1640</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05728.html#l01532">NLGEORGES::CFormElm::setValueByName()</a>, <a class="el" href="a06229.html#l02652">NLMISC::toString()</a>, and <a class="el" href="a05646.html#l01132">value</a>. +<p> +<div class="fragment"><pre>01641 { +01642 <span class="keywordflow">return</span> <a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa84">setValueByName</a> (toString (value).c_str (), name, created); +01643 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa76" doxytag="NLGEORGES::CFormElmStruct::setValueByName" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::setValueByName </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">double </td> + <td class="mdname" nowrap> <em>value</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const char * </td> + <td class="mdname" nowrap> <em>name</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>bool * </td> + <td class="mdname" nowrap> <em>created</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"><code> [virtual, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Implements <a class="el" href="a02551.html#NLGEORGES_1_1UFormElma51">NLGEORGES::UFormElm</a>. +<p> +Definition at line <a class="el" href="a05728.html#l01633">1633</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05728.html#l01532">NLGEORGES::CFormElm::setValueByName()</a>, <a class="el" href="a06229.html#l02652">NLMISC::toString()</a>, and <a class="el" href="a05646.html#l01132">value</a>. +<p> +<div class="fragment"><pre>01634 { +01635 <span class="keywordflow">return</span> <a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa84">setValueByName</a> (toString (value).c_str (), name, created); +01636 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa77" doxytag="NLGEORGES::CFormElmStruct::setValueByName" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::setValueByName </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">float </td> + <td class="mdname" nowrap> <em>value</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const char * </td> + <td class="mdname" nowrap> <em>name</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>bool * </td> + <td class="mdname" nowrap> <em>created</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"><code> [virtual, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Implements <a class="el" href="a02551.html#NLGEORGES_1_1UFormElma52">NLGEORGES::UFormElm</a>. +<p> +Definition at line <a class="el" href="a05728.html#l01626">1626</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05728.html#l01532">NLGEORGES::CFormElm::setValueByName()</a>, <a class="el" href="a06229.html#l02652">NLMISC::toString()</a>, and <a class="el" href="a05646.html#l01132">value</a>. +<p> +<div class="fragment"><pre>01627 { +01628 <span class="keywordflow">return</span> <a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa84">setValueByName</a> (toString (value).c_str (), name, created); +01629 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa78" doxytag="NLGEORGES::CFormElmStruct::setValueByName" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::setValueByName </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a11">uint32</a> </td> + <td class="mdname" nowrap> <em>value</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const char * </td> + <td class="mdname" nowrap> <em>name</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>bool * </td> + <td class="mdname" nowrap> <em>created</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"><code> [virtual, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Implements <a class="el" href="a02551.html#NLGEORGES_1_1UFormElma53">NLGEORGES::UFormElm</a>. +<p> +Definition at line <a class="el" href="a05728.html#l01619">1619</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05728.html#l01532">NLGEORGES::CFormElm::setValueByName()</a>, <a class="el" href="a06229.html#l02652">NLMISC::toString()</a>, <a class="el" href="a05981.html#l00100">uint32</a>, and <a class="el" href="a05646.html#l01132">value</a>. +<p> +<div class="fragment"><pre>01620 { +01621 <span class="keywordflow">return</span> <a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa84">setValueByName</a> (toString (value).c_str (), name, created); +01622 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa79" doxytag="NLGEORGES::CFormElmStruct::setValueByName" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::setValueByName </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a10">sint32</a> </td> + <td class="mdname" nowrap> <em>value</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const char * </td> + <td class="mdname" nowrap> <em>name</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>bool * </td> + <td class="mdname" nowrap> <em>created</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"><code> [virtual, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Implements <a class="el" href="a02551.html#NLGEORGES_1_1UFormElma54">NLGEORGES::UFormElm</a>. +<p> +Definition at line <a class="el" href="a05728.html#l01612">1612</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05728.html#l01532">NLGEORGES::CFormElm::setValueByName()</a>, <a class="el" href="a05981.html#l00099">sint32</a>, <a class="el" href="a06229.html#l02652">NLMISC::toString()</a>, and <a class="el" href="a05646.html#l01132">value</a>. +<p> +<div class="fragment"><pre>01613 { +01614 <span class="keywordflow">return</span> <a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa84">setValueByName</a> (toString (value).c_str (), name, created); +01615 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa80" doxytag="NLGEORGES::CFormElmStruct::setValueByName" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::setValueByName </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a9">uint16</a> </td> + <td class="mdname" nowrap> <em>value</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const char * </td> + <td class="mdname" nowrap> <em>name</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>bool * </td> + <td class="mdname" nowrap> <em>created</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"><code> [virtual, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Implements <a class="el" href="a02551.html#NLGEORGES_1_1UFormElma55">NLGEORGES::UFormElm</a>. +<p> +Definition at line <a class="el" href="a05728.html#l01605">1605</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05728.html#l01532">NLGEORGES::CFormElm::setValueByName()</a>, <a class="el" href="a06229.html#l02652">NLMISC::toString()</a>, <a class="el" href="a05981.html#l00098">uint16</a>, and <a class="el" href="a05646.html#l01132">value</a>. +<p> +<div class="fragment"><pre>01606 { +01607 <span class="keywordflow">return</span> <a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa84">setValueByName</a> (toString (value).c_str (), name, created); +01608 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa81" doxytag="NLGEORGES::CFormElmStruct::setValueByName" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::setValueByName </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a8">sint16</a> </td> + <td class="mdname" nowrap> <em>value</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const char * </td> + <td class="mdname" nowrap> <em>name</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>bool * </td> + <td class="mdname" nowrap> <em>created</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"><code> [virtual, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Implements <a class="el" href="a02551.html#NLGEORGES_1_1UFormElma56">NLGEORGES::UFormElm</a>. +<p> +Definition at line <a class="el" href="a05728.html#l01598">1598</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05728.html#l01532">NLGEORGES::CFormElm::setValueByName()</a>, <a class="el" href="a05981.html#l00097">sint16</a>, <a class="el" href="a06229.html#l02652">NLMISC::toString()</a>, and <a class="el" href="a05646.html#l01132">value</a>. +<p> +<div class="fragment"><pre>01599 { +01600 <span class="keywordflow">return</span> <a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa84">setValueByName</a> (toString (value).c_str (), name, created); +01601 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa82" doxytag="NLGEORGES::CFormElmStruct::setValueByName" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::setValueByName </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a7">uint8</a> </td> + <td class="mdname" nowrap> <em>value</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const char * </td> + <td class="mdname" nowrap> <em>name</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>bool * </td> + <td class="mdname" nowrap> <em>created</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"><code> [virtual, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Implements <a class="el" href="a02551.html#NLGEORGES_1_1UFormElma57">NLGEORGES::UFormElm</a>. +<p> +Definition at line <a class="el" href="a05728.html#l01591">1591</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05728.html#l01532">NLGEORGES::CFormElm::setValueByName()</a>, <a class="el" href="a06229.html#l02652">NLMISC::toString()</a>, <a class="el" href="a05981.html#l00096">uint8</a>, and <a class="el" href="a05646.html#l01132">value</a>. +<p> +<div class="fragment"><pre>01592 { +01593 <span class="keywordflow">return</span> <a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa84">setValueByName</a> (toString (value).c_str (), name, created); +01594 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa83" doxytag="NLGEORGES::CFormElmStruct::setValueByName" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::setValueByName </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a6">sint8</a> </td> + <td class="mdname" nowrap> <em>value</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const char * </td> + <td class="mdname" nowrap> <em>name</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>bool * </td> + <td class="mdname" nowrap> <em>created</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"><code> [virtual, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Implements <a class="el" href="a02551.html#NLGEORGES_1_1UFormElma58">NLGEORGES::UFormElm</a>. +<p> +Definition at line <a class="el" href="a05728.html#l01584">1584</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05728.html#l01532">NLGEORGES::CFormElm::setValueByName()</a>, <a class="el" href="a05981.html#l00095">sint8</a>, <a class="el" href="a06229.html#l02652">NLMISC::toString()</a>, and <a class="el" href="a05646.html#l01132">value</a>. +<p> +<div class="fragment"><pre>01585 { +01586 <span class="keywordflow">return</span> <a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa84">setValueByName</a> (toString (value).c_str (), name, created); +01587 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa84" doxytag="NLGEORGES::CFormElmStruct::setValueByName" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NLGEORGES::CFormElm::setValueByName </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">const char * </td> + <td class="mdname" nowrap> <em>value</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const char * </td> + <td class="mdname" nowrap> <em>name</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>bool * </td> + <td class="mdname" nowrap> <em>created</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"><code> [virtual, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Set a form value with its name. If the node doesn't exist, it is created.<p> +<dl compact><dt><b>Parameters:</b></dt><dd> + <table border="0" cellspacing="2" cellpadding="0"> + <tr><td valign=top><em>value</em> </td><td>is a reference on the value to set in the form. </td></tr> + <tr><td valign=top><em>name</em> </td><td>is the form name of the value to set or create. </td></tr> + <tr><td valign=top><em>where</em> </td><td>is a pointer on the information flag of the value. If Where is not NULL, it is filled with the position where the value has been found. </td></tr> + <tr><td valign=top><em>created</em> </td><td>is a pointer on the creatation flag. If created is not NULL, it is filled with true if the value has been created, false it the value has been filled. </td></tr> + </table> +</dl> +<dl compact><dt><b>Returns:</b></dt><dd>true if the value has been set, false if the value has not been found or hasn't been created.</dd></dl> + +<p> +Implements <a class="el" href="a02551.html#NLGEORGES_1_1UFormElma59">NLGEORGES::UFormElm</a>. +<p> +Definition at line <a class="el" href="a05728.html#l01532">1532</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05728.html#l00596">NLGEORGES::CFormElm::createNodeByName()</a>, <a class="el" href="a05622.html#l00290">nlassert</a>, <a class="el" href="a05728.html#l03036">NLGEORGES::CFormElmAtom::setValue()</a>, <a class="el" href="a05646.html#l00244">type</a>, <a class="el" href="a05981.html#l00105">uint</a>, <a class="el" href="a05646.html#l01132">value</a>, and <a class="el" href="a05728.html#l01656">NLGEORGES::CFormElm::warning()</a>. +<p> +Referenced by <a class="el" href="a05728.html#l01584">NLGEORGES::CFormElm::setValueByName()</a>. +<p> +<div class="fragment"><pre>01533 { +01534 <span class="comment">// The parent Dfn</span> +01535 <span class="keyword">const</span> CFormDfn *parentDfn; +01536 <span class="keyword">const</span> CFormDfn *nodeDfn; +01537 <span class="keyword">const</span> CType *nodeType; +01538 <a class="code" href="a02550.html#NLGEORGES_1_1CFormElma2">CFormElm</a> *node; +01539 <a class="code" href="a04558.html#a15">uint</a> indexDfn; +01540 <span class="keywordtype">bool</span> array; +01541 <span class="keywordtype">bool</span> _created; +01542 UFormDfn::TEntryType <a class="code" href="a04223.html#a581">type</a>; +01543 +01544 <span class="comment">// Search for the node</span> +01545 <span class="keywordflow">if</span> (<a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructa15">createNodeByName</a> (name, &parentDfn, indexDfn, &nodeDfn, &nodeType, &node, type, array, _created)) +01546 { +01547 <span class="comment">// Is this a type ?</span> +01548 <span class="keywordflow">if</span> (<a class="code" href="a04223.html#a581">type</a> == UFormDfn::EntryType) +01549 { +01550 <span class="comment">// The atom</span> +01551 CFormElmAtom *atom = node ? safe_cast<CFormElmAtom*> (node) : NULL; +01552 +01553 <span class="comment">// Evale</span> +01554 <a class="code" href="a04199.html#a6">nlassert</a> (nodeType); +01555 atom->setValue (value); +01556 +01557 <span class="comment">// Created flag</span> +01558 <span class="keywordflow">if</span> (created) +01559 *created = _created; +01560 <span class="keywordflow">return</span> <span class="keyword">true</span>; +01561 } +01562 <span class="keywordflow">else</span> +01563 { +01564 <span class="comment">// Error message</span> +01565 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa85">warning</a> (<span class="keyword">false</span>, <span class="stringliteral">"setValueByName"</span>, <span class="stringliteral">"The node (%s) is not an atom element. Can't set the value."</span>, name); +01566 } +01567 } +01568 <span class="keywordflow">else</span> +01569 { +01570 <span class="comment">// Error message</span> +01571 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa85">warning</a> (<span class="keyword">false</span>, <span class="stringliteral">"setValueByName"</span>, <span class="stringliteral">"Can't created / set the node (%s)."</span>, name); +01572 +01573 <span class="comment">// Created flag</span> +01574 <span class="keywordflow">if</span> (created) +01575 *created = <span class="keyword">false</span>; +01576 } +01577 +01578 <span class="comment">// Error</span> +01579 <span class="keywordflow">return</span> <span class="keyword">false</span>; +01580 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructe0" doxytag="NLGEORGES::CFormElmStruct::tokenize" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> const char * NLGEORGES::CFormElm::tokenize </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">const char * </td> + <td class="mdname" nowrap> <em>name</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>std::string & </td> + <td class="mdname" nowrap> <em>str</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a04558.html#a15">uint</a> & </td> + <td class="mdname" nowrap> <em>errorIndex</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a04558.html#a15">uint</a> & </td> + <td class="mdname" nowrap> <em>code</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"><code> [static, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05728.html#l01482">1482</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a02550.html#NLGEORGES_1_1CFormElmy4NLGEORGES_1_1CFormElmy0">NLGEORGES::CFormElm::TokenArrayBegin</a>, <a class="el" href="a02550.html#NLGEORGES_1_1CFormElmy4NLGEORGES_1_1CFormElmy1">NLGEORGES::CFormElm::TokenArrayEnd</a>, <a class="el" href="a02550.html#NLGEORGES_1_1CFormElmy4NLGEORGES_1_1CFormElmy2">NLGEORGES::CFormElm::TokenPoint</a>, <a class="el" href="a02550.html#NLGEORGES_1_1CFormElmy4NLGEORGES_1_1CFormElmy3">NLGEORGES::CFormElm::TokenString</a>, and <a class="el" href="a05981.html#l00105">uint</a>. +<p> +Referenced by <a class="el" href="a05728.html#l00764">NLGEORGES::CFormElm::getIternalNodeByName()</a>. +<p> +<div class="fragment"><pre>01483 { +01484 <span class="keywordflow">if</span> (*name == 0) +01485 { +01486 <span class="keywordflow">return</span> NULL; +01487 } +01488 +01489 <span class="keywordflow">if</span> (*name == <span class="charliteral">'['</span>) +01490 { +01491 code = TokenArrayBegin; +01492 str = <span class="stringliteral">"["</span>; +01493 <span class="keywordflow">return</span> name+1; +01494 } +01495 +01496 <span class="keywordflow">if</span> (*name == <span class="charliteral">']'</span>) +01497 { +01498 code = TokenArrayEnd; +01499 str = <span class="stringliteral">"]"</span>; +01500 <span class="keywordflow">return</span> name+1; +01501 } +01502 +01503 <span class="keywordflow">if</span> (*name == <span class="charliteral">'.'</span>) +01504 { +01505 code = TokenPoint; +01506 str = <span class="stringliteral">"."</span>; +01507 <span class="keywordflow">return</span> name+1; +01508 } +01509 +01510 str = <span class="stringliteral">""</span>; +01511 <span class="keywordflow">while</span> ( (*name != <span class="charliteral">'.'</span>) && (*name != <span class="charliteral">'['</span>) && (*name != <span class="charliteral">']'</span>) && (*name != 0) ) +01512 { +01513 <span class="comment">// Add a char</span> +01514 str += *name; +01515 name++; +01516 } +01517 +01518 code = TokenString; +01519 <span class="keywordflow">return</span> name; +01520 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructa85" doxytag="NLGEORGES::CFormElmStruct::unlink" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> void NLGEORGES::CFormElmStruct::unlink </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a02550.html">CFormElm</a> * </td> + <td class="mdname1" valign="top" nowrap> <em>child</em> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap><code> [virtual]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Unlink a child +<p> +Reimplemented from <a class="el" href="a02550.html#NLGEORGES_1_1CFormElmAtomb0">NLGEORGES::CFormElm</a>. +<p> +Definition at line <a class="el" href="a05728.html#l02041">2041</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05622.html#l00290">nlassert</a>, and <a class="el" href="a05981.html#l00105">uint</a>. +<p> +<div class="fragment"><pre>02042 { +02043 <a class="code" href="a04558.html#a15">uint</a> i; +02044 <span class="keywordflow">for</span> (i=0; i<<a class="code" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructo1">Elements</a>.size (); i++) +02045 { +02046 <span class="keywordflow">if</span> (<a class="code" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructo1">Elements</a>[i].Element == child) +02047 { +02048 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructo1">Elements</a>[i].Element = NULL; +02049 <span class="keywordflow">break</span>; +02050 } +02051 } +02052 +02053 <span class="comment">// Element not found!</span> +02054 <a class="code" href="a04199.html#a6">nlassert</a> (i != <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructo1">Elements</a>.size ()); +02055 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructf1" doxytag="NLGEORGES::CFormElmStruct::warning" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> void NLGEORGES::CFormElm::warning </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">bool </td> + <td class="mdname" nowrap> <em>exception</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const char * </td> + <td class="mdname" nowrap> <em>formName</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const char * </td> + <td class="mdname" nowrap> <em>formFileName</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const char * </td> + <td class="mdname" nowrap> <em>function</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const char * </td> + <td class="mdname" nowrap> <em>format</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>... </td> + <td class="mdname" nowrap></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"><code> [static, protected, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05728.html#l01656">1656</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05646.html#l00649">buffer</a>, <a class="el" href="a05646.html#l01016">format</a>, and <a class="el" href="a05724.html#l00045">NLGEORGES::warning()</a>. +<p> +Referenced by <a class="el" href="a05729.html#l00477">NLGEORGES::CFormElm::convertValue()</a>, <a class="el" href="a05728.html#l00068">NLGEORGES::CFormElm::getArrayNode()</a>, <a class="el" href="a05728.html#l00084">NLGEORGES::CFormElm::getArrayNodeName()</a>, <a class="el" href="a05728.html#l00060">NLGEORGES::CFormElm::getArraySize()</a>, <a class="el" href="a05728.html#l00092">NLGEORGES::CFormElm::getArrayValue()</a>, <a class="el" href="a05728.html#l00764">NLGEORGES::CFormElm::getIternalNodeByName()</a>, <a class="el" href="a05728.html#l00217">NLGEORGES::CFormElm::getStructNode()</a>, <a class="el" href="a05728.html#l00209">NLGEORGES::CFormElm::getStructNodeName()</a>, <a class="el" href="a05728.html#l00201">NLGEORGES::CFormElm::getStructSize()</a>, <a class="el" href="a05728.html#l00240">NLGEORGES::CFormElm::getValue()</a>, <a class="el" href="a05728.html#l00406">NLGEORGES::CFormElm::getValueByName()</a>, <a class="el" href="a05728.html#l01532">NLGEORGES::CFormElm::setValueByName()</a>, and <a class="el" href="a05728.html#l01671">NLGEORGES::CFormElm::warning()</a>. +<p> +<div class="fragment"><pre>01657 { +01658 <span class="comment">// Make a buffer string</span> +01659 va_list args; +01660 va_start( args, format ); +01661 <span class="keywordtype">char</span> <a class="code" href="a04223.html#a589">buffer</a>[1024]; +01662 vsnprintf( buffer, 1024, format, args ); +01663 va_end( args ); +01664 +01665 <span class="comment">// Set the warning</span> +01666 <a class="code" href="a05374.html#a0">NLGEORGES::warning</a> (exception, <span class="stringliteral">"(CFormElm::%s) on node (%s) in form (%s) : %s"</span>, function, formName, formFileName, buffer); +01667 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmStructa85" doxytag="NLGEORGES::CFormElmStruct::warning" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> void NLGEORGES::CFormElmStruct::warning </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">bool </td> + <td class="mdname" nowrap> <em>exception</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const char * </td> + <td class="mdname" nowrap> <em>function</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const char * </td> + <td class="mdname" nowrap> <em>format</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>... </td> + <td class="mdname" nowrap></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"> const<code> [virtual]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Reimplemented from <a class="el" href="a02550.html#NLGEORGES_1_1CFormElmb1">NLGEORGES::CFormElm</a>. +<p> +Reimplemented in <a class="el" href="a02557.html#NLGEORGES_1_1CFormElmVirtualStructa86">NLGEORGES::CFormElmVirtualStruct</a>. +<p> +Definition at line <a class="el" href="a05728.html#l02099">2099</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05646.html#l00649">buffer</a>, <a class="el" href="a05646.html#l01016">format</a>, <a class="el" href="a05724.html#l00351">NLGEORGES::CForm::getFilename()</a>, <a class="el" href="a05728.html#l02059">getFormName()</a>, and <a class="el" href="a05724.html#l00045">NLGEORGES::warning()</a>. +<p> +Referenced by <a class="el" href="a05728.html#l02059">getFormName()</a>, <a class="el" href="a05728.html#l01746">getStructNode()</a>, <a class="el" href="a05728.html#l01730">getStructNodeName()</a>, and <a class="el" href="a05728.html#l01817">read()</a>. +<p> +<div class="fragment"><pre>02100 { +02101 <span class="comment">// Make a buffer string</span> +02102 va_list args; +02103 va_start( args, format ); +02104 <span class="keywordtype">char</span> <a class="code" href="a04223.html#a589">buffer</a>[1024]; +02105 vsnprintf( buffer, 1024, format, args ); +02106 va_end( args ); +02107 +02108 <span class="comment">// Set the warning</span> +02109 string formName; +02110 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructa35">getFormName</a> (formName, NULL); +02111 <a class="code" href="a05374.html#a0">NLGEORGES::warning</a> (exception, <span class="stringliteral">"(CFormElmStruct::%s) on node (%s) in form (%s) : %s"</span>, function, formName.c_str (), <a class="code" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructp0">Form</a>->getFilename ().c_str (), <a class="code" href="a04223.html#a589">buffer</a>); +02112 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmStructa86" doxytag="NLGEORGES::CFormElmStruct::write" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> xmlNodePtr NLGEORGES::CFormElmStruct::write </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">xmlNodePtr </td> + <td class="mdname" nowrap> <em>node</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const <a class="el" href="a02544.html">CForm</a> * </td> + <td class="mdname" nowrap> <em>form</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const char * </td> + <td class="mdname" nowrap> <em>structName</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>bool </td> + <td class="mdname" nowrap> <em>forceWrite</em> = false</td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"> const<code> [virtual]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Implements <a class="el" href="a02550.html#NLGEORGES_1_1CFormElma82">NLGEORGES::CFormElm</a>. +<p> +Reimplemented in <a class="el" href="a02557.html#NLGEORGES_1_1CFormElmVirtualStructa87">NLGEORGES::CFormElmVirtualStruct</a>. +<p> +Definition at line <a class="el" href="a05728.html#l01785">1785</a> of file <a class="el" href="a05728.html">form_elm.cpp</a>. +<p> +References <a class="el" href="a05728.html#l01990">isUsed()</a>, and <a class="el" href="a05981.html#l00105">uint</a>. +<p> +Referenced by <a class="el" href="a05724.html#l00116">NLGEORGES::CForm::write()</a>. +<p> +<div class="fragment"><pre>01786 { +01787 <span class="comment">// Is used ?</span> +01788 <span class="keywordflow">if</span> (<a class="code" href="a02555.html#NLGEORGES_1_1CFormElmStructa70">isUsed</a> (form) || forceWrite) +01789 { +01790 <span class="comment">// *** Header</span> +01791 xmlNodePtr node = xmlNewChild ( root, NULL, (<span class="keyword">const</span> xmlChar*)<span class="stringliteral">"STRUCT"</span>, NULL); +01792 +01793 <span class="comment">// Element name</span> +01794 <span class="keywordflow">if</span> (structName != NULL) +01795 { +01796 <span class="comment">// Struct name</span> +01797 xmlSetProp (node, (<span class="keyword">const</span> xmlChar*)<span class="stringliteral">"Name"</span>, (<span class="keyword">const</span> xmlChar*)structName); +01798 } +01799 +01800 <span class="comment">// For each elements of the structure</span> +01801 <a class="code" href="a04558.html#a15">uint</a> elm; +01802 <span class="keywordflow">for</span> (elm=0; elm<<a class="code" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructo1">Elements</a>.size(); elm++) +01803 { +01804 <span class="comment">// Create a node if it exist</span> +01805 <span class="keywordflow">if</span> (<a class="code" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructo1">Elements</a>[elm].Element) +01806 <a class="code" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructo1">Elements</a>[elm].Element->write (node, form, Elements[elm].Name.c_str()); +01807 } +01808 +01809 <span class="comment">// Return the new node</span> +01810 <span class="keywordflow">return</span> node; +01811 } +01812 <span class="keywordflow">return</span> NULL; +01813 } +</pre></div> </td> + </tr> +</table> +<hr><h2>Field Documentation</h2> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructo1" doxytag="NLGEORGES::CFormElmStruct::Elements" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> std::vector<<a class="el" href="a02556.html">CFormElmStructElm</a>> <a class="el" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructo1">NLGEORGES::CFormElmStruct::Elements</a> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05729.html#l00318">318</a> of file <a class="el" href="a05729.html">form_elm.h</a>. +<p> +Referenced by <a class="el" href="a05728.html#l00764">NLGEORGES::CFormElm::getIternalNodeByName()</a>. </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructp0" doxytag="NLGEORGES::CFormElmStruct::Form" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> <a class="el" href="a02544.html">CForm</a>* <a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructp0">NLGEORGES::CFormElm::Form</a><code> [protected, inherited]</code> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05729.html#l00231">231</a> of file <a class="el" href="a05729.html">form_elm.h</a>. +<p> +Referenced by <a class="el" href="a05728.html#l00719">NLGEORGES::CFormElm::arrayDeleteNodeByName()</a>, <a class="el" href="a05728.html#l00645">NLGEORGES::CFormElm::arrayInsertNodeByName()</a>, <a class="el" href="a05728.html#l00328">NLGEORGES::CFormElm::CFormElm()</a>, <a class="el" href="a05728.html#l00596">NLGEORGES::CFormElm::createNodeByName()</a>, <a class="el" href="a05728.html#l00612">NLGEORGES::CFormElm::deleteNodeByName()</a>, <a class="el" href="a05728.html#l00353">NLGEORGES::CFormElm::getForm()</a>, <a class="el" href="a05728.html#l00373">NLGEORGES::CFormElm::getNodeByName()</a>, <a class="el" href="a05728.html#l00406">NLGEORGES::CFormElm::getValueByName()</a>, and <a class="el" href="a05728.html#l00346">NLGEORGES::CFormElm::isUsed()</a>. </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructo2" doxytag="NLGEORGES::CFormElmStruct::FormDfn" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> <a class="el" href="a03408.html">NLMISC::CSmartPtr</a><<a class="el" href="a02546.html">CFormDfn</a>> <a class="el" href="a02555.html#NLGEORGES_1_1CFormElmVirtualStructo2">NLGEORGES::CFormElmStruct::FormDfn</a> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05729.html#l00277">277</a> of file <a class="el" href="a05729.html">form_elm.h</a>. +<p> +Referenced by <a class="el" href="a05728.html#l02002">build()</a>, <a class="el" href="a05728.html#l01687">CFormElmStruct()</a>, <a class="el" href="a05728.html#l02116">getDependencies()</a>, <a class="el" href="a05728.html#l00764">NLGEORGES::CFormElm::getIternalNodeByName()</a>, <a class="el" href="a05728.html#l01762">getStructDfn()</a>, <a class="el" href="a05724.html#l00283">NLGEORGES::CForm::insertParent()</a>, and <a class="el" href="a05728.html#l01817">read()</a>. </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructp1" doxytag="NLGEORGES::CFormElmStruct::ParentDfn" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> const <a class="el" href="a02546.html">CFormDfn</a>* <a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructp1">NLGEORGES::CFormElm::ParentDfn</a><code> [protected, inherited]</code> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05729.html#l00237">237</a> of file <a class="el" href="a05729.html">form_elm.h</a>. +<p> +Referenced by <a class="el" href="a05728.html#l00719">NLGEORGES::CFormElm::arrayDeleteNodeByName()</a>, <a class="el" href="a05728.html#l00645">NLGEORGES::CFormElm::arrayInsertNodeByName()</a>, <a class="el" href="a05728.html#l00328">NLGEORGES::CFormElm::CFormElm()</a>, <a class="el" href="a05728.html#l00596">NLGEORGES::CFormElm::createNodeByName()</a>, <a class="el" href="a05728.html#l00612">NLGEORGES::CFormElm::deleteNodeByName()</a>, and <a class="el" href="a05728.html#l00629">NLGEORGES::CFormElm::getNodeByName()</a>. </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructp2" doxytag="NLGEORGES::CFormElmStruct::ParentIndex" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a15">uint</a> <a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructp2">NLGEORGES::CFormElm::ParentIndex</a><code> [protected, inherited]</code> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05729.html#l00240">240</a> of file <a class="el" href="a05729.html">form_elm.h</a>. +<p> +Referenced by <a class="el" href="a05728.html#l00719">NLGEORGES::CFormElm::arrayDeleteNodeByName()</a>, <a class="el" href="a05728.html#l00645">NLGEORGES::CFormElm::arrayInsertNodeByName()</a>, <a class="el" href="a05728.html#l00328">NLGEORGES::CFormElm::CFormElm()</a>, <a class="el" href="a05728.html#l00596">NLGEORGES::CFormElm::createNodeByName()</a>, <a class="el" href="a05728.html#l00612">NLGEORGES::CFormElm::deleteNodeByName()</a>, and <a class="el" href="a05728.html#l00629">NLGEORGES::CFormElm::getNodeByName()</a>. </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructp3" doxytag="NLGEORGES::CFormElmStruct::ParentNode" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> <a class="el" href="a02550.html">CFormElm</a>* <a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructp3">NLGEORGES::CFormElm::ParentNode</a><code> [protected, inherited]</code> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05729.html#l00234">234</a> of file <a class="el" href="a05729.html">form_elm.h</a>. +<p> +Referenced by <a class="el" href="a05728.html#l00328">NLGEORGES::CFormElm::CFormElm()</a>, and <a class="el" href="a05728.html#l00589">NLGEORGES::CFormElm::getParent()</a>. </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormElmVirtualStructp4" doxytag="NLGEORGES::CFormElmStruct::Round" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a11">uint32</a> <a class="el" href="a02550.html#NLGEORGES_1_1CFormElmVirtualStructp4">NLGEORGES::CFormElm::Round</a><code> [protected, inherited]</code> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05729.html#l00243">243</a> of file <a class="el" href="a05729.html">form_elm.h</a>. </td> + </tr> +</table> +<hr>The documentation for this class was generated from the following files:<ul> +<li><a class="el" href="a05729.html">form_elm.h</a><li><a class="el" href="a05728.html">form_elm.cpp</a></ul> +<hr size="1"><address style="align: right;"><small>Generated on Tue Mar 16 12:44:20 2004 for NeL by +<a href="http://www.doxygen.org/index.html"> +<img src="doxygen.png" alt="doxygen" align="middle" border=0 > +</a>1.3.6 </small></address> +</body> +</html> |