diff options
Diffstat (limited to '')
-rw-r--r-- | docs/doxygen/nel/a02546.html | 2702 |
1 files changed, 2702 insertions, 0 deletions
diff --git a/docs/doxygen/nel/a02546.html b/docs/doxygen/nel/a02546.html new file mode 100644 index 00000000..44aabfb0 --- /dev/null +++ b/docs/doxygen/nel/a02546.html @@ -0,0 +1,2702 @@ +<!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::CFormDfn 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::CFormDfn Class Reference</h1><code>#include <<a class="el" href="a05727.html">form_dfn.h</a>></code> +<p> +<p>Inheritance diagram for NLGEORGES::CFormDfn: +<p><center><img src="a02546.png" usemap="#NLGEORGES::CFormDfn_map" border="0" alt=""></center> +<map name="NLGEORGES::CFormDfn_map"> +<area href="a02547.html" alt="NLGEORGES::UFormDfn" shape="rect" coords="0,56,152,80"> +<area href="a02209.html" alt="NLMISC::CRefCount" shape="rect" coords="0,0,152,24"> +</map> +<hr><a name="_details"></a><h2>Detailed Description</h2> +This class is the defnition for a familly of from. +<p> + +<p> +Definition at line <a class="el" href="a05727.html#l00046">46</a> of file <a class="el" href="a05727.html">form_dfn.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="a02547.html#NLGEORGES_1_1UFormDfnw3">TEntryType</a> { <a class="el" href="a02547.html#NLGEORGES_1_1UFormDfnw3NLGEORGES_1_1UFormDfnw1">EntryType</a>, +<a class="el" href="a02547.html#NLGEORGES_1_1UFormDfnw3NLGEORGES_1_1UFormDfnw0">EntryDfn</a>, +<a class="el" href="a02547.html#NLGEORGES_1_1UFormDfnw3NLGEORGES_1_1UFormDfnw2">EntryVirtualDfn</a> + }</td></tr> + +<tr><td colspan=2><br><h2>Public Member Functions</h2></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top> </td><td class="memItemRight" valign=bottom><a class="el" href="a02546.html#NLGEORGES_1_1CFormDfna0">CFormDfn</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="a02546.html#NLGEORGES_1_1CFormDfna1">countParentDfn</a> (<a class="el" href="a04558.html#a11">uint32</a> round=0) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>const std::string & </td><td class="memItemRight" valign=bottom><a class="el" href="a02546.html#NLGEORGES_1_1CFormDfna2">getComment</a> () const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="a02546.html#NLGEORGES_1_1CFormDfna3">getDependencies</a> (std::set< std::string > &dependencies) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a02548.html">CEntry</a> & </td><td class="memItemRight" valign=bottom><a class="el" href="a02546.html#NLGEORGES_1_1CFormDfna4">getEntry</a> (<a class="el" href="a04558.html#a15">uint</a> entry)</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>const <a class="el" href="a02548.html">CEntry</a> & </td><td class="memItemRight" valign=bottom><a class="el" href="a02546.html#NLGEORGES_1_1CFormDfna5">getEntry</a> (<a class="el" href="a04558.html#a15">uint</a> entry) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02546.html#NLGEORGES_1_1CFormDfna6">getEntryByName</a> (const std::string &name, <a class="el" href="a02548.html">CFormDfn::CEntry</a> **entry)</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02546.html#NLGEORGES_1_1CFormDfna7">getEntryDfn</a> (<a class="el" href="a04558.html#a15">uint</a> entry, <a class="el" href="a02547.html">UFormDfn</a> **dfn)</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02546.html#NLGEORGES_1_1CFormDfna8">getEntryDfnByName</a> (const std::string &name, <a class="el" href="a02547.html">UFormDfn</a> **dfn)</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02546.html#NLGEORGES_1_1CFormDfna9">getEntryFilename</a> (<a class="el" href="a04558.html#a15">uint</a> entry, std::string &<a class="el" href="a04560.html#a1">filename</a>) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02546.html#NLGEORGES_1_1CFormDfna10">getEntryFilenameExt</a> (<a class="el" href="a04558.html#a15">uint</a> entry, std::string &<a class="el" href="a04560.html#a1">filename</a>) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02546.html#NLGEORGES_1_1CFormDfna11">getEntryIndexByName</a> (<a class="el" href="a04558.html#a15">uint</a> &entry, const std::string &name) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02546.html#NLGEORGES_1_1CFormDfna12">getEntryName</a> (<a class="el" href="a04558.html#a15">uint</a> entry, std::string &name) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02546.html#NLGEORGES_1_1CFormDfna13">getEntryType</a> (<a class="el" href="a04558.html#a15">uint</a> entry, <a class="el" href="a03623.html">UType</a> **<a class="el" href="a04223.html#a581">type</a>)</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02546.html#NLGEORGES_1_1CFormDfna14">getEntryType</a> (<a class="el" href="a04558.html#a15">uint</a> entry, <a class="el" href="a02547.html#NLGEORGES_1_1UFormDfnw3">TEntryType</a> &<a class="el" href="a04223.html#a581">type</a>, bool &array) const </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="a02546.html#NLGEORGES_1_1CFormDfna15">getNumEntry</a> () const </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="a02546.html#NLGEORGES_1_1CFormDfna16">getNumParent</a> () const </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="a02546.html#NLGEORGES_1_1CFormDfna17">getNumParents</a> () const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02546.html#NLGEORGES_1_1CFormDfna18">getParent</a> (<a class="el" href="a04558.html#a15">uint</a> parent, <a class="el" href="a02547.html">UFormDfn</a> **parentRet)</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a02546.html">CFormDfn</a> * </td><td class="memItemRight" valign=bottom><a class="el" href="a02546.html#NLGEORGES_1_1CFormDfna19">getParent</a> (<a class="el" href="a04558.html#a15">uint</a> parent) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="a02546.html#NLGEORGES_1_1CFormDfna20">getParentDfn</a> (std::vector< const <a class="el" href="a02546.html">CFormDfn</a> * > &array, <a class="el" href="a04558.html#a11">uint32</a> round=0) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="a02546.html#NLGEORGES_1_1CFormDfna21">getParentDfn</a> (std::vector< <a class="el" href="a02546.html">CFormDfn</a> * > &array, <a class="el" href="a04558.html#a11">uint32</a> round=0)</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02546.html#NLGEORGES_1_1CFormDfna22">getParentFilename</a> (<a class="el" href="a04558.html#a15">uint</a> parent, std::string &<a class="el" href="a04560.html#a1">filename</a>) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>const std::string & </td><td class="memItemRight" valign=bottom><a class="el" href="a02546.html#NLGEORGES_1_1CFormDfna23">getParentFilename</a> (<a class="el" href="a04558.html#a15">uint</a> parent) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>const <a class="el" href="a04558.html#a14">sint</a> & </td><td class="memItemRight" valign=bottom><a class="el" href="a02209.html#NLGEORGES_1_1UTypea8">getRefCount</a> () const </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="a02546.html#NLGEORGES_1_1CFormDfna25">getSubDfn</a> (<a class="el" href="a04558.html#a15">uint</a> <a class="el" href="a04223.html#a566">index</a>, <a class="el" href="a04558.html#a15">uint</a> &dfnIndex) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a02546.html">CFormDfn</a> * </td><td class="memItemRight" valign=bottom><a class="el" href="a02546.html#NLGEORGES_1_1CFormDfna26">getSubDfn</a> (<a class="el" href="a04558.html#a15">uint</a> <a class="el" href="a04223.html#a566">index</a>, <a class="el" href="a04558.html#a15">uint</a> &dfnIndex)</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02546.html#NLGEORGES_1_1CFormDfna27">isAnArrayEntryByName</a> (const std::string &name) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="a02546.html#NLGEORGES_1_1CFormDfna28">setNumEntry</a> (<a class="el" href="a04558.html#a15">uint</a> <a class="el" href="a04223.html#a587">size</a>)</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="a02546.html#NLGEORGES_1_1CFormDfna29">setNumParent</a> (<a class="el" href="a04558.html#a15">uint</a> <a class="el" href="a04223.html#a587">size</a>)</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="a02546.html#NLGEORGES_1_1CFormDfna30">setParent</a> (<a class="el" href="a04558.html#a15">uint</a> parent, <a class="el" href="a02558.html">CFormLoader</a> &loader, const char *<a class="el" href="a04560.html#a1">filename</a>)</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="a02546.html#NLGEORGES_1_1CFormDfna31">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>void </td><td class="memItemRight" valign=bottom><a class="el" href="a02546.html#NLGEORGES_1_1CFormDfna32">write</a> (xmlDocPtr root, const char *<a class="el" href="a04560.html#a1">filename</a>, bool georges4CVS)</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual </td><td class="memItemRight" valign=bottom><a class="el" href="a02546.html#NLGEORGES_1_1CFormDfna33">~CFormDfn</a> ()</td></tr> + +<tr><td colspan=2><br><h2>Data Fields</h2></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a04558.html#a14">sint</a> </td><td class="memItemRight" valign=bottom><a class="el" href="a02209.html#NLGEORGES_1_1UTypeo0">crefs</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a02528.html">CFileHeader</a> </td><td class="memItemRight" valign=bottom><a class="el" href="a02546.html#NLGEORGES_1_1CFormDfno1">Header</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>CPtrInfo * </td><td class="memItemRight" valign=bottom><a class="el" href="a02209.html#NLGEORGES_1_1UTypeo1">pinfo</a></td></tr> + +<tr><td colspan=2><br><h2>Static Public Attributes</h2></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>CPtrInfo </td><td class="memItemRight" valign=bottom><a class="el" href="a02209.html#NLGEORGES_1_1UTypes0">NullPtrInfo</a></td></tr> + +<tr><td colspan=2><br><h2>Private Member Functions</h2></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="a02546.html#NLGEORGES_1_1CFormDfnd0">read</a> (xmlNodePtr doc, <a class="el" href="a02558.html">CFormLoader</a> &loader, bool forceLoad, const char *<a class="el" href="a04560.html#a1">filename</a>)</td></tr> + +<tr><td colspan=2><br><h2>Private Attributes</h2></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>std::string </td><td class="memItemRight" valign=bottom><a class="el" href="a02546.html#NLGEORGES_1_1CFormDfnr0">_Filename</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>std::vector< <a class="el" href="a02548.html">CEntry</a> > </td><td class="memItemRight" valign=bottom><a class="el" href="a02546.html#NLGEORGES_1_1CFormDfnr1">Entries</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>std::vector< <a class="el" href="a02549.html">CParent</a> > </td><td class="memItemRight" valign=bottom><a class="el" href="a02546.html#NLGEORGES_1_1CFormDfnr2">Parents</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="a02546.html#NLGEORGES_1_1CFormDfnr3">Round</a></td></tr> + +<tr><td colspan=2><br><h2>Friends</h2></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>class </td><td class="memItemRight" valign=bottom><a class="el" href="a02546.html#NLGEORGES_1_1CFormDfnn0">CForm</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>class </td><td class="memItemRight" valign=bottom><a class="el" href="a02546.html#NLGEORGES_1_1CFormDfnn1">CFormElm</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>class </td><td class="memItemRight" valign=bottom><a class="el" href="a02546.html#NLGEORGES_1_1CFormDfnn2">CFormElmStruct</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>class </td><td class="memItemRight" valign=bottom><a class="el" href="a02546.html#NLGEORGES_1_1CFormDfnn3">CFormLoader</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02546.html#NLGEORGES_1_1CFormDfnn4">convertDfnFile</a> (const char *oldFileName, const char *newFileName)</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>struct </td><td class="memItemRight" valign=bottom><a class="el" href="a02209.html#NLGEORGES_1_1UTypen0">CPtrInfo</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>class </td><td class="memItemRight" valign=bottom><a class="el" href="a02546.html#NLGEORGES_1_1CFormDfnn6">CType</a></td></tr> + +</table> +<hr><h2>Member Enumeration Documentation</h2> +<a class="anchor" name="NLGEORGES_1_1UFormDfnw3" doxytag="NLGEORGES::CFormDfn::TEntryType" ></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="a02547.html#NLGEORGES_1_1UFormDfnw3">NLGEORGES::UFormDfn::TEntryType</a><code> [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_1UFormDfnw3NLGEORGES_1_1UFormDfnw1" doxytag="EntryType" ></a>EntryType</em> </td><td> +</td></tr> +<tr><td valign=top><em><a class="anchor" name="NLGEORGES_1_1UFormDfnw3NLGEORGES_1_1UFormDfnw0" doxytag="EntryDfn" ></a>EntryDfn</em> </td><td> +</td></tr> +<tr><td valign=top><em><a class="anchor" name="NLGEORGES_1_1UFormDfnw3NLGEORGES_1_1UFormDfnw2" doxytag="EntryVirtualDfn" ></a>EntryVirtualDfn</em> </td><td> +</td></tr> +</table> +</dl> + +<p> +Definition at line <a class="el" href="a06602.html#l00056">56</a> of file <a class="el" href="a06602.html">u_form_dfn.h</a>. +<p> +<div class="fragment"><pre>00057 { +00058 <a class="code" href="a02547.html#NLGEORGES_1_1UFormDfnw3NLGEORGES_1_1UFormDfnw1">EntryType</a>, +00059 <a class="code" href="a02547.html#NLGEORGES_1_1UFormDfnw3NLGEORGES_1_1UFormDfnw0">EntryDfn</a>, +00060 <a class="code" href="a02547.html#NLGEORGES_1_1UFormDfnw3NLGEORGES_1_1UFormDfnw2">EntryVirtualDfn</a>, +00061 }; +</pre></div> </td> + </tr> +</table> +<hr><h2>Constructor & Destructor Documentation</h2> +<a class="anchor" name="NLGEORGES_1_1CFormDfna0" doxytag="NLGEORGES::CFormDfn::CFormDfn" ></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::CFormDfn::CFormDfn </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> [inline]</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="a05727.html#l00057">57</a> of file <a class="el" href="a05727.html">form_dfn.h</a>. +<p> +References <a class="el" href="a05727.html#l00248">Round</a>. +<p> +<div class="fragment"><pre>00058 { +00059 <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr3">Round</a> = 0xffffffff; +00060 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormDfna33" doxytag="NLGEORGES::CFormDfn::~CFormDfn" ></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"> virtual NLGEORGES::CFormDfn::~<a class="el" href="a02546.html">CFormDfn</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> [inline, 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="a05727.html#l00062">62</a> of file <a class="el" href="a05727.html">form_dfn.h</a>. +<p> +<div class="fragment"><pre>00062 { } +</pre></div> </td> + </tr> +</table> +<hr><h2>Member Function Documentation</h2> +<a class="anchor" name="NLGEORGES_1_1CFormDfna1" doxytag="NLGEORGES::CFormDfn::countParentDfn" ></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> NLGEORGES::CFormDfn::countParentDfn </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="mdname1" valign="top" nowrap> <em>round</em> = 0 </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap> const</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="a05726.html#l00337">337</a> of file <a class="el" href="a05726.html">form_dfn.cpp</a>. +<p> +References <a class="el" href="a05646.html#l00240">count</a>, <a class="el" href="a05729.html#l00036">NLGEORGES_MAX_RECURSION</a>, <a class="el" href="a05727.html#l00242">Parents</a>, <a class="el" href="a05981.html#l00105">uint</a>, <a class="el" href="a05981.html#l00100">uint32</a>, and <a class="el" href="a05726.html#l00848">warning()</a>. +<p> +Referenced by <a class="el" href="a05728.html#l02002">NLGEORGES::CFormElmStruct::build()</a>, <a class="el" href="a05726.html#l00588">getSubDfn()</a>, and <a class="el" href="a05728.html#l01817">NLGEORGES::CFormElmStruct::read()</a>. +<p> +<div class="fragment"><pre>00338 { +00339 <span class="comment">// Checkout recurcive calls</span> +00340 <span class="keywordflow">if</span> (round > <a class="code" href="a04306.html#a1">NLGEORGES_MAX_RECURSION</a>) +00341 { +00342 <span class="comment">// Turn around..</span> +00343 <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfna31">warning</a> (<span class="keyword">false</span>, <span class="stringliteral">"countParentDfn"</span>, <span class="stringliteral">"Recurcive call on the same DFN, look for loop inheritances."</span>); +00344 <span class="keywordflow">return</span> 0; +00345 } +00346 +00347 <a class="code" href="a04558.html#a15">uint</a> <a class="code" href="a04223.html#a577">count</a> = 0; +00348 <a class="code" href="a04558.html#a15">uint</a> i; +00349 <span class="keywordflow">for</span> (i=0; i<<a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr2">Parents</a>.size (); i++) +00350 { +00351 <a class="code" href="a04223.html#a577">count</a> += <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr2">Parents</a>[i].Parent->countParentDfn (round+1); +00352 } +00353 <span class="keywordflow">return</span> <a class="code" href="a04223.html#a577">count</a>+1; +00354 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormDfna2" doxytag="NLGEORGES::CFormDfn::getComment" ></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 std::string & NLGEORGES::CFormDfn::getComment </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> +Get the comment +<p> +Implements <a class="el" href="a02547.html#NLGEORGES_1_1UFormDfna0">NLGEORGES::UFormDfn</a>. +<p> +Definition at line <a class="el" href="a05726.html#l00827">827</a> of file <a class="el" href="a05726.html">form_dfn.cpp</a>. +<p> +References <a class="el" href="a05774.html#l00067">NLGEORGES::CFileHeader::Comments</a>. +<p> +<div class="fragment"><pre>00828 { +00829 <span class="keywordflow">return</span> <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfno1">Header</a>.Comments; +00830 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormDfna3" doxytag="NLGEORGES::CFormDfn::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::CFormDfn::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> +Get dependency files +<p> +Implements <a class="el" href="a02547.html#NLGEORGES_1_1UFormDfna1">NLGEORGES::UFormDfn</a>. +<p> +Definition at line <a class="el" href="a05726.html#l00863">863</a> of file <a class="el" href="a05726.html">form_dfn.cpp</a>. +<p> +References <a class="el" href="a05727.html#l00245">Entries</a>, <a class="el" href="a05727.html#l00242">Parents</a>, <a class="el" href="a05586.html#l00536">NLMISC::strlwr()</a>, and <a class="el" href="a05981.html#l00105">uint</a>. +<p> +<div class="fragment"><pre>00864 { +00865 <span class="comment">// Scan only if not already inserted</span> +00866 <span class="keywordflow">if</span> (dependencies.insert (strlwr (CFile::getFilename (_Filename))).second) +00867 { +00868 <span class="comment">// Add parents</span> +00869 <a class="code" href="a04558.html#a15">uint</a> i; +00870 <span class="keywordflow">for</span> (i=0; i<<a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr2">Parents</a>.size (); i++) +00871 { +00872 <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr2">Parents</a>[i].Parent->getDependencies (dependencies); +00873 } +00874 +00875 <span class="comment">// Add entries</span> +00876 <span class="keywordflow">for</span> (i=0; i<<a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr1">Entries</a>.size (); i++) +00877 { +00878 <span class="keywordflow">if</span> (<a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr1">Entries</a>[i].getDfnPtr ()) +00879 <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr1">Entries</a>[i].getDfnPtr ()->getDependencies (dependencies); +00880 <span class="keywordflow">if</span> (<a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr1">Entries</a>[i].getTypePtr ()) +00881 { +00882 dependencies.insert (strlwr (CFile::getFilename (Entries[i].getFilename()))); +00883 } +00884 } +00885 } +00886 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormDfna4" doxytag="NLGEORGES::CFormDfn::getEntry" ></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="a02548.html">CFormDfn::CEntry</a> & NLGEORGES::CFormDfn::getEntry </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>entry</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="a05726.html#l00442">442</a> of file <a class="el" href="a05726.html">form_dfn.cpp</a>. +<p> +References <a class="el" href="a05727.html#l00245">Entries</a>, and <a class="el" href="a05981.html#l00105">uint</a>. +<p> +<div class="fragment"><pre>00443 { +00444 <span class="keywordflow">return</span> <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr1">Entries</a>[entry]; +00445 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormDfna5" doxytag="NLGEORGES::CFormDfn::getEntry" ></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="a02548.html">CFormDfn::CEntry</a> & NLGEORGES::CFormDfn::getEntry </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>entry</em> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap> const</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="a05726.html#l00435">435</a> of file <a class="el" href="a05726.html">form_dfn.cpp</a>. +<p> +References <a class="el" href="a05727.html#l00245">Entries</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>00436 { +00437 <span class="keywordflow">return</span> <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr1">Entries</a>[entry]; +00438 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormDfna6" doxytag="NLGEORGES::CFormDfn::getEntryByName" ></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::CFormDfn::getEntryByName </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">const std::string & </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="a02548.html">CFormDfn::CEntry</a> ** </td> + <td class="mdname" nowrap> <em>entry</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="a05726.html#l00734">734</a> of file <a class="el" href="a05726.html">form_dfn.cpp</a>. +<p> +References <a class="el" href="a05727.html#l00245">Entries</a>, and <a class="el" href="a05726.html#l00497">NLGEORGES::CFormDfn::CEntry::getName()</a>. +<p> +Referenced by <a class="el" href="a05726.html#l00751">getEntryDfnByName()</a>. +<p> +<div class="fragment"><pre>00735 { +00736 <span class="keywordtype">int</span> entryIndex=<a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr1">Entries</a>.size ()-1; +00737 <span class="keywordflow">while</span> (entryIndex>=0) +00738 { +00739 CEntry *entryPtr=&<a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr1">Entries</a>[entryIndex]; +00740 <span class="keywordflow">if</span> (entryPtr->getName()==name) +00741 { +00742 *entry=entryPtr; +00743 <span class="keywordflow">return</span> <span class="keyword">true</span>; +00744 } +00745 entryIndex--; +00746 } +00747 *entry=NULL; +00748 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00749 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormDfna7" doxytag="NLGEORGES::CFormDfn::getEntryDfn" ></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::CFormDfn::getEntryDfn </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>entry</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02547.html">UFormDfn</a> ** </td> + <td class="mdname" nowrap> <em>dfn</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 the entry DFN pointer Doesn't look in parents DFN.<p> +<dl compact><dt><b>Parameters:</b></dt><dd> + <table border="0" cellspacing="2" cellpadding="0"> + <tr><td valign=top><em>entry</em> </td><td>is the entry id to get the dfn pointer. </td></tr> + <tr><td valign=top><em>dfn</em> </td><td>will be filled with the DFN pointer. </td></tr> + </table> +</dl> +<dl compact><dt><b>Returns:</b></dt><dd>true if successed, false if the entry doesn't exist or is not a DFN.</dd></dl> + +<p> +Implements <a class="el" href="a02547.html#NLGEORGES_1_1UFormDfna2">NLGEORGES::UFormDfn</a>. +<p> +Definition at line <a class="el" href="a05726.html#l00718">718</a> of file <a class="el" href="a05726.html">form_dfn.cpp</a>. +<p> +References <a class="el" href="a05727.html#l00245">Entries</a>, <a class="el" href="a05981.html#l00105">uint</a>, and <a class="el" href="a05726.html#l00848">warning()</a>. +<p> +<div class="fragment"><pre>00719 { +00720 <span class="keywordflow">if</span> (entry < <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr1">Entries</a>.size ()) +00721 { +00722 <span class="keywordflow">if</span> (<a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr1">Entries</a>[entry].TypeElement == <a class="code" href="a02547.html#NLGEORGES_1_1UFormDfnw3NLGEORGES_1_1UFormDfnw0">EntryDfn</a>) +00723 { +00724 *dfn = <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr1">Entries</a>[entry].Dfn; +00725 <span class="keywordflow">return</span> <span class="keyword">true</span>; +00726 } +00727 <span class="keywordflow">else</span> +00728 <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfna31">warning</a> (<span class="keyword">false</span>, <span class="stringliteral">"getEntryDfn"</span>, <span class="stringliteral">"This entry is not a DFN."</span>); +00729 } +00730 <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfna31">warning</a> (<span class="keyword">false</span>, <span class="stringliteral">"getEntryDfn"</span>, <span class="stringliteral">"Wrong entry ID."</span>); +00731 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00732 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormDfna8" doxytag="NLGEORGES::CFormDfn::getEntryDfnByName" ></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::CFormDfn::getEntryDfnByName </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">const std::string & </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="a02547.html">UFormDfn</a> ** </td> + <td class="mdname" nowrap> <em>dfn</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 the entry DFN pointer Doesn't look in parents DFN.<p> +<dl compact><dt><b>Parameters:</b></dt><dd> + <table border="0" cellspacing="2" cellpadding="0"> + <tr><td valign=top><em>name</em> </td><td>is the supposed name of the dfn. </td></tr> + <tr><td valign=top><em>dfn</em> </td><td>will be filled with the DFN pointer. </td></tr> + </table> +</dl> +<dl compact><dt><b>Returns:</b></dt><dd>true if successed, false if the entry doesn't exist or is not a DFN.</dd></dl> + +<p> +Implements <a class="el" href="a02547.html#NLGEORGES_1_1UFormDfna3">NLGEORGES::UFormDfn</a>. +<p> +Definition at line <a class="el" href="a05726.html#l00751">751</a> of file <a class="el" href="a05726.html">form_dfn.cpp</a>. +<p> +References <a class="el" href="a05726.html#l00567">NLGEORGES::CFormDfn::CEntry::getDfnPtr()</a>, and <a class="el" href="a05726.html#l00734">getEntryByName()</a>. +<p> +<div class="fragment"><pre>00752 { +00753 CFormDfn::CEntry *entry; +00754 <span class="keywordflow">if</span> (<a class="code" href="a02546.html#NLGEORGES_1_1CFormDfna6">getEntryByName</a> (name, &entry)) +00755 { +00756 *dfn=entry->getDfnPtr(); +00757 <span class="keywordflow">return</span> <span class="keyword">true</span>; +00758 } +00759 *dfn=NULL; +00760 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00761 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormDfna9" doxytag="NLGEORGES::CFormDfn::getEntryFilename" ></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::CFormDfn::getEntryFilename </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>entry</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>filename</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 filename of the type or the DFN. Doesn't look in parents DFN.<p> +<dl compact><dt><b>Parameters:</b></dt><dd> + <table border="0" cellspacing="2" cellpadding="0"> + <tr><td valign=top><em>entry</em> </td><td>is the entry id to get the dfn pointer. </td></tr> + <tr><td valign=top><em>name</em> </td><td>will be filled with the entry filename. </td></tr> + </table> +</dl> +<dl compact><dt><b>Returns:</b></dt><dd>true if successed, false if the entry doesn't exist or is a virtual DFN.</dd></dl> + +<p> +Implements <a class="el" href="a02547.html#NLGEORGES_1_1UFormDfna4">NLGEORGES::UFormDfn</a>. +<p> +Definition at line <a class="el" href="a05726.html#l00656">656</a> of file <a class="el" href="a05726.html">form_dfn.cpp</a>. +<p> +References <a class="el" href="a05727.html#l00245">Entries</a>, <a class="el" href="a05981.html#l00105">uint</a>, and <a class="el" href="a05726.html#l00848">warning()</a>. +<p> +<div class="fragment"><pre>00657 { +00658 <span class="keywordflow">if</span> (entry < <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr1">Entries</a>.size ()) +00659 { +00660 <span class="keywordflow">if</span> (<a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr1">Entries</a>[entry].TypeElement != <a class="code" href="a02547.html#NLGEORGES_1_1UFormDfnw3NLGEORGES_1_1UFormDfnw2">EntryVirtualDfn</a>) +00661 { +00662 <a class="code" href="a05377.html#a2">filename</a> = <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr1">Entries</a>[entry].Filename; +00663 <span class="keywordflow">return</span> <span class="keyword">true</span>; +00664 } +00665 <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfna31">warning</a> (<span class="keyword">false</span>, <span class="stringliteral">"getEntryFilename"</span>, <span class="stringliteral">"The entry is a virtual DFN."</span>); +00666 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00667 } +00668 <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfna31">warning</a> (<span class="keyword">false</span>, <span class="stringliteral">"getEntryFilename"</span>, <span class="stringliteral">"Wrong entry ID."</span>); +00669 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00670 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormDfna10" doxytag="NLGEORGES::CFormDfn::getEntryFilenameExt" ></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::CFormDfn::getEntryFilenameExt </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>entry</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>filename</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 filename extension used by the DFN entry. Doesn't look in parents DFN.<p> +<dl compact><dt><b>Parameters:</b></dt><dd> + <table border="0" cellspacing="2" cellpadding="0"> + <tr><td valign=top><em>entry</em> </td><td>is the entry id to get the dfn pointer. </td></tr> + <tr><td valign=top><em>name</em> </td><td>will be filled with the entry filename. </td></tr> + </table> +</dl> +<dl compact><dt><b>Returns:</b></dt><dd>true if successed, false if the entry doesn't exist or is a virtual DFN.</dd></dl> + +<p> +Implements <a class="el" href="a02547.html#NLGEORGES_1_1UFormDfna5">NLGEORGES::UFormDfn</a>. +<p> +Definition at line <a class="el" href="a05726.html#l00674">674</a> of file <a class="el" href="a05726.html">form_dfn.cpp</a>. +<p> +References <a class="el" href="a05727.html#l00245">Entries</a>, <a class="el" href="a05981.html#l00105">uint</a>, and <a class="el" href="a05726.html#l00848">warning()</a>. +<p> +<div class="fragment"><pre>00675 { +00676 <span class="keywordflow">if</span> (entry < <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr1">Entries</a>.size ()) +00677 { +00678 <a class="code" href="a05377.html#a2">filename</a> = <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr1">Entries</a>[entry].FilenameExt; +00679 <span class="keywordflow">return</span> <span class="keyword">true</span>; +00680 } +00681 <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfna31">warning</a> (<span class="keyword">false</span>, <span class="stringliteral">"getEntryFilenameExt"</span>, <span class="stringliteral">"Wrong entry ID."</span>); +00682 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00683 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormDfna11" doxytag="NLGEORGES::CFormDfn::getEntryIndexByName" ></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::CFormDfn::getEntryIndexByName </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>entry</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const std::string & </td> + <td class="mdname" nowrap> <em>name</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="a02547.html#NLGEORGES_1_1UFormDfna6">NLGEORGES::UFormDfn</a>. +<p> +Definition at line <a class="el" href="a05726.html#l00687">687</a> of file <a class="el" href="a05726.html">form_dfn.cpp</a>. +<p> +References <a class="el" href="a05727.html#l00245">Entries</a>, and <a class="el" href="a05981.html#l00105">uint</a>. +<p> +<div class="fragment"><pre>00688 { +00689 <a class="code" href="a04558.html#a15">uint</a> entryIndex=0; +00690 <span class="keywordflow">while</span> (entryIndex<<a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr1">Entries</a>.size ()) +00691 { +00692 <span class="keywordflow">if</span> (<a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr1">Entries</a>[entryIndex].Name==name) +00693 { +00694 entry=entryIndex; +00695 <span class="keywordflow">return</span> <span class="keyword">true</span>; +00696 } +00697 entryIndex++; +00698 } +00699 entry=~0; +00700 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00701 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormDfna12" doxytag="NLGEORGES::CFormDfn::getEntryName" ></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::CFormDfn::getEntryName </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>entry</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>name</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 entry name Doesn't look in parents DFN.<p> +<dl compact><dt><b>Parameters:</b></dt><dd> + <table border="0" cellspacing="2" cellpadding="0"> + <tr><td valign=top><em>entry</em> </td><td>is the entry id to get the dfn pointer. </td></tr> + <tr><td valign=top><em>name</em> </td><td>will be filled with the entry name. </td></tr> + </table> +</dl> +<dl compact><dt><b>Returns:</b></dt><dd>true if successed, false if the entry doesn't exist.</dd></dl> + +<p> +Implements <a class="el" href="a02547.html#NLGEORGES_1_1UFormDfna7">NLGEORGES::UFormDfn</a>. +<p> +Definition at line <a class="el" href="a05726.html#l00705">705</a> of file <a class="el" href="a05726.html">form_dfn.cpp</a>. +<p> +References <a class="el" href="a05727.html#l00245">Entries</a>, <a class="el" href="a05981.html#l00105">uint</a>, and <a class="el" href="a05726.html#l00848">warning()</a>. +<p> +<div class="fragment"><pre>00706 { +00707 <span class="keywordflow">if</span> (entry < <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr1">Entries</a>.size ()) +00708 { +00709 name = <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr1">Entries</a>[entry].Name; +00710 <span class="keywordflow">return</span> <span class="keyword">true</span>; +00711 } +00712 <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfna31">warning</a> (<span class="keyword">false</span>, <span class="stringliteral">"getEntryName"</span>, <span class="stringliteral">"Wrong entry ID."</span>); +00713 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00714 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormDfna13" doxytag="NLGEORGES::CFormDfn::getEntryType" ></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::CFormDfn::getEntryType </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>entry</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a03623.html">UType</a> ** </td> + <td class="mdname" nowrap> <em>type</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 the entry Type pointer Doesn't look in parents DFN.<p> +<dl compact><dt><b>Parameters:</b></dt><dd> + <table border="0" cellspacing="2" cellpadding="0"> + <tr><td valign=top><em>entry</em> </td><td>is the entry id to get the dfn pointer. </td></tr> + <tr><td valign=top><em>type</em> </td><td>will be filled with the TYPE pointer. </td></tr> + </table> +</dl> +<dl compact><dt><b>Returns:</b></dt><dd>true if successed, false if the entry doesn't exist or is not a Type.</dd></dl> + +<p> +Implements <a class="el" href="a02547.html#NLGEORGES_1_1UFormDfna8">NLGEORGES::UFormDfn</a>. +<p> +Definition at line <a class="el" href="a05726.html#l00775">775</a> of file <a class="el" href="a05726.html">form_dfn.cpp</a>. +<p> +References <a class="el" href="a05727.html#l00245">Entries</a>, <a class="el" href="a05646.html#l00244">type</a>, <a class="el" href="a05981.html#l00105">uint</a>, and <a class="el" href="a05726.html#l00848">warning()</a>. +<p> +<div class="fragment"><pre>00776 { +00777 <span class="keywordflow">if</span> (entry < <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr1">Entries</a>.size ()) +00778 { +00779 <span class="keywordflow">if</span> (<a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr1">Entries</a>[entry].TypeElement == <a class="code" href="a02547.html#NLGEORGES_1_1UFormDfnw3NLGEORGES_1_1UFormDfnw1">EntryType</a>) +00780 { +00781 *<a class="code" href="a04223.html#a581">type</a> = <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr1">Entries</a>[entry].Type; +00782 <span class="keywordflow">return</span> <span class="keyword">true</span>; +00783 } +00784 <span class="keywordflow">else</span> +00785 <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfna31">warning</a> (<span class="keyword">false</span>, <span class="stringliteral">"getEntryType"</span>, <span class="stringliteral">"This entry is not a type."</span>); +00786 } +00787 <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfna31">warning</a> (<span class="keyword">false</span>, <span class="stringliteral">"getEntryType"</span>, <span class="stringliteral">"Wrong entry ID."</span>); +00788 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00789 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormDfna14" doxytag="NLGEORGES::CFormDfn::getEntryType" ></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::CFormDfn::getEntryType </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>entry</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">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"> const<code> [virtual]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Return the entry type. Doesn't look in parents DFN.<p> +<dl compact><dt><b>Parameters:</b></dt><dd> + <table border="0" cellspacing="2" cellpadding="0"> + <tr><td valign=top><em>entry</em> </td><td>is the entry id to get the type. </td></tr> + <tr><td valign=top><em>type</em> </td><td>will be filled with the entry type. </td></tr> + <tr><td valign=top><em>array</em> </td><td>is true if the entry is an array, else false. </td></tr> + </table> +</dl> +<dl compact><dt><b>Returns:</b></dt><dd>true if successed, false if the entry doesn't exist.</dd></dl> + +<p> +Implements <a class="el" href="a02547.html#NLGEORGES_1_1UFormDfna9">NLGEORGES::UFormDfn</a>. +<p> +Definition at line <a class="el" href="a05726.html#l00642">642</a> of file <a class="el" href="a05726.html">form_dfn.cpp</a>. +<p> +References <a class="el" href="a05727.html#l00245">Entries</a>, <a class="el" href="a05646.html#l00244">type</a>, <a class="el" href="a05981.html#l00105">uint</a>, and <a class="el" href="a05726.html#l00848">warning()</a>. +<p> +<div class="fragment"><pre>00643 { +00644 <span class="keywordflow">if</span> (entry < <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr1">Entries</a>.size ()) +00645 { +00646 <a class="code" href="a04223.html#a581">type</a> = <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr1">Entries</a>[entry].TypeElement; +00647 array = Entries[entry].Array; +00648 <span class="keywordflow">return</span> <span class="keyword">true</span>; +00649 } +00650 <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfna31">warning</a> (<span class="keyword">false</span>, <span class="stringliteral">"getEntryType"</span>, <span class="stringliteral">"Wrong entry ID."</span>); +00651 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00652 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormDfna15" doxytag="NLGEORGES::CFormDfn::getNumEntry" ></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> NLGEORGES::CFormDfn::getNumEntry </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 the number of entry in this DFN +<p> +Implements <a class="el" href="a02547.html#NLGEORGES_1_1UFormDfna10">NLGEORGES::UFormDfn</a>. +<p> +Definition at line <a class="el" href="a05726.html#l00421">421</a> of file <a class="el" href="a05726.html">form_dfn.cpp</a>. +<p> +References <a class="el" href="a05727.html#l00245">Entries</a>, and <a class="el" href="a05981.html#l00105">uint</a>. +<p> +<div class="fragment"><pre>00422 { +00423 <span class="keywordflow">return</span> <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr1">Entries</a>.size(); +00424 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormDfna16" doxytag="NLGEORGES::CFormDfn::getNumParent" ></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> NLGEORGES::CFormDfn::getNumParent </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</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="a05726.html#l00400">400</a> of file <a class="el" href="a05726.html">form_dfn.cpp</a>. +<p> +References <a class="el" href="a05727.html#l00242">Parents</a>, and <a class="el" href="a05981.html#l00105">uint</a>. +<p> +<div class="fragment"><pre>00401 { +00402 <span class="keywordflow">return</span> <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr2">Parents</a>.size (); +00403 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormDfna17" doxytag="NLGEORGES::CFormDfn::getNumParents" ></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> NLGEORGES::CFormDfn::getNumParents </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> +Get the number of parent DFN. Doesn't look in parents DFN for parents. +<p> +Implements <a class="el" href="a02547.html#NLGEORGES_1_1UFormDfna11">NLGEORGES::UFormDfn</a>. +<p> +Definition at line <a class="el" href="a05726.html#l00793">793</a> of file <a class="el" href="a05726.html">form_dfn.cpp</a>. +<p> +References <a class="el" href="a05727.html#l00242">Parents</a>, and <a class="el" href="a05981.html#l00105">uint</a>. +<p> +<div class="fragment"><pre>00794 { +00795 <span class="keywordflow">return</span> <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr2">Parents</a>.size (); +00796 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormDfna18" doxytag="NLGEORGES::CFormDfn::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"> bool NLGEORGES::CFormDfn::getParent </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>parent</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a02547.html">UFormDfn</a> ** </td> + <td class="mdname" nowrap> <em>parentRet</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> +Get a parent.<p> +<dl compact><dt><b>Parameters:</b></dt><dd> + <table border="0" cellspacing="2" cellpadding="0"> + <tr><td valign=top><em>entry</em> </td><td>is the entry id to get the dfn pointer. </td></tr> + <tr><td valign=top><em>parent</em> </td><td>will be filled with the parent pointer. </td></tr> + </table> +</dl> +<dl compact><dt><b>Returns:</b></dt><dd>true if successed, false if the parent doesn't exist.</dd></dl> + +<p> +Implements <a class="el" href="a02547.html#NLGEORGES_1_1UFormDfna12">NLGEORGES::UFormDfn</a>. +<p> +Definition at line <a class="el" href="a05726.html#l00800">800</a> of file <a class="el" href="a05726.html">form_dfn.cpp</a>. +<p> +References <a class="el" href="a05727.html#l00242">Parents</a>, <a class="el" href="a05981.html#l00105">uint</a>, and <a class="el" href="a05726.html#l00848">warning()</a>. +<p> +<div class="fragment"><pre>00801 { +00802 <span class="keywordflow">if</span> (parent < <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr2">Parents</a>.size ()) +00803 { +00804 *parentRet = <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr2">Parents</a>[parent].Parent; +00805 <span class="keywordflow">return</span> <span class="keyword">true</span>; +00806 } +00807 <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfna31">warning</a> (<span class="keyword">false</span>, <span class="stringliteral">"getParent"</span>, <span class="stringliteral">"Wrong parent ID."</span>); +00808 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00809 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormDfna19" doxytag="NLGEORGES::CFormDfn::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="a02546.html">CFormDfn</a> * NLGEORGES::CFormDfn::getParent </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>parent</em> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap> const</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="a05726.html#l00407">407</a> of file <a class="el" href="a05726.html">form_dfn.cpp</a>. +<p> +References <a class="el" href="a05727.html#l00242">Parents</a>, and <a class="el" href="a05981.html#l00105">uint</a>. +<p> +<div class="fragment"><pre>00408 { +00409 <span class="keywordflow">return</span> <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr2">Parents</a>[parent].Parent; +00410 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormDfna20" doxytag="NLGEORGES::CFormDfn::getParentDfn" ></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::CFormDfn::getParentDfn </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">std::vector< const <a class="el" href="a02546.html">CFormDfn</a> * > & </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="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</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="a05726.html#l00379">379</a> of file <a class="el" href="a05726.html">form_dfn.cpp</a>. +<p> +References <a class="el" href="a05729.html#l00036">NLGEORGES_MAX_RECURSION</a>, <a class="el" href="a05727.html#l00242">Parents</a>, <a class="el" href="a05981.html#l00105">uint</a>, <a class="el" href="a05981.html#l00100">uint32</a>, and <a class="el" href="a05726.html#l00848">warning()</a>. +<p> +<div class="fragment"><pre>00380 { +00381 <span class="comment">// Checkout recurcive calls</span> +00382 <span class="keywordflow">if</span> (round > <a class="code" href="a04306.html#a1">NLGEORGES_MAX_RECURSION</a>) +00383 { +00384 <span class="comment">// Turn around..</span> +00385 <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfna31">warning</a> (<span class="keyword">false</span>, <span class="stringliteral">"getParentDfn"</span>, <span class="stringliteral">"Recurcive call on the same DFN, look for loop inheritances."</span>); +00386 <span class="keywordflow">return</span>; +00387 } +00388 +00389 <span class="comment">//uint count = 0;</span> +00390 <a class="code" href="a04558.html#a15">uint</a> i; +00391 <span class="keywordflow">for</span> (i=0; i<<a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr2">Parents</a>.size (); i++) +00392 { +00393 <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr2">Parents</a>[i].Parent->getParentDfn (array, round+1); +00394 } +00395 array.push_back (<span class="keyword">this</span>); +00396 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormDfna21" doxytag="NLGEORGES::CFormDfn::getParentDfn" ></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::CFormDfn::getParentDfn </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">std::vector< <a class="el" href="a02546.html">CFormDfn</a> * > & </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="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"></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="a05726.html#l00358">358</a> of file <a class="el" href="a05726.html">form_dfn.cpp</a>. +<p> +References <a class="el" href="a05729.html#l00036">NLGEORGES_MAX_RECURSION</a>, <a class="el" href="a05727.html#l00242">Parents</a>, <a class="el" href="a05981.html#l00105">uint</a>, <a class="el" href="a05981.html#l00100">uint32</a>, and <a class="el" href="a05726.html#l00848">warning()</a>. +<p> +Referenced by <a class="el" href="a05728.html#l02002">NLGEORGES::CFormElmStruct::build()</a>, <a class="el" href="a05726.html#l00588">getSubDfn()</a>, and <a class="el" href="a05728.html#l01817">NLGEORGES::CFormElmStruct::read()</a>. +<p> +<div class="fragment"><pre>00359 { +00360 <span class="comment">// Checkout recurcive calls</span> +00361 <span class="keywordflow">if</span> (round > <a class="code" href="a04306.html#a1">NLGEORGES_MAX_RECURSION</a>) +00362 { +00363 <span class="comment">// Turn around..</span> +00364 <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfna31">warning</a> (<span class="keyword">false</span>, <span class="stringliteral">"getParentDfn"</span>, <span class="stringliteral">"Recurcive call on the same DFN, look for loop inheritances."</span>); +00365 <span class="keywordflow">return</span>; +00366 } +00367 +00368 <span class="comment">//uint count = 0;</span> +00369 <a class="code" href="a04558.html#a15">uint</a> i; +00370 <span class="keywordflow">for</span> (i=0; i<<a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr2">Parents</a>.size (); i++) +00371 { +00372 <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr2">Parents</a>[i].Parent->getParentDfn (array, round+1); +00373 } +00374 array.push_back (<span class="keyword">this</span>); +00375 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormDfna22" doxytag="NLGEORGES::CFormDfn::getParentFilename" ></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::CFormDfn::getParentFilename </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>parent</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>filename</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> +Get a parent filename.<p> +<dl compact><dt><b>Parameters:</b></dt><dd> + <table border="0" cellspacing="2" cellpadding="0"> + <tr><td valign=top><em>entry</em> </td><td>is the entry id to get the dfn pointer. </td></tr> + <tr><td valign=top><em>parent</em> </td><td>will be filled with the parent pointer. </td></tr> + </table> +</dl> +<dl compact><dt><b>Returns:</b></dt><dd>true if successed, false if the parent doesn't exist.</dd></dl> + +<p> +Implements <a class="el" href="a02547.html#NLGEORGES_1_1UFormDfna13">NLGEORGES::UFormDfn</a>. +<p> +Definition at line <a class="el" href="a05726.html#l00814">814</a> of file <a class="el" href="a05726.html">form_dfn.cpp</a>. +<p> +References <a class="el" href="a05727.html#l00242">Parents</a>, <a class="el" href="a05981.html#l00105">uint</a>, and <a class="el" href="a05726.html#l00848">warning()</a>. +<p> +<div class="fragment"><pre>00815 { +00816 <span class="keywordflow">if</span> (parent < <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr2">Parents</a>.size ()) +00817 { +00818 <a class="code" href="a05377.html#a2">filename</a> = <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr2">Parents</a>[parent].ParentFilename; +00819 <span class="keywordflow">return</span> <span class="keyword">true</span>; +00820 } +00821 <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfna31">warning</a> (<span class="keyword">false</span>, <span class="stringliteral">"getParentFilename"</span>, <span class="stringliteral">"Wrong parent ID."</span>); +00822 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00823 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormDfna23" doxytag="NLGEORGES::CFormDfn::getParentFilename" ></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 string & NLGEORGES::CFormDfn::getParentFilename </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>parent</em> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap> const</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="a05726.html#l00414">414</a> of file <a class="el" href="a05726.html">form_dfn.cpp</a>. +<p> +References <a class="el" href="a05727.html#l00242">Parents</a>, and <a class="el" href="a05981.html#l00105">uint</a>. +<p> +<div class="fragment"><pre>00415 { +00416 <span class="keywordflow">return</span> <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr2">Parents</a>[parent].ParentFilename; +00417 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1UTypea8" doxytag="NLGEORGES::CFormDfn::getRefCount" ></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="a04558.html#a14">sint</a>& NLMISC::CRefCount::getRefCount </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> [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="a06402.html#l00070">70</a> of file <a class="el" href="a06402.html">smart_ptr.h</a>. +<p> +References <a class="el" href="a06402.html#l00079">NLMISC::CRefCount::crefs</a>, and <a class="el" href="a05981.html#l00104">sint</a>. +<p> +<div class="fragment"><pre>00071 { +00072 <span class="keywordflow">return</span> <a class="code" href="a02209.html#NLGEORGES_1_1UTypeo0">crefs</a>; +00073 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormDfna25" doxytag="NLGEORGES::CFormDfn::getSubDfn" ></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> * NLGEORGES::CFormDfn::getSubDfn </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>index</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>dfnIndex</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"> const</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="a05726.html#l00615">615</a> of file <a class="el" href="a05726.html">form_dfn.cpp</a>. +<p> +References <a class="el" href="a05726.html#l00337">countParentDfn()</a>, <a class="el" href="a05726.html#l00358">getParentDfn()</a>, <a class="el" href="a05646.html#l00225">index</a>, <a class="el" href="a05622.html#l00416">nlstop</a>, <a class="el" href="a05646.html#l00645">size</a>, and <a class="el" href="a05981.html#l00105">uint</a>. +<p> +<div class="fragment"><pre>00616 { +00617 <span class="comment">// Get the sub DFN</span> +00618 vector<const CFormDfn*> parentDfn; +00619 parentDfn.reserve (countParentDfn ()); +00620 <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfna21">getParentDfn</a> (parentDfn); +00621 +00622 <span class="comment">// For each parent</span> +00623 <a class="code" href="a04558.html#a15">uint</a> dfn; +00624 dfnIndex = <a class="code" href="a04223.html#a566">index</a>; +00625 <a class="code" href="a04558.html#a15">uint</a> parentSize = parentDfn.size(); +00626 <span class="keywordflow">for</span> (dfn=0; dfn<parentSize; dfn++) +00627 { +00628 <span class="comment">// Good element ?</span> +00629 <a class="code" href="a04558.html#a15">uint</a> <a class="code" href="a04223.html#a587">size</a> = parentDfn[dfn]->Entries.size (); +00630 <span class="keywordflow">if</span> (dfnIndex<<a class="code" href="a04223.html#a587">size</a>) +00631 <span class="keywordflow">return</span> parentDfn[dfn]; +00632 dfnIndex -= <a class="code" href="a04223.html#a587">size</a>; +00633 } +00634 +00635 <span class="comment">// Should be found..</span> +00636 <a class="code" href="a04199.html#a12">nlstop</a>; +00637 <span class="keywordflow">return</span> NULL; +00638 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormDfna26" doxytag="NLGEORGES::CFormDfn::getSubDfn" ></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="a02546.html">CFormDfn</a> * NLGEORGES::CFormDfn::getSubDfn </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>index</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>dfnIndex</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="a05726.html#l00588">588</a> of file <a class="el" href="a05726.html">form_dfn.cpp</a>. +<p> +References <a class="el" href="a05726.html#l00337">countParentDfn()</a>, <a class="el" href="a05726.html#l00358">getParentDfn()</a>, <a class="el" href="a05646.html#l00225">index</a>, <a class="el" href="a05622.html#l00416">nlstop</a>, <a class="el" href="a05646.html#l00645">size</a>, and <a class="el" href="a05981.html#l00105">uint</a>. +<p> +<div class="fragment"><pre>00589 { +00590 <span class="comment">// Get the sub DFN</span> +00591 vector<CFormDfn*> parentDfn; +00592 parentDfn.reserve (countParentDfn ()); +00593 <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfna21">getParentDfn</a> (parentDfn); +00594 +00595 <span class="comment">// For each parent</span> +00596 <a class="code" href="a04558.html#a15">uint</a> dfn; +00597 dfnIndex = <a class="code" href="a04223.html#a566">index</a>; +00598 <a class="code" href="a04558.html#a15">uint</a> parentSize = parentDfn.size(); +00599 <span class="keywordflow">for</span> (dfn=0; dfn<parentSize; dfn++) +00600 { +00601 <span class="comment">// Good element ?</span> +00602 <a class="code" href="a04558.html#a15">uint</a> <a class="code" href="a04223.html#a587">size</a> = parentDfn[dfn]->Entries.size (); +00603 <span class="keywordflow">if</span> (dfnIndex<<a class="code" href="a04223.html#a587">size</a>) +00604 <span class="keywordflow">return</span> parentDfn[dfn]; +00605 dfnIndex -= <a class="code" href="a04223.html#a587">size</a>; +00606 } +00607 +00608 <span class="comment">// Should be found..</span> +00609 <a class="code" href="a04199.html#a12">nlstop</a>; +00610 <span class="keywordflow">return</span> NULL; +00611 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormDfna27" doxytag="NLGEORGES::CFormDfn::isAnArrayEntryByName" ></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::CFormDfn::isAnArrayEntryByName </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">const std::string & </td> + <td class="mdname1" valign="top" nowrap> <em>name</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="a02547.html#NLGEORGES_1_1UFormDfna15">NLGEORGES::UFormDfn</a>. +<p> +Definition at line <a class="el" href="a05726.html#l00763">763</a> of file <a class="el" href="a05726.html">form_dfn.cpp</a>. +<p> +References <a class="el" href="a05726.html#l00532">NLGEORGES::CFormDfn::CEntry::getArrayFlag()</a>. +<p> +<div class="fragment"><pre>00764 { +00765 CFormDfn::CEntry *entry; +00766 <span class="keywordflow">if</span> (const_cast<CFormDfn*>(<span class="keyword">this</span>)->getEntryByName (name, &entry)) +00767 { +00768 <span class="keywordflow">return</span> entry->getArrayFlag(); +00769 } +00770 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00771 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormDfnd0" doxytag="NLGEORGES::CFormDfn::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::CFormDfn::read </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">xmlNodePtr </td> + <td class="mdname" nowrap> <em>doc</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>bool </td> + <td class="mdname" nowrap> <em>forceLoad</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>filename</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"><code> [private]</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="a05726.html#l00118">118</a> of file <a class="el" href="a05726.html">form_dfn.cpp</a>. +<p> +References <a class="el" href="a05727.html#l00245">Entries</a>, <a class="el" href="a05730.html#l00302">NLGEORGES::CFormLoader::loadFormDfn()</a>, <a class="el" href="a05730.html#l00069">NLGEORGES::CFormLoader::loadType()</a>, <a class="el" href="a05622.html#l00290">nlassert</a>, <a class="el" href="a05727.html#l00242">Parents</a>, <a class="el" href="a05773.html#l00121">NLGEORGES::CFileHeader::read()</a>, <a class="el" href="a05726.html#l00040">stricmp</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="a05726.html#l00848">warning()</a>. +<p> +<div class="fragment"><pre>00119 { +00120 <span class="comment">// Save filename</span> +00121 <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr0">_Filename</a> = CFile::getFilename (filename); +00122 +00123 <span class="comment">// Check node name</span> +00124 <span class="keywordflow">if</span> ( ((<span class="keyword">const</span> <span class="keywordtype">char</span>*)root->name == NULL) || (strcmp ((<span class="keyword">const</span> <span class="keywordtype">char</span>*)root->name, <span class="stringliteral">"DFN"</span>) != 0) ) +00125 { +00126 <span class="comment">// Throw exception</span> +00127 <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfna31">warning</a> (<span class="keyword">true</span>, <span class="stringliteral">"read"</span>, <span class="stringliteral">"XML Syntax error in block line %d, node (%s) should be DFN."</span>, (<span class="keywordtype">int</span>)root->content, root->name); +00128 } +00129 +00130 <span class="comment">// Count the parent</span> +00131 <a class="code" href="a04558.html#a15">uint</a> parentCount = CIXml::countChildren (root, <span class="stringliteral">"PARENT"</span>); +00132 <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr2">Parents</a>.resize (parentCount); +00133 +00134 <span class="comment">// For each element entry</span> +00135 <a class="code" href="a04558.html#a15">uint</a> parentNumber = 0; +00136 xmlNodePtr parent = CIXml::getFirstChildNode (root, <span class="stringliteral">"PARENT"</span>); +00137 <span class="keywordflow">while</span> (parentNumber<parentCount) +00138 { +00139 <span class="comment">// Get the Parent</span> +00140 <span class="keyword">const</span> <span class="keywordtype">char</span> *parentFilename = (<span class="keyword">const</span> <span class="keywordtype">char</span>*)xmlGetProp (parent, (xmlChar*)<span class="stringliteral">"Name"</span>); +00141 <span class="keywordflow">if</span> (parentFilename) +00142 { +00143 <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr2">Parents</a>[parentNumber].ParentFilename = parentFilename; +00144 +00145 <span class="comment">// Delete the value</span> +00146 xmlFree ((<span class="keywordtype">void</span>*)parentFilename); +00147 +00148 <span class="comment">// Load the parent</span> +00149 <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr2">Parents</a>[parentNumber].Parent = loader.loadFormDfn (Parents[parentNumber].ParentFilename.c_str (), forceLoad); +00150 <span class="keywordflow">if</span> ((<a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr2">Parents</a>[parentNumber].Parent == NULL) && !forceLoad) +00151 { +00152 <span class="comment">// Throw exception</span> +00153 <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfna31">warning</a> (<span class="keyword">true</span>, <span class="stringliteral">"read"</span>, <span class="stringliteral">"Can't load parent DFN file (%s)."</span>, Parents[parentNumber].ParentFilename.c_str ()); +00154 } +00155 } +00156 <span class="keywordflow">else</span> +00157 { +00158 <span class="comment">// Throw exception</span> +00159 <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfna31">warning</a> (<span class="keyword">true</span>, <span class="stringliteral">"read"</span>, <span class="stringliteral">"XML Syntax error in block (%s) line %d, aguments Name not found."</span>, +00160 parent->name, (<span class="keywordtype">int</span>)parent->content); +00161 } +00162 +00163 <span class="comment">// Next parent</span> +00164 parent = CIXml::getNextChildNode (parent, <span class="stringliteral">"PARENT"</span>); +00165 parentNumber++; +00166 } +00167 +00168 <span class="comment">// Count the element children</span> +00169 <a class="code" href="a04558.html#a15">uint</a> childCount = CIXml::countChildren (root, <span class="stringliteral">"ELEMENT"</span>); +00170 +00171 <span class="comment">// Resize the element table</span> +00172 <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr1">Entries</a>.resize (childCount); +00173 +00174 <span class="comment">// For each element entry</span> +00175 <a class="code" href="a04558.html#a15">uint</a> childNumber = 0; +00176 xmlNodePtr child = CIXml::getFirstChildNode (root, <span class="stringliteral">"ELEMENT"</span>); +00177 <span class="keywordflow">while</span> (childNumber<childCount) +00178 { +00179 <span class="comment">// Checks</span> +00180 <a class="code" href="a04199.html#a6">nlassert</a> (child); +00181 +00182 <span class="comment">// Get the name</span> +00183 <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="a04223.html#a658">value</a> = (<span class="keyword">const</span> <span class="keywordtype">char</span>*)xmlGetProp (child, (xmlChar*)<span class="stringliteral">"Name"</span>); +00184 <span class="keywordflow">if</span> (<a class="code" href="a04223.html#a658">value</a>) +00185 { +00186 <span class="comment">// Store the value</span> +00187 <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr1">Entries</a>[childNumber].Name = <a class="code" href="a04223.html#a658">value</a>; +00188 +00189 <span class="comment">// Delete the value</span> +00190 xmlFree ((<span class="keywordtype">void</span>*)value); +00191 +00192 <span class="comment">// Reset</span> +00193 <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr1">Entries</a>[childNumber].Dfn = NULL; +00194 <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr1">Entries</a>[childNumber].Type = NULL; +00195 <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr1">Entries</a>[childNumber].Default.clear (); +00196 +00197 <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="a05377.html#a2">filename</a> = (<span class="keyword">const</span> <span class="keywordtype">char</span>*)xmlGetProp (child, (xmlChar*)<span class="stringliteral">"Filename"</span>); +00198 +00199 <span class="keywordflow">if</span> ( <a class="code" href="a05377.html#a2">filename</a> ) +00200 { +00201 <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr1">Entries</a>[childNumber].Filename = <a class="code" href="a05377.html#a2">filename</a>; +00202 +00203 <span class="comment">// Delete the value</span> +00204 xmlFree ((<span class="keywordtype">void</span>*)filename); +00205 } +00206 <span class="keywordflow">else</span> +00207 { +00208 <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr1">Entries</a>[childNumber].Filename.clear (); +00209 } +00210 +00211 <span class="keyword">const</span> <span class="keywordtype">char</span> *filenameExt = (<span class="keyword">const</span> <span class="keywordtype">char</span>*)xmlGetProp (child, (xmlChar*)<span class="stringliteral">"FilenameExt"</span>); +00212 <span class="keywordflow">if</span> ( filenameExt ) +00213 { +00214 <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr1">Entries</a>[childNumber].FilenameExt = filenameExt; +00215 +00216 <span class="comment">// Delete the value</span> +00217 xmlFree ((<span class="keywordtype">void</span>*)filenameExt); +00218 } +00219 <span class="keywordflow">else</span> +00220 { +00221 <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr1">Entries</a>[childNumber].FilenameExt = <span class="stringliteral">"*.*"</span>; +00222 } +00223 +00224 <span class="comment">// Read the type</span> +00225 <span class="keyword">const</span> <span class="keywordtype">char</span> *typeName = (<span class="keyword">const</span> <span class="keywordtype">char</span>*)xmlGetProp (child, (xmlChar*)<span class="stringliteral">"Type"</span>); +00226 <span class="keywordflow">if</span> (typeName) +00227 { +00228 <span class="keywordtype">bool</span> <a class="code" href="a04223.html#a581">type</a> = <span class="keyword">false</span>; +00229 <span class="keywordtype">bool</span> dfn = <span class="keyword">false</span>; +00230 <span class="keywordflow">if</span> (<a class="code" href="a04303.html#a0">stricmp</a> (typeName, <span class="stringliteral">"Type"</span>) == 0) +00231 { +00232 <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr1">Entries</a>[childNumber].TypeElement = UFormDfn::EntryType; +00233 <a class="code" href="a04223.html#a581">type</a> = <span class="keyword">true</span>; +00234 +00235 <span class="comment">// Load the filename</span> +00236 <span class="keywordflow">if</span> (!<a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr1">Entries</a>[childNumber].Filename.empty ()) +00237 { +00238 <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr1">Entries</a>[childNumber].Type = loader.loadType (Entries[childNumber].Filename.c_str ()); +00239 <span class="keywordflow">if</span> ((<a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr1">Entries</a>[childNumber].Type == NULL) && !forceLoad) +00240 { +00241 <span class="comment">// Throw exception</span> +00242 <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfna31">warning</a> (<span class="keyword">true</span>, <span class="stringliteral">"read"</span>, <span class="stringliteral">"In XML block (%s) line %d, file not found %s."</span>, +00243 child->name, (<span class="keywordtype">int</span>)child->content, Entries[childNumber].Filename.c_str ()); +00244 } +00245 +00246 <span class="comment">// Read the default value</span> +00247 <span class="keyword">const</span> <span class="keywordtype">char</span> *defaultName = (<span class="keyword">const</span> <span class="keywordtype">char</span>*)xmlGetProp (child, (xmlChar*)<span class="stringliteral">"Default"</span>); +00248 <span class="keywordflow">if</span> (defaultName) +00249 { +00250 <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr1">Entries</a>[childNumber].Default = defaultName; +00251 +00252 <span class="comment">// Delete the value</span> +00253 xmlFree ((<span class="keywordtype">void</span>*)defaultName); +00254 } +00255 } +00256 <span class="keywordflow">else</span> +00257 { +00258 <span class="comment">// Throw exception</span> +00259 <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfna31">warning</a> (<span class="keyword">true</span>, <span class="stringliteral">"read"</span>, <span class="stringliteral">"XML In block (%s) line %d, no filename found for the .typ file."</span>, +00260 child->name, (<span class="keywordtype">int</span>)child->content, Entries[childNumber].Filename.c_str ()); +00261 } +00262 } +00263 <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<a class="code" href="a04303.html#a0">stricmp</a> (typeName, <span class="stringliteral">"Dfn"</span>) == 0) +00264 { +00265 <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr1">Entries</a>[childNumber].TypeElement = UFormDfn::EntryDfn; +00266 dfn = <span class="keyword">true</span>; +00267 +00268 <span class="comment">// Load the filename</span> +00269 <span class="keywordflow">if</span> (!<a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr1">Entries</a>[childNumber].Filename.empty ()) +00270 { +00271 <span class="comment">// Load the filename</span> +00272 <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr1">Entries</a>[childNumber].Dfn = loader.loadFormDfn (Entries[childNumber].Filename.c_str (), forceLoad); +00273 <span class="keywordflow">if</span> ((<a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr1">Entries</a>[childNumber].Dfn == NULL) && !forceLoad) +00274 { +00275 <span class="comment">// Throw exception</span> +00276 <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfna31">warning</a> (<span class="keyword">true</span>, <span class="stringliteral">"read"</span>, <span class="stringliteral">"XML In block (%s) line %d, file not found %s."</span>, +00277 child->name, (<span class="keywordtype">int</span>)child->content, Entries[childNumber].Filename.c_str ()); +00278 } +00279 } +00280 <span class="keywordflow">else</span> +00281 { +00282 <span class="comment">// Throw exception</span> +00283 <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfna31">warning</a> (<span class="keyword">true</span>, <span class="stringliteral">"read"</span>, <span class="stringliteral">"XML In block (%s) line %d, no filename found for the .typ file."</span>, +00284 child->name, (<span class="keywordtype">int</span>)child->content, Entries[childNumber].Filename.c_str ()); +00285 } +00286 } +00287 <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<a class="code" href="a04303.html#a0">stricmp</a> (typeName, <span class="stringliteral">"DfnPointer"</span>) == 0) +00288 { +00289 <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr1">Entries</a>[childNumber].TypeElement = UFormDfn::EntryVirtualDfn; +00290 } +00291 <span class="keywordflow">else</span> +00292 { +00293 <span class="comment">// Throw exception</span> +00294 <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfna31">warning</a> (<span class="keyword">true</span>, <span class="stringliteral">"read"</span>, <span class="stringliteral">"XML Syntax error in block (%s) line %d, element has not a valid type name attribut \"Type = %s\"."</span>, +00295 child->name, (<span class="keywordtype">int</span>)child->content, typeName); +00296 } +00297 +00298 <span class="comment">// Delete the value</span> +00299 xmlFree ((<span class="keywordtype">void</span>*)typeName); +00300 } +00301 <span class="keywordflow">else</span> +00302 { +00303 <span class="comment">// Throw exception</span> +00304 <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfna31">warning</a> (<span class="keyword">true</span>, <span class="stringliteral">"read"</span>, <span class="stringliteral">"XML Syntax error in block (%s) line %d, element has no type name attribut \"Type = [Type][Dfn][DfnPointer]\"."</span>, +00305 child->name, (<span class="keywordtype">int</span>)child->content); +00306 } +00307 +00308 <span class="comment">// Get the array attrib</span> +00309 <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr1">Entries</a>[childNumber].Array = <span class="keyword">false</span>; +00310 <span class="keyword">const</span> <span class="keywordtype">char</span>* arrayFlag = (<span class="keyword">const</span> <span class="keywordtype">char</span>*)xmlGetProp (child, (xmlChar*)<span class="stringliteral">"Array"</span>); +00311 <span class="keywordflow">if</span> (arrayFlag) +00312 { +00313 <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr1">Entries</a>[childNumber].Array = (<a class="code" href="a04303.html#a0">stricmp</a> (arrayFlag, <span class="stringliteral">"true"</span>) == 0); +00314 +00315 <span class="comment">// Delete the value</span> +00316 xmlFree ((<span class="keywordtype">void</span>*)arrayFlag); +00317 } +00318 } +00319 <span class="keywordflow">else</span> +00320 { +00321 <span class="comment">// Throw exception</span> +00322 <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfna31">warning</a> (<span class="keyword">true</span>, <span class="stringliteral">"read"</span>, <span class="stringliteral">"XML Syntax error in block (%s) line %d, aguments Name not found."</span>, +00323 root->name, (<span class="keywordtype">int</span>)root->content); +00324 } +00325 +00326 <span class="comment">// Next child</span> +00327 child = CIXml::getNextChildNode (child, <span class="stringliteral">"ELEMENT"</span>); +00328 childNumber++; +00329 } +00330 +00331 <span class="comment">// Read the header</span> +00332 <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfno1">Header</a>.read (root); +00333 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormDfna28" doxytag="NLGEORGES::CFormDfn::setNumEntry" ></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::CFormDfn::setNumEntry </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></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="a05726.html#l00428">428</a> of file <a class="el" href="a05726.html">form_dfn.cpp</a>. +<p> +References <a class="el" href="a05727.html#l00245">Entries</a>, <a class="el" href="a05646.html#l00645">size</a>, and <a class="el" href="a05981.html#l00105">uint</a>. +<p> +<div class="fragment"><pre>00429 { +00430 <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr1">Entries</a>.resize (size); +00431 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormDfna29" doxytag="NLGEORGES::CFormDfn::setNumParent" ></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::CFormDfn::setNumParent </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></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="a05726.html#l00449">449</a> of file <a class="el" href="a05726.html">form_dfn.cpp</a>. +<p> +References <a class="el" href="a05727.html#l00242">Parents</a>, <a class="el" href="a05646.html#l00645">size</a>, and <a class="el" href="a05981.html#l00105">uint</a>. +<p> +<div class="fragment"><pre>00450 { +00451 <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr2">Parents</a>.resize (size); +00452 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormDfna30" doxytag="NLGEORGES::CFormDfn::setParent" ></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::CFormDfn::setParent </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>parent</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 char * </td> + <td class="mdname" nowrap> <em>filename</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="a05726.html#l00456">456</a> of file <a class="el" href="a05726.html">form_dfn.cpp</a>. +<p> +References <a class="el" href="a05730.html#l00302">NLGEORGES::CFormLoader::loadFormDfn()</a>, <a class="el" href="a05727.html#l00242">Parents</a>, and <a class="el" href="a05981.html#l00105">uint</a>. +<p> +<div class="fragment"><pre>00457 { +00458 <span class="keywordflow">if</span> (strcmp (filename, <span class="stringliteral">""</span>)==0) +00459 <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr2">Parents</a>[parent].Parent = NULL; +00460 <span class="keywordflow">else</span> +00461 <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr2">Parents</a>[parent].Parent = loader.loadFormDfn (filename, <span class="keyword">false</span>); +00462 <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr2">Parents</a>[parent].ParentFilename = <a class="code" href="a05377.html#a2">filename</a>; +00463 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormDfna31" doxytag="NLGEORGES::CFormDfn::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::CFormDfn::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</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="a05726.html#l00848">848</a> of file <a class="el" href="a05726.html">form_dfn.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="a05726.html#l00337">countParentDfn()</a>, <a class="el" href="a05726.html#l00718">getEntryDfn()</a>, <a class="el" href="a05726.html#l00656">getEntryFilename()</a>, <a class="el" href="a05726.html#l00674">getEntryFilenameExt()</a>, <a class="el" href="a05726.html#l00705">getEntryName()</a>, <a class="el" href="a05726.html#l00642">getEntryType()</a>, <a class="el" href="a05726.html#l00800">getParent()</a>, <a class="el" href="a05726.html#l00358">getParentDfn()</a>, <a class="el" href="a05726.html#l00814">getParentFilename()</a>, and <a class="el" href="a05726.html#l00118">read()</a>. +<p> +<div class="fragment"><pre>00849 { +00850 <span class="comment">// Make a buffer string</span> +00851 va_list args; +00852 va_start( args, format ); +00853 <span class="keywordtype">char</span> <a class="code" href="a04223.html#a589">buffer</a>[1024]; +00854 vsnprintf( buffer, 1024, format, args ); +00855 va_end( args ); +00856 +00857 <span class="comment">// Set the warning</span> +00858 <a class="code" href="a05374.html#a0">NLGEORGES::warning</a> (exception, <span class="stringliteral">"(CFormDfn::%s) in form DFN (%s) : %s"</span>, function, <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr0">_Filename</a>.c_str (), <a class="code" href="a04223.html#a589">buffer</a>); +00859 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormDfna32" doxytag="NLGEORGES::CFormDfn::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"> void NLGEORGES::CFormDfn::write </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">xmlDocPtr </td> + <td class="mdname" nowrap> <em>root</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>filename</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>bool </td> + <td class="mdname" nowrap> <em>georges4CVS</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="a05726.html#l00053">53</a> of file <a class="el" href="a05726.html">form_dfn.cpp</a>. +<p> +References <a class="el" href="a05727.html#l00245">Entries</a>, <a class="el" href="a05727.html#l00242">Parents</a>, <a class="el" href="a05981.html#l00105">uint</a>, and <a class="el" href="a05773.html#l00055">NLGEORGES::CFileHeader::write()</a>. +<p> +<div class="fragment"><pre>00054 { +00055 <span class="comment">// Save filename</span> +00056 <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr0">_Filename</a> = CFile::getFilename (filename); +00057 +00058 <span class="comment">// Create the first node</span> +00059 xmlNodePtr node = xmlNewDocNode (doc, NULL, (<span class="keyword">const</span> xmlChar*)<span class="stringliteral">"DFN"</span>, NULL); +00060 xmlDocSetRootElement (doc, node); +00061 +00062 <span class="comment">// Write elements</span> +00063 <a class="code" href="a04558.html#a15">uint</a> parent; +00064 <span class="keywordflow">for</span> (parent=0; parent<<a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr2">Parents</a>.size(); parent++) +00065 { +00066 <span class="comment">// Parent name not empty ?</span> +00067 <span class="keywordflow">if</span> (!<a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr2">Parents</a>[parent].ParentFilename.empty ()) +00068 { +00069 <span class="comment">// Parent node</span> +00070 xmlNodePtr parentNode = xmlNewChild ( node, NULL, (<span class="keyword">const</span> xmlChar*)<span class="stringliteral">"PARENT"</span>, NULL); +00071 +00072 <span class="comment">// Save parent</span> +00073 xmlSetProp (parentNode, (<span class="keyword">const</span> xmlChar*)<span class="stringliteral">"Name"</span>, (<span class="keyword">const</span> xmlChar*)Parents[parent].ParentFilename.c_str()); +00074 } +00075 } +00076 +00077 <span class="comment">// Write elements</span> +00078 <a class="code" href="a04558.html#a15">uint</a> elm; +00079 <span class="keywordflow">for</span> (elm=0; elm<<a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr1">Entries</a>.size(); elm++) +00080 { +00081 <span class="comment">// Add a node</span> +00082 xmlNodePtr elmPtr = xmlNewChild ( node, NULL, (<span class="keyword">const</span> xmlChar*)<span class="stringliteral">"ELEMENT"</span>, NULL); +00083 xmlSetProp (elmPtr, (<span class="keyword">const</span> xmlChar*)<span class="stringliteral">"Name"</span>, (<span class="keyword">const</span> xmlChar*)Entries[elm].Name.c_str()); +00084 +00085 <span class="comment">// What kind of element</span> +00086 <span class="keywordflow">switch</span> (<a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr1">Entries</a>[elm].TypeElement) +00087 { +00088 <span class="keywordflow">case</span> UFormDfn::EntryType: +00089 xmlSetProp (elmPtr, (<span class="keyword">const</span> xmlChar*)<span class="stringliteral">"Type"</span>, (<span class="keyword">const</span> xmlChar*)<span class="stringliteral">"Type"</span>); +00090 xmlSetProp (elmPtr, (<span class="keyword">const</span> xmlChar*)<span class="stringliteral">"Filename"</span>, (<span class="keyword">const</span> xmlChar*)Entries[elm].Filename.c_str()); +00091 <span class="keywordflow">if</span> ((!<a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr1">Entries</a>[elm].FilenameExt.empty ()) && <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr1">Entries</a>[elm].FilenameExt != <span class="stringliteral">"*.*"</span>) +00092 xmlSetProp (elmPtr, (<span class="keyword">const</span> xmlChar*)<span class="stringliteral">"FilenameExt"</span>, (<span class="keyword">const</span> xmlChar*)Entries[elm].FilenameExt.c_str()); +00093 <span class="keywordflow">break</span>; +00094 <span class="keywordflow">case</span> UFormDfn::EntryDfn: +00095 xmlSetProp (elmPtr, (<span class="keyword">const</span> xmlChar*)<span class="stringliteral">"Type"</span>, (<span class="keyword">const</span> xmlChar*)<span class="stringliteral">"Dfn"</span>); +00096 xmlSetProp (elmPtr, (<span class="keyword">const</span> xmlChar*)<span class="stringliteral">"Filename"</span>, (<span class="keyword">const</span> xmlChar*)Entries[elm].Filename.c_str()); +00097 <span class="keywordflow">break</span>; +00098 <span class="keywordflow">case</span> UFormDfn::EntryVirtualDfn: +00099 xmlSetProp (elmPtr, (<span class="keyword">const</span> xmlChar*)<span class="stringliteral">"Type"</span>, (<span class="keyword">const</span> xmlChar*)<span class="stringliteral">"DfnPointer"</span>); +00100 <span class="keywordflow">break</span>; +00101 } +00102 +00103 <span class="comment">// Is an array ?</span> +00104 <span class="keywordflow">if</span> (<a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr1">Entries</a>[elm].Array) +00105 xmlSetProp (elmPtr, (<span class="keyword">const</span> xmlChar*)<span class="stringliteral">"Array"</span>, (<span class="keyword">const</span> xmlChar*)<span class="stringliteral">"true"</span>); +00106 +00107 <span class="comment">// Default value for type</span> +00108 <span class="keywordflow">if</span> ((<a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr1">Entries</a>[elm].TypeElement == UFormDfn::EntryType) && (!<a class="code" href="a02546.html#NLGEORGES_1_1CFormDfnr1">Entries</a>[elm].Default.empty ())) +00109 xmlSetProp (elmPtr, (<span class="keyword">const</span> xmlChar*)<span class="stringliteral">"Default"</span>, (<span class="keyword">const</span> xmlChar*)Entries[elm].Default.c_str ()); +00110 } +00111 +00112 <span class="comment">// Header</span> +00113 <a class="code" href="a02546.html#NLGEORGES_1_1CFormDfno1">Header</a>.write (node, georges4CVS); +00114 } +</pre></div> </td> + </tr> +</table> +<hr><h2>Friends And Related Function Documentation</h2> +<a class="anchor" name="NLGEORGES_1_1CFormDfnn0" doxytag="NLGEORGES::CFormDfn::CForm" ></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"> friend class <a class="el" href="a02544.html">CForm</a><code> [friend]</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="a05727.html#l00048">48</a> of file <a class="el" href="a05727.html">form_dfn.h</a>. </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormDfnn1" doxytag="NLGEORGES::CFormDfn::CFormElm" ></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"> friend class <a class="el" href="a02550.html">CFormElm</a><code> [friend]</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="a05727.html#l00050">50</a> of file <a class="el" href="a05727.html">form_dfn.h</a>. </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormDfnn2" doxytag="NLGEORGES::CFormDfn::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"> friend class <a class="el" href="a02555.html">CFormElmStruct</a><code> [friend]</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="a05727.html#l00052">52</a> of file <a class="el" href="a05727.html">form_dfn.h</a>. </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormDfnn3" doxytag="NLGEORGES::CFormDfn::CFormLoader" ></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"> friend class <a class="el" href="a02558.html">CFormLoader</a><code> [friend]</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="a05727.html#l00051">51</a> of file <a class="el" href="a05727.html">form_dfn.h</a>. </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormDfnn4" doxytag="NLGEORGES::CFormDfn::convertDfnFile" ></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 convertDfnFile </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">const char * </td> + <td class="mdname" nowrap> <em>oldFileName</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>newFileName</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"><code> [friend]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1UTypen0" doxytag="NLGEORGES::CFormDfn::CPtrInfo" ></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"> friend struct CPtrInfo<code> [friend, 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="a06402.html#l00067">67</a> of file <a class="el" href="a06402.html">smart_ptr.h</a>. </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormDfnn6" doxytag="NLGEORGES::CFormDfn::CType" ></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"> friend class <a class="el" href="a03622.html">CType</a><code> [friend]</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="a05727.html#l00049">49</a> of file <a class="el" href="a05727.html">form_dfn.h</a>. </td> + </tr> +</table> +<hr><h2>Field Documentation</h2> +<a class="anchor" name="NLGEORGES_1_1CFormDfnr0" doxytag="NLGEORGES::CFormDfn::_Filename" ></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::string <a class="el" href="a02546.html#NLGEORGES_1_1CFormDfnr0">NLGEORGES::CFormDfn::_Filename</a><code> [private]</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="a05727.html#l00251">251</a> of file <a class="el" href="a05727.html">form_dfn.h</a>. </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1UTypeo0" doxytag="NLGEORGES::CFormDfn::crefs" ></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#a14">sint</a> <a class="el" href="a02209.html#NLGEORGES_1_1UTypeo0">NLMISC::CRefCount::crefs</a><code> [mutable, 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="a06402.html#l00079">79</a> of file <a class="el" href="a06402.html">smart_ptr.h</a>. +<p> +Referenced by <a class="el" href="a06402.html#l00085">NLMISC::CRefCount::CRefCount()</a>, <a class="el" href="a06402.html#l00070">NLMISC::CRefCount::getRefCount()</a>, and <a class="el" href="a06403.html#l00044">NLMISC::CRefCount::~CRefCount()</a>. </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormDfnr1" doxytag="NLGEORGES::CFormDfn::Entries" ></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="a02548.html">CEntry</a>> <a class="el" href="a02546.html#NLGEORGES_1_1CFormDfnr1">NLGEORGES::CFormDfn::Entries</a><code> [private]</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="a05727.html#l00245">245</a> of file <a class="el" href="a05727.html">form_dfn.h</a>. +<p> +Referenced by <a class="el" href="a05726.html#l00863">getDependencies()</a>, <a class="el" href="a05726.html#l00435">getEntry()</a>, <a class="el" href="a05726.html#l00734">getEntryByName()</a>, <a class="el" href="a05726.html#l00718">getEntryDfn()</a>, <a class="el" href="a05726.html#l00656">getEntryFilename()</a>, <a class="el" href="a05726.html#l00674">getEntryFilenameExt()</a>, <a class="el" href="a05726.html#l00687">getEntryIndexByName()</a>, <a class="el" href="a05726.html#l00705">getEntryName()</a>, <a class="el" href="a05726.html#l00642">getEntryType()</a>, <a class="el" href="a05728.html#l00764">NLGEORGES::CFormElm::getIternalNodeByName()</a>, <a class="el" href="a05726.html#l00421">getNumEntry()</a>, <a class="el" href="a05726.html#l00118">read()</a>, <a class="el" href="a05726.html#l00428">setNumEntry()</a>, and <a class="el" href="a05726.html#l00053">write()</a>. </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormDfno1" doxytag="NLGEORGES::CFormDfn::Header" ></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="a02528.html">CFileHeader</a> <a class="el" href="a02546.html#NLGEORGES_1_1CFormDfno1">NLGEORGES::CFormDfn::Header</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="a05727.html#l00235">235</a> of file <a class="el" href="a05727.html">form_dfn.h</a>. </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1UTypes0" doxytag="NLGEORGES::CFormDfn::NullPtrInfo" ></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"> CRefCount::CPtrInfo <a class="el" href="a02209.html#NLGEORGES_1_1UTypes0">NLMISC::CRefCount::NullPtrInfo</a><code> [static, inherited]</code> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Referenced by <a class="el" href="a06402.html#l00085">NLMISC::CRefCount::CRefCount()</a>. </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormDfnr2" doxytag="NLGEORGES::CFormDfn::Parents" ></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="a02549.html">CParent</a>> <a class="el" href="a02546.html#NLGEORGES_1_1CFormDfnr2">NLGEORGES::CFormDfn::Parents</a><code> [private]</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="a05727.html#l00242">242</a> of file <a class="el" href="a05727.html">form_dfn.h</a>. +<p> +Referenced by <a class="el" href="a05726.html#l00337">countParentDfn()</a>, <a class="el" href="a05726.html#l00863">getDependencies()</a>, <a class="el" href="a05726.html#l00400">getNumParent()</a>, <a class="el" href="a05726.html#l00793">getNumParents()</a>, <a class="el" href="a05726.html#l00407">getParent()</a>, <a class="el" href="a05726.html#l00358">getParentDfn()</a>, <a class="el" href="a05726.html#l00414">getParentFilename()</a>, <a class="el" href="a05726.html#l00118">read()</a>, <a class="el" href="a05726.html#l00449">setNumParent()</a>, <a class="el" href="a05726.html#l00456">setParent()</a>, and <a class="el" href="a05726.html#l00053">write()</a>. </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1UTypeo1" doxytag="NLGEORGES::CFormDfn::pinfo" ></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"> CPtrInfo* <a class="el" href="a02209.html#NLGEORGES_1_1UTypeo1">NLMISC::CRefCount::pinfo</a><code> [mutable, 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="a06402.html#l00080">80</a> of file <a class="el" href="a06402.html">smart_ptr.h</a>. +<p> +Referenced by <a class="el" href="a06402.html#l00085">NLMISC::CRefCount::CRefCount()</a>, and <a class="el" href="a06403.html#l00044">NLMISC::CRefCount::~CRefCount()</a>. </td> + </tr> +</table> +<a class="anchor" name="NLGEORGES_1_1CFormDfnr3" doxytag="NLGEORGES::CFormDfn::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="a02546.html#NLGEORGES_1_1CFormDfnr3">NLGEORGES::CFormDfn::Round</a><code> [mutable, private]</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="a05727.html#l00248">248</a> of file <a class="el" href="a05727.html">form_dfn.h</a>. +<p> +Referenced by <a class="el" href="a05727.html#l00057">CFormDfn()</a>. </td> + </tr> +</table> +<hr>The documentation for this class was generated from the following files:<ul> +<li><a class="el" href="a05727.html">form_dfn.h</a><li><a class="el" href="a05726.html">form_dfn.cpp</a></ul> +<hr size="1"><address style="align: right;"><small>Generated on Tue Mar 16 12:40:45 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> |