diff options
Diffstat (limited to 'docs/doxygen/nel/baseai_8cpp-source.html')
-rw-r--r-- | docs/doxygen/nel/baseai_8cpp-source.html | 728 |
1 files changed, 728 insertions, 0 deletions
diff --git a/docs/doxygen/nel/baseai_8cpp-source.html b/docs/doxygen/nel/baseai_8cpp-source.html new file mode 100644 index 00000000..64ccb316 --- /dev/null +++ b/docs/doxygen/nel/baseai_8cpp-source.html @@ -0,0 +1,728 @@ +<!doctype html public "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd"> +<HTML> +<HEAD> + <TITLE>nevrax.org : docs</TITLE> + <LINK REL=stylesheet TYPE="text/css" HREF="http://www.nevrax.org/inc/css/nevrax.css"> + <link href="doxygen.css" rel="stylesheet" type="text/css"> +</HEAD> +<BODY MARGINHEIGHT="0" MARGINWIDTH="0"> + +<!-- uplinks --> +<TABLE CELLSPACING=0 CELLPADDING=0 BORDER=0> + <TR> + <TD WIDTH=16><IMG SRC="http://www.nevrax.org/inc/img/pixel.gif" WIDTH="16" HEIGHT="16" BORDER=0 ALT=""></TD> + <TD WIDTH=140 BGCOLOR=#dddddd><IMG SRC="http://www.nevrax.org/inc/img/pixel.gif" WIDTH="140" HEIGHT="16" BORDER=0 ALT=""></TD> + <TD WIDTH=16><IMG SRC="http://www.nevrax.org/inc/img/pixel.gif" WIDTH="16" HEIGHT="16" BORDER=0 ALT=""></TD> + <TD><IMG width=6 height=14 SRC="http://www.nevrax.org/inc/img/reddots.gif" ALT="#" VSPACE=2 HSPACE=2 BORDER=0 ></TD><TD VALIGN=middle> <A CLASS=uplinks HREF=http://www.nevrax.org><b>Home</B></FONT></A> </TD> + <TD><IMG width=6 height=14 SRC="http://www.nevrax.org/inc/img/reddots.gif" ALT="#" VSPACE=2 HSPACE=2 BORDER=0 ></TD><TD VALIGN=middle> <A CLASS=uplinks HREF=http://www.nevrax.com><b>nevrax.com</B></FONT></A> </TD> + </TR> +</TABLE> + +<!-- banner Nevrax --> +<TABLE CELLSPACING=0 CELLPADDING=0 BORDER=0 WIDTH=100%> + <TR><TD BGCOLOR="#000000" BACKGROUND="http://www.nevrax.org/inc/img/black_banner.jpg"><A HREF="http://www.nevrax.org"><IMG SRC="http://www.nevrax.org/inc/img/nevrax.gif" WIDTH="170" HEIGHT="45" BORDER=0 ALT="Nevrax" ></A></TD></TR> +</TABLE> + +<!-- main table --> +<TABLE CELLSPACING=0 CELLPADDING=0 BORDER=0 height=100%> + <TR> + <TD WIDTH=16><IMG SRC="http://www.nevrax.org/inc/img/pixel.gif" WIDTH="16" HEIGHT="10" BORDER=0 ALT=""></TD> + <TD WIDTH=140 BGCOLOR=#dddddd VALIGN=TOP ALIGN=middle><IMG SRC="http://www.nevrax.org/inc/img/pixel.gif" WIDTH="140" HEIGHT="10" BORDER=0 ALT=""> + + <!------ Begin Box ------> + <TABLE BORDER=0 CELLSPACING=0 CELLPADDING=0 BGCOLOR=black><TR><TD><TABLE border=0 cellspacing=2 cellpadding=0 width=120><tr><TD ALIGN=middle bgcolor=black> + <FONT COLOR=white FACE="sans-serif"><B>Nevrax.org</B></FONT></TD></TR><tr><td colspan=2 bgcolor=#FFFFFF> + <TABLE cellspacing=0 cellpadding=1 border=0> + <tr><td ALIGN=middle><a class='linkbox' href="http://www.nevrax.org/news/" TITLE="Rubrique news"><img width=13 height=15 hspace=5 border=0 src=http://www.nevrax.org/inc/img/picto-news.gif ALT=#></A></td><td><a class='linkbox' href="http://www.nevrax.org/news/" TITLE="News">News</a></td></tr> + <tr><td ALIGN=middle><a class='linkbox' href="http://www.nevrax.org/mail/" TITLE="Rubrique mail"><img width=15 height=11 hspace=5 border=0 src=http://www.nevrax.org/inc/img/picto-mail.gif ALT=#></A></td><td><a class='linkbox' href="http://www.nevrax.org/mail/" TITLE="Mailing list archive">Mailing-list</a></td></tr> + <tr><td ALIGN=middle><a class='linkbox' href="http://www.nevrax.org/docs/" TITLE="Rubrique docs"><img width=14 height=16 hspace=5 border=0 src=http://www.nevrax.org/inc/img/picto-docs.gif ALT=#></A></td><td><a class='linkbox' href="http://www.nevrax.org/docs/" TITLE="Documentation">Documentation</a></td></tr> + <tr><td ALIGN=middle><a class='linkbox' href="http://www.nevrax.org/cvs/" TITLE="Rubrique cvs"><img width=13 height=17 hspace=5 border=0 src=http://www.nevrax.org/inc/img/picto-cvs.gif ALT=#></A></td><td><a class='linkbox' href="http://www.nevrax.org/cvs/" TITLE="CVS Web">CVS</a></td></tr> + <tr><td ALIGN=middle><a class='linkbox' href="http://www.nevrax.org/bugs/" TITLE="Rubrique bugs"><img width=20 height=16 hspace=5 border=0 src=http://www.nevrax.org/inc/img/picto-bugs.gif ALT=#></A></td><td><a class='linkbox' href="http://www.nevrax.org/bugs/" TITLE="Bugtracking">Bugs</a></td></tr> + <tr><td ALIGN=middle><a class='linkbox' href="http://www.nevrax.org/GPL.php3" TITLE="Rubrique license"><img width=18 height=12 hspace=5 border=0 src=http://www.nevrax.org/inc/img/picto-gpl.gif ALT=#></A></td><td><a class='linkbox' href="http://www.nevrax.org/GPL.php3" TITLE="License">License</a></td></tr> + </TABLE> + </TD></TR></TABLE></TD></TR></TABLE> + <!------ End Box ------> + + </TD> + <TD WIDTH=15><IMG SRC="http://www.nevrax.org/inc/img/pixel.gif" WIDTH="16" HEIGHT="16" BORDER=0 ALT=""></TD> + <TD ALIGN=left valign=top><IMG SRC="http://www.nevrax.org/inc/img/pixel.gif" WIDTH="140" HEIGHT="10" BORDER=0 ALT=""> + +<!-- title --> +<TABLE background="http://www.nevrax.org/inc/img/redline.gif" CELLSPACING=0 CELLPADDING=0 BORDER=0 width=100%><tr><td> +<A HREF="http://www.nevrax.org/docs/"><img src="http://www.nevrax.org/inc/img/t_docs.gif" ALT="Docs" HEIGHT=20 BORDER=0></A> +</td><td><IMG SRC="http://www.nevrax.org/inc/img/pixel.gif" WIDTH="1" HEIGHT="1" BORDER=0 ALT=""> +</td></tr></table> + + +<!-- block --> +<TABLE bgcolor="#dddddd" CELLSPACING=0 CELLPADDING=0 BORDER=0 width=100%><tr><td width=1% valign=middle><img width=6 height=14 hspace=2 vspace=2 src="http://www.nevrax.org/inc/img/reddots.gif"></TD> + <TD><B>Documentation</B></TD> + <TD ALIGN=RIGHT> </td> +</tr></table> +<!-- Generated by Doxygen 1.2.14 --> +<center> +<a class="qindex" href="index.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">Compound List</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">Compound Members</a> <a class="qindex" href="globals.html">File Members</a> <a class="qindex" href="pages.html">Related Pages</a> <a class="qindexRef" doxygen="_cgi:http://www.nevrax.org/cgi-bin/nel-search.cgi" href="http://www.nevrax.org/cgi-bin/nel-search.cgi">Search</a> </center> +<hr><h1>baseai.cpp</h1><a href="baseai_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><pre>00001 +00006 <font class="comment">/* Copyright, 2000 Nevrax Ltd.</font> +00007 <font class="comment"> *</font> +00008 <font class="comment"> * This file is part of NEVRAX NEL.</font> +00009 <font class="comment"> * NEVRAX NEL is free software; you can redistribute it and/or modify</font> +00010 <font class="comment"> * it under the terms of the GNU General Public License as published by</font> +00011 <font class="comment"> * the Free Software Foundation; either version 2, or (at your option)</font> +00012 <font class="comment"> * any later version.</font> +00013 <font class="comment"></font> +00014 <font class="comment"> * NEVRAX NEL is distributed in the hope that it will be useful, but</font> +00015 <font class="comment"> * WITHOUT ANY WARRANTY; without even the implied warranty of</font> +00016 <font class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU</font> +00017 <font class="comment"> * General Public License for more details.</font> +00018 <font class="comment"></font> +00019 <font class="comment"> * You should have received a copy of the GNU General Public License</font> +00020 <font class="comment"> * along with NEVRAX NEL; see the file COPYING. If not, write to the</font> +00021 <font class="comment"> * Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,</font> +00022 <font class="comment"> * MA 02111-1307, USA.</font> +00023 <font class="comment"> */</font> +00024 <font class="preprocessor">#include "<a class="code" href="agentexport_8h.html">nel/ai/agent/agentexport.h</a>"</font> +00025 <font class="preprocessor">#include "<a class="code" href="agent__object_8h.html">nel/ai/agent/agent_object.h</a>"</font> +00026 <font class="preprocessor">#include "<a class="code" href="baseai_8h.html">nel/ai/agent/baseai.h</a>"</font> +00027 <font class="preprocessor">#include "<a class="code" href="agent__method__def_8h.html">nel/ai/agent/agent_method_def.h</a>"</font> +00028 <font class="preprocessor">#include "<a class="code" href="object__type_8h.html">nel/ai/agent/object_type.h</a>"</font> +00029 <font class="preprocessor">#include "<a class="code" href="msg_8h.html">nel/ai/agent/msg.h</a>"</font> +00030 <font class="preprocessor">#include "<a class="code" href="agent__local__mailer_8h.html">nel/ai/agent/agent_local_mailer.h</a>"</font> +00031 <font class="preprocessor">#include "<a class="code" href="performative_8h.html">nel/ai/agent/performative.h</a>"</font> +00032 <font class="preprocessor">#include "<a class="code" href="interpret__methodes_8h.html">nel/ai/script/interpret_methodes.h</a>"</font> +00033 +00034 <font class="keyword">namespace </font>NLAIAGENT +00035 { +<a name="l00036"></a><a class="code" href="classNLAIAGENT_1_1IConnectIA.html#z152_0">00036</a> <font class="keywordtype">void</font> IConnectIA::save(<a class="code" href="classNLMISC_1_1IStream.html">NLMISC::IStream</a> &os) +00037 { +00038 IRefrence::save(os); +00039 <a class="code" href="classNLAIAGENT_1_1IConnectIA.html#u2">tListiBasicCstItr</a> i = <a class="code" href="classNLAIAGENT_1_1IConnectIA.html#n0">_Connection</a>.begin(); +00040 sint32 size = <a class="code" href="classNLAIAGENT_1_1IConnectIA.html#n0">_Connection</a>.size(); +00041 os.<a class="code" href="classNLMISC_1_1IStream.html#a5">serial</a>( size ); +00042 <font class="keywordflow">while</font>(i != <a class="code" href="classNLAIAGENT_1_1IConnectIA.html#n0">_Connection</a>.end()) +00043 { +00044 IWordNumRef &<a class="code" href="driver__opengl__extension__def_8h.html#a385">r</a> = (IWordNumRef &)((<font class="keyword">const</font> IWordNumRef&)*((<font class="keyword">const</font> <a class="code" href="classNLAIAGENT_1_1IConnectIA.html#b0">IConnectIA</a> *)*i++)); +00045 os.<a class="code" href="classNLMISC_1_1IStream.html#a5">serial</a>( (<a class="code" href="classNLAIC_1_1CIdentType.html">NLAIC::CIdentType</a> &) (<a class="code" href="driver__opengl__extension__def_8h.html#a385">r</a>.getType()) ); +00046 <a class="code" href="driver__opengl__extension__def_8h.html#a385">r</a>.save(os); +00047 } +00048 +00049 i = <a class="code" href="classNLAIAGENT_1_1IConnectIA.html#n1">_Connected</a>.begin(); +00050 size = <a class="code" href="classNLAIAGENT_1_1IConnectIA.html#n1">_Connected</a>.size(); +00051 os.<a class="code" href="classNLMISC_1_1IStream.html#a5">serial</a>( size ); +00052 <font class="keywordflow">while</font>(i != <a class="code" href="classNLAIAGENT_1_1IConnectIA.html#n1">_Connected</a>.end()) +00053 { +00054 IWordNumRef &<a class="code" href="driver__opengl__extension__def_8h.html#a385">r</a> = (IWordNumRef &)((<font class="keyword">const</font> IWordNumRef&)*((<font class="keyword">const</font> <a class="code" href="classNLAIAGENT_1_1IConnectIA.html#b0">IConnectIA</a> *)*i++)); +00055 os.<a class="code" href="classNLMISC_1_1IStream.html#a5">serial</a>( (<a class="code" href="classNLAIC_1_1CIdentType.html">NLAIC::CIdentType</a> &) (<a class="code" href="driver__opengl__extension__def_8h.html#a385">r</a>.getType()) ); +00056 <a class="code" href="driver__opengl__extension__def_8h.html#a385">r</a>.save(os); +00057 } +00058 } +00059 +00062 +<a name="l00063"></a><a class="code" href="structNLAIAGENT_1_1CIdMethod.html#a4">00063</a> <font class="keywordtype">bool</font> <a class="code" href="zone__lighter_8cpp.html#a13">CIdMethod::operator < </a>(<font class="keyword">const</font> CIdMethod &a)<font class="keyword"> const</font> +00064 <font class="keyword"> </font>{ +00065 <font class="keywordflow">return</font> <a class="code" href="structNLAIAGENT_1_1CIdMethod.html#m1">Weight</a> < a.Weight; +00066 } +00067 +<a name="l00068"></a><a class="code" href="structNLAIAGENT_1_1CIdMethod.html#a5">00068</a> <font class="keyword">const</font> CIdMethod &CIdMethod::operator = (<font class="keyword">const</font> CIdMethod &a) +00069 { +00070 <a class="code" href="structNLAIAGENT_1_1CIdMethod.html#m0">Index</a> = a.Index; +00071 <a class="code" href="structNLAIAGENT_1_1CIdMethod.html#m1">Weight</a> = a.Weight; +00072 <a class="code" href="structNLAIAGENT_1_1CIdMethod.html#m2">Method</a> = a.Method; +00073 <font class="keywordflow">if</font>(<a class="code" href="structNLAIAGENT_1_1CIdMethod.html#m3">ReturnType</a> != NULL) +00074 { +00075 <a class="code" href="structNLAIAGENT_1_1CIdMethod.html#m3">ReturnType</a>->release(); +00076 } +00077 <a class="code" href="structNLAIAGENT_1_1CIdMethod.html#m3">ReturnType</a> = a.ReturnType; +00078 <font class="keywordflow">if</font>(<a class="code" href="structNLAIAGENT_1_1CIdMethod.html#m3">ReturnType</a> != NULL) <a class="code" href="structNLAIAGENT_1_1CIdMethod.html#m3">ReturnType</a>->incRef(); +00079 +00080 <font class="keywordflow">return</font> *<font class="keyword">this</font>; +00081 } +00082 +<a name="l00083"></a><a class="code" href="structNLAIAGENT_1_1CIdMethod.html#a0">00083</a> CIdMethod::CIdMethod(<font class="keyword">const</font> CIdMethod &a) +00084 { +00085 <a class="code" href="structNLAIAGENT_1_1CIdMethod.html#m0">Index</a> = a.Index; +00086 <a class="code" href="structNLAIAGENT_1_1CIdMethod.html#m1">Weight</a> = a.Weight; +00087 <a class="code" href="structNLAIAGENT_1_1CIdMethod.html#m2">Method</a> = a.Method; +00088 <a class="code" href="structNLAIAGENT_1_1CIdMethod.html#m3">ReturnType</a> = a.ReturnType; +00089 <font class="keywordflow">if</font>(<a class="code" href="structNLAIAGENT_1_1CIdMethod.html#m3">ReturnType</a> != NULL) +00090 <a class="code" href="structNLAIAGENT_1_1CIdMethod.html#m3">ReturnType</a>->incRef(); +00091 } +00092 +<a name="l00093"></a><a class="code" href="structNLAIAGENT_1_1CIdMethod.html#a1">00093</a> CIdMethod::CIdMethod(sint32 i, <font class="keywordtype">double</font> <a class="code" href="driver__opengl__extension__def_8h.html#a367">w</a>,IObjectIA *m,IObjectIA *<a class="code" href="driver__opengl__extension__def_8h.html#a385">r</a>) +00094 { +00095 <a class="code" href="structNLAIAGENT_1_1CIdMethod.html#m0">Index</a> = i; +00096 <a class="code" href="structNLAIAGENT_1_1CIdMethod.html#m1">Weight</a> = <a class="code" href="driver__opengl__extension__def_8h.html#a367">w</a>; +00097 <a class="code" href="structNLAIAGENT_1_1CIdMethod.html#m2">Method</a> = m; +00098 <a class="code" href="structNLAIAGENT_1_1CIdMethod.html#m3">ReturnType</a> = <a class="code" href="driver__opengl__extension__def_8h.html#a385">r</a>; +00099 } +00100 +<a name="l00101"></a><a class="code" href="structNLAIAGENT_1_1CIdMethod.html#a2">00101</a> CIdMethod::CIdMethod() +00102 { +00103 <a class="code" href="structNLAIAGENT_1_1CIdMethod.html#m2">Method</a> = NULL; +00104 <a class="code" href="structNLAIAGENT_1_1CIdMethod.html#m3">ReturnType</a> = NULL; +00105 } +00106 +<a name="l00107"></a><a class="code" href="structNLAIAGENT_1_1CIdMethod.html#a3">00107</a> CIdMethod::~CIdMethod() +00108 { +00109 <font class="keywordflow">if</font>(<a class="code" href="structNLAIAGENT_1_1CIdMethod.html#m3">ReturnType</a> != NULL) +00110 <a class="code" href="structNLAIAGENT_1_1CIdMethod.html#m3">ReturnType</a>->release(); +00111 } +00112 +00115 +<a name="l00116"></a><a class="code" href="classNLAIAGENT_1_1IObjectIA.html#a1">00116</a> <font class="keywordtype">void</font> IObjectIA::init(IObjectIA *) +00117 { +00118 +00119 } +00120 +<a name="l00121"></a><a class="code" href="classNLAIAGENT_1_1IBasicObjectIA.html#a4">00121</a> IBasicObjectIA::~IBasicObjectIA() +00122 { +00123 <font class="comment">//delete _Name;</font> +00124 } +00125 +<a name="l00126"></a><a class="code" href="classNLAIAGENT_1_1IBasicObjectIA.html#a0">00126</a> IBasicObjectIA::IBasicObjectIA() +00127 { +00128 } +00129 +<a name="l00130"></a><a class="code" href="classNLAIAGENT_1_1IBasicObjectIA.html#a1">00130</a> IBasicObjectIA::IBasicObjectIA(<font class="keyword">const</font> IBasicObjectIA &a): NLAIC::IBasicInterface(a) +00131 { +00132 } +00133 +<a name="l00134"></a><a class="code" href="classNLAIAGENT_1_1IBasicObjectIA.html#a2">00134</a> <font class="keywordtype">bool</font> IBasicObjectIA::operator == (<font class="keyword">const</font> IBasicObjectIA &a)<font class="keyword"> const</font> +00135 <font class="keyword"> </font>{ +00136 <font class="keywordflow">if</font>(a.getType() == <a class="code" href="classNLAIC_1_1IBasicType.html#a2">getType</a>() ) <font class="keywordflow">return</font> <a class="code" href="classNLAIAGENT_1_1IBasicObjectIA.html#a3">isEqual</a>(a); +00137 <font class="keywordflow">return</font> <font class="keyword">false</font>; +00138 } +00139 +00142 +<a name="l00143"></a><a class="code" href="classNLAIAGENT_1_1IObjectIA.html#p0">00143</a> IObjectIA::CProcessResult IObjectIA::ProcessRun = IObjectIA::CProcessResult(); +<a name="l00144"></a><a class="code" href="classNLAIAGENT_1_1IObjectIA.html#p1">00144</a> IObjectIA::CProcessResult IObjectIA::ProcessNotComplit = IObjectIA::CProcessResult(<a class="code" href="namespaceNLAIAGENT.html#a50a8">processNotComplete</a>); +<a name="l00145"></a><a class="code" href="classNLAIAGENT_1_1IObjectIA.html#p2">00145</a> <a class="code" href="namespaceNLAIAGENT.html#a50">TProcessStatement</a> IObjectIA::ProcessIdle = <a class="code" href="namespaceNLAIAGENT.html#a50a2">processIdle</a>; +<a name="l00146"></a><a class="code" href="classNLAIAGENT_1_1IObjectIA.html#p3">00146</a> <a class="code" href="namespaceNLAIAGENT.html#a50">TProcessStatement</a> IObjectIA::ProcessLocked = <a class="code" href="namespaceNLAIAGENT.html#a50a3">processLocked</a>; +<a name="l00147"></a><a class="code" href="classNLAIAGENT_1_1IObjectIA.html#p4">00147</a> <a class="code" href="namespaceNLAIAGENT.html#a50">TProcessStatement</a> IObjectIA::ProcessBuzzy = <a class="code" href="namespaceNLAIAGENT.html#a50a4">processBuzzy</a>; +<a name="l00148"></a><a class="code" href="classNLAIAGENT_1_1IObjectIA.html#p5">00148</a> <a class="code" href="namespaceNLAIAGENT.html#a50">TProcessStatement</a> IObjectIA::ProcessEnd = <a class="code" href="namespaceNLAIAGENT.html#a50a5">processEnd</a>; +<a name="l00149"></a><a class="code" href="classNLAIAGENT_1_1IObjectIA.html#p6">00149</a> <a class="code" href="namespaceNLAIAGENT.html#a50">TProcessStatement</a> IObjectIA::ProcessError = <a class="code" href="namespaceNLAIAGENT.html#a50a9">processError</a>; +00150 +<a name="l00151"></a><a class="code" href="classNLAIAGENT_1_1IObjectIA.html#b0">00151</a> IObjectIA::IObjectIA(<font class="keyword">const</font> IObjectIA &a):IBasicObjectIA(a) +00152 { +00153 } +00154 +<a name="l00155"></a><a class="code" href="classNLAIAGENT_1_1IObjectIA.html#a0">00155</a> IObjectIA::IObjectIA() +00156 { +00157 } +00158 +<a name="l00159"></a><a class="code" href="classNLAIAGENT_1_1IObjectIA.html#a21">00159</a> IObjectIA::~IObjectIA() +00160 { +00161 } +00162 +<a name="l00163"></a><a class="code" href="classNLAIAGENT_1_1IObjectIA.html#a4">00163</a> <font class="keyword">const</font> IObjectIA::CProcessResult &IObjectIA::runStep() +00164 { +00165 std::string text; +00166 text = <a class="code" href="namespaceNLAIC.html#a5">NLAIC::stringGetBuild</a>(<font class="stringliteral">"const CProcessResult &IObjectIA::runStep() note implementaited for the '%s' interface"</font>,(<font class="keyword">const</font> <font class="keywordtype">char</font> *)<a class="code" href="classNLAIC_1_1IBasicType.html#a2">getType</a>()); +00167 <font class="keywordflow">throw</font> <a class="code" href="classNLAIE_1_1CExceptionNotImplemented.html">NLAIE::CExceptionNotImplemented</a>(text.c_str()); +00168 <font class="keywordflow">return</font> IObjectIA::ProcessNotComplit; +00169 } +00170 +<a name="l00171"></a><a class="code" href="classNLAIAGENT_1_1IObjectIA.html#a2">00171</a> IObjectIA &IObjectIA::operator = (<font class="keyword">const</font> IObjectIA &a) +00172 { +00173 std::string text; +00174 text = <a class="code" href="namespaceNLAIC.html#a5">NLAIC::stringGetBuild</a>(<font class="stringliteral">"operator <IObjectIA &operator = (const IObjectIA &a)> note implementaited for the '%s' interface"</font>,(<font class="keyword">const</font> <font class="keywordtype">char</font> *)<a class="code" href="classNLAIC_1_1IBasicType.html#a2">getType</a>()); +00175 <font class="keywordflow">throw</font> <a class="code" href="classNLAIE_1_1CExceptionNotImplemented.html">NLAIE::CExceptionNotImplemented</a>(text.c_str()); +00176 <font class="keywordflow">return</font> *<font class="keyword">this</font>; +00177 } +00178 +00179 +<a name="l00180"></a><a class="code" href="classNLAIAGENT_1_1IObjectIA.html#a5">00180</a> sint32 IObjectIA::getStaticMemberSize()<font class="keyword"> const</font> +00181 <font class="keyword"> </font>{ +00182 std::string text; +00183 text = <a class="code" href="namespaceNLAIC.html#a5">NLAIC::stringGetBuild</a>(<font class="stringliteral">"sint32 IObjectIA::getStaticMemberSize() note implementaited for the '%s' interface"</font>,(<font class="keyword">const</font> <font class="keywordtype">char</font> *)<a class="code" href="classNLAIC_1_1IBasicType.html#a2">getType</a>()); +00184 <font class="keywordflow">throw</font> <a class="code" href="classNLAIE_1_1CExceptionNotImplemented.html">NLAIE::CExceptionNotImplemented</a>(text.c_str()); +00185 <font class="keywordflow">return</font> 0; +00186 } +00187 +<a name="l00188"></a><a class="code" href="classNLAIAGENT_1_1IObjectIA.html#a6">00188</a> sint32 IObjectIA::getStaticMemberIndex(<font class="keyword">const</font> IVarName &)<font class="keyword"> const</font> +00189 <font class="keyword"> </font>{ +00190 <font class="keywordflow">return</font> -1; +00191 } +00192 +<a name="l00193"></a><a class="code" href="classNLAIAGENT_1_1IObjectIA.html#a7">00193</a> <font class="keyword">const</font> IObjectIA *IObjectIA::getStaticMember(sint32)<font class="keyword"> const</font> +00194 <font class="keyword"> </font>{ +00195 <font class="keywordflow">return</font> NULL; +00196 } +00197 +<a name="l00198"></a><a class="code" href="classNLAIAGENT_1_1IObjectIA.html#a10">00198</a> <font class="keywordtype">bool</font> IObjectIA::setStaticMember(sint32,IObjectIA *) +00199 { +00200 std::string text; +00201 text = <a class="code" href="namespaceNLAIC.html#a5">NLAIC::stringGetBuild</a>(<font class="stringliteral">"Function void IObjectIA::setStaticMember(sint32,IObjectIA *) note implementaited for the '%s' interface"</font>,(<font class="keyword">const</font> <font class="keywordtype">char</font> *)<a class="code" href="classNLAIC_1_1IBasicType.html#a2">getType</a>()); +00202 <font class="keywordflow">throw</font> <a class="code" href="classNLAIE_1_1CExceptionNotImplemented.html">NLAIE::CExceptionNotImplemented</a>(text.c_str()); +00203 <font class="keywordflow">return</font> <font class="keyword">false</font>; +00204 } +00205 +<a name="l00206"></a><a class="code" href="classNLAIAGENT_1_1IObjectIA.html#a12">00206</a> <a class="code" href="namespaceNLAIAGENT.html#a1">tQueue</a> IObjectIA::isMember(<font class="keyword">const</font> IVarName *className,<font class="keyword">const</font> IVarName *methodName,<font class="keyword">const</font> IObjectIA &<a class="code" href="driver__opengl__extension__def_8h.html#a382">param</a>)<font class="keyword"> const</font> +00207 <font class="keyword"> </font>{ +00208 <font class="keyword">static</font> CStringVarName send(<a class="code" href="agent__method__def_8h.html#a0">_SEND_</a>); +00209 <font class="keyword">static</font> CStringVarName constructor(<a class="code" href="agent__method__def_8h.html#a16">_CONSTRUCTOR_</a>); +00210 <font class="keyword">static</font> CStringVarName <a class="code" href="classNLAIAGENT_1_1IObjectIA.html#a3">run</a>(<a class="code" href="agent__method__def_8h.html#a18">_RUN_</a>); +00211 <font class="keyword">static</font> CStringVarName statM(<font class="stringliteral">"GetStaticMember"</font>); +00212 +00213 <font class="keywordflow">if</font>(*methodName == send) +00214 { +00215 <a class="code" href="namespaceNLAIAGENT.html#a1">tQueue</a> <a class="code" href="driver__opengl__extension__def_8h.html#a385">r</a>; +00216 CObjectType *c = <font class="keyword">new</font> CObjectType(<font class="keyword">new</font> <a class="code" href="classNLAIC_1_1CIdentType.html">NLAIC::CIdentType</a>(<a class="code" href="classNLAIC_1_1CIdentType.html#p0">NLAIC::CIdentType::VoidType</a>)); +00217 <a class="code" href="driver__opengl__extension__def_8h.html#a385">r</a>.push(CIdMethod(0,0.0,NULL,c)); +00218 <font class="keywordflow">return</font> <a class="code" href="driver__opengl__extension__def_8h.html#a385">r</a>; +00219 } +00220 <font class="keywordflow">else</font> +00221 <font class="keywordflow">if</font>(*methodName == constructor && !((<font class="keyword">const</font> <a class="code" href="classNLAISCRIPT_1_1CParam.html">NLAISCRIPT::CParam</a> &)<a class="code" href="driver__opengl__extension__def_8h.html#a382">param</a>).size()) +00222 { +00223 <a class="code" href="namespaceNLAIAGENT.html#a1">tQueue</a> <a class="code" href="driver__opengl__extension__def_8h.html#a385">r</a>; +00224 CObjectType *c = <font class="keyword">new</font> CObjectType(<font class="keyword">new</font> <a class="code" href="classNLAIC_1_1CIdentType.html">NLAIC::CIdentType</a>(<a class="code" href="classNLAIC_1_1CIdentType.html#p0">NLAIC::CIdentType::VoidType</a>)); +00225 <a class="code" href="driver__opengl__extension__def_8h.html#a385">r</a>.push(CIdMethod(1,0.0,NULL,c)); +00226 <font class="keywordflow">return</font> <a class="code" href="driver__opengl__extension__def_8h.html#a385">r</a>; +00227 } +00228 <font class="keywordflow">else</font> +00229 <font class="keywordflow">if</font>(*methodName == <a class="code" href="classNLAIAGENT_1_1IObjectIA.html#a3">run</a> && !((<font class="keyword">const</font> <a class="code" href="classNLAISCRIPT_1_1CParam.html">NLAISCRIPT::CParam</a> &)<a class="code" href="driver__opengl__extension__def_8h.html#a382">param</a>).size()) +00230 { +00231 <a class="code" href="namespaceNLAIAGENT.html#a1">tQueue</a> <a class="code" href="driver__opengl__extension__def_8h.html#a385">r</a>; +00232 CObjectType *c = <font class="keyword">new</font> CObjectType(<font class="keyword">new</font> <a class="code" href="classNLAIC_1_1CIdentType.html">NLAIC::CIdentType</a>(<a class="code" href="classNLAIC_1_1CIdentType.html#p0">NLAIC::CIdentType::VoidType</a>)); +00233 <a class="code" href="driver__opengl__extension__def_8h.html#a385">r</a>.push(CIdMethod(2,0.0,NULL,c)); +00234 <font class="keywordflow">return</font> <a class="code" href="driver__opengl__extension__def_8h.html#a385">r</a>; +00235 } +00236 <font class="keywordflow">if</font>(*methodName == statM && ((<font class="keyword">const</font> <a class="code" href="classNLAISCRIPT_1_1CParam.html">NLAISCRIPT::CParam</a> &)<a class="code" href="driver__opengl__extension__def_8h.html#a382">param</a>).size()) +00237 { +00238 <a class="code" href="namespaceNLAIAGENT.html#a1">tQueue</a> <a class="code" href="driver__opengl__extension__def_8h.html#a385">r</a>; +00239 CObjectType *c = <font class="keyword">new</font> CObjectType(<font class="keyword">new</font> <a class="code" href="classNLAIC_1_1CIdentType.html">NLAIC::CIdentType</a>(*IAgent::IdAgent)); +00240 <a class="code" href="driver__opengl__extension__def_8h.html#a385">r</a>.push(CIdMethod(3,0.0,NULL,c)); +00241 <font class="keywordflow">return</font> <a class="code" href="driver__opengl__extension__def_8h.html#a385">r</a>; +00242 } +00243 <font class="keywordflow">return</font> <a class="code" href="namespaceNLAIAGENT.html#a1">tQueue</a>(); +00244 } +00245 +<a name="l00246"></a><a class="code" href="classNLAIAGENT_1_1IObjectIA.html#a13">00246</a> sint32 IObjectIA::isClassInheritedFrom(<font class="keyword">const</font> IVarName &)<font class="keyword"> const</font> +00247 <font class="keyword"> </font>{ +00248 <font class="keywordflow">return</font> -1; +00249 } +00250 +<a name="l00251"></a><a class="code" href="classNLAIAGENT_1_1IObjectIA.html#a11">00251</a> sint32 IObjectIA::getMethodIndexSize()<font class="keyword"> const</font> +00252 <font class="keyword"> </font>{ +00253 <font class="keywordflow">return</font> 4; +00254 } +00255 +00256 <font class="comment">// Executes a method from its index i and with its parameters</font> +<a name="l00257"></a><a class="code" href="classNLAIAGENT_1_1IObjectIA.html#a14">00257</a> IObjectIA::CProcessResult IObjectIA::runMethodeMember(sint32 h, sint32 <a class="code" href="driver__opengl__extension__def_8h.html#a356">id</a>,IObjectIA *a) +00258 { +00259 <font class="comment">/*char text[2048*8];</font> +00260 <font class="comment"> sprintf(text,"method runMethodeMember(sint32 h, sint32 id,const IObjectIA &) not implemented for the '%s' interface",(const char *)getType());</font> +00261 <font class="comment"> throw NLAIE::CExceptionNotImplemented(text);</font> +00262 <font class="comment"> return CProcessResult();*/</font> +00263 <font class="keywordflow">return</font> IObjectIA::runMethodeMember(<a class="code" href="driver__opengl__extension__def_8h.html#a356">id</a>,a); +00264 } +00265 +<a name="l00266"></a><a class="code" href="classNLAIAGENT_1_1IObjectIA.html#a16">00266</a> IObjectIA::CProcessResult IObjectIA::runMethodeMember(sint32 <a class="code" href="driver__opengl__extension__def_8h.html#a356">id</a>,IObjectIA *a) +00267 { +00268 +00269 <font class="keywordflow">switch</font>(id) +00270 { +00271 <font class="keywordflow">case</font> 0: +00272 { +00273 IMessageBase *msg; +00274 +00275 IPerformative *p; +00276 msg = (IMessageBase *)((IBaseGroupType *)a)->pop(); +00277 <font class="comment">//this->incRef();</font> +00278 msg->setReceiver(<font class="keyword">this</font>); +00279 p = (IPerformative *)((IBaseGroupType *)a)->pop(); +00280 msg->setPerformatif((IMessageBase::TPerformatif)(sint)p->getNumber()); +00281 p->release(); +00282 <font class="keywordflow">if</font>(((IBaseGroupType *)a)->size()) +00283 { +00284 CStringType *name = (CStringType *)((IBaseGroupType *)a)->pop(); +00285 IObjectIA::CProcessResult <a class="code" href="driver__opengl__extension__def_8h.html#a385">r</a> = <a class="code" href="classNLAIAGENT_1_1IObjectIA.html#a17">sendMessage</a>(name->getStr(),msg); +00286 name->release(); +00287 <font class="keywordflow">return</font> <a class="code" href="driver__opengl__extension__def_8h.html#a385">r</a>; +00288 +00289 } +00290 <font class="keywordflow">return</font> <a class="code" href="classNLAIAGENT_1_1IObjectIA.html#a17">sendMessage</a>(msg); +00291 } +00292 <font class="keywordflow">break</font>; +00293 <font class="keywordflow">case</font> 1: +00294 <font class="keywordflow">break</font>; +00295 <font class="keywordflow">case</font> 2: +00296 <font class="keywordflow">return</font> <a class="code" href="classNLAIAGENT_1_1IObjectIA.html#a3">run</a>(); +00297 <font class="keywordflow">break</font>; +00298 +00299 <font class="keywordflow">case</font> 3: +00300 { +00301 CProcessResult <a class="code" href="driver__opengl__extension__def_8h.html#a385">r</a>; +00302 <a class="code" href="classNLAIAGENT_1_1IBaseGroupType.html">NLAIAGENT::IBaseGroupType</a> *<a class="code" href="driver__opengl__extension__def_8h.html#a382">param</a> = (<a class="code" href="classNLAIAGENT_1_1IBaseGroupType.html">NLAIAGENT::IBaseGroupType</a> *)a; +00303 <a class="code" href="driver__opengl__extension__def_8h.html#a385">r</a>.Result = (<a class="code" href="classNLAIAGENT_1_1IObjectIA.html#b0">IObjectIA</a> *)<a class="code" href="classNLAIAGENT_1_1IObjectIA.html#a7">getStaticMember</a>((sint)((<a class="code" href="classNLAIAGENT_1_1INombreDefine.html">NLAIAGENT::INombreDefine</a> *)param-><a class="code" href="classNLAIAGENT_1_1IBaseGroupType.html#z136_10">get</a>())->getNumber()); +00304 <a class="code" href="driver__opengl__extension__def_8h.html#a385">r</a>.Result->incRef(); +00305 <font class="keywordflow">return</font> <a class="code" href="driver__opengl__extension__def_8h.html#a385">r</a>; +00306 } +00307 } +00308 <font class="keywordflow">return</font> CProcessResult(); +00309 } +00310 +<a name="l00311"></a><a class="code" href="classNLAIAGENT_1_1IObjectIA.html#a15">00311</a> std::string IObjectIA::getMethodeMemberDebugString(sint32 h, sint32 <a class="code" href="driver__opengl__extension__def_8h.html#a356">id</a>)<font class="keyword"> const</font> +00312 <font class="keyword"> </font>{ +00313 <font class="keywordflow">switch</font>(id) +00314 { +00315 <font class="keywordflow">case</font> 0: +00316 { +00317 <font class="keywordflow">return</font> std::string(<font class="stringliteral">"IObjectIA::sendMessage(IMessage)"</font>); +00318 } +00319 <font class="keywordflow">break</font>; +00320 <font class="keywordflow">case</font> 1: +00321 <font class="keywordflow">break</font>; +00322 <font class="keywordflow">case</font> 2: +00323 <font class="keywordflow">return</font> std::string(<font class="stringliteral">"IObjectIA::run()"</font>); +00324 <font class="keywordflow">break</font>; +00325 +00326 <font class="keywordflow">case</font> 3: +00327 { +00328 <font class="keywordflow">return</font> std::string(<font class="stringliteral">"IObjectIA::getStaticMember(Integer)"</font>); +00329 } +00330 } +00331 <font class="keywordflow">return</font> std::string(<font class="stringliteral">"Mathod_?????(Param_?????)"</font>); +00332 } +00333 +<a name="l00334"></a><a class="code" href="classNLAIAGENT_1_1IObjectIA.html#a18">00334</a> IObjectIA::CProcessResult IObjectIA::sendMessage(<font class="keyword">const</font> IVarName &name,IObjectIA *) +00335 { +00336 std::string text; +00337 text = <a class="code" href="namespaceNLAIC.html#a5">NLAIC::stringGetBuild</a>(<font class="stringliteral">"method 'sendMessage(%s,const IObjectIA &)' '%s' interface"</font>,name.getString(), (<font class="keyword">const</font> <font class="keywordtype">char</font> *)<a class="code" href="classNLAIC_1_1IBasicType.html#a2">getType</a>()); +00338 <font class="keywordflow">throw</font> <a class="code" href="classNLAIE_1_1CExceptionNotImplemented.html">NLAIE::CExceptionNotImplemented</a>(text.c_str()); +00339 <font class="keywordflow">return</font> CProcessResult(); +00340 } +00341 +<a name="l00342"></a><a class="code" href="classNLAIAGENT_1_1IObjectIA.html#a17">00342</a> IObjectIA::CProcessResult IObjectIA::sendMessage(IObjectIA *) +00343 { +00344 std::string text; +00345 text = <a class="code" href="namespaceNLAIC.html#a5">NLAIC::stringGetBuild</a>(<font class="stringliteral">"method 'sendMessage(const IObjectIA &)' '%s' interface"</font>, (<font class="keyword">const</font> <font class="keywordtype">char</font> *)<a class="code" href="classNLAIC_1_1IBasicType.html#a2">getType</a>()); +00346 <font class="keywordflow">throw</font> <a class="code" href="classNLAIE_1_1CExceptionNotImplemented.html">NLAIE::CExceptionNotImplemented</a>(text.c_str()); +00347 <font class="keywordflow">return</font> CProcessResult(); +00348 } +00349 +<a name="l00350"></a><a class="code" href="classNLAIAGENT_1_1IObjectIA.html#a19">00350</a> <a class="code" href="namespaceNLAIAGENT.html#a1">tQueue</a> IObjectIA::canProcessMessage(<font class="keyword">const</font> IVarName &) +00351 { +00352 <font class="keywordflow">return</font> <a class="code" href="namespaceNLAIAGENT.html#a1">tQueue</a>(); +00353 } +00354 +00355 +<a name="l00356"></a><a class="code" href="classNLAIAGENT_1_1IObjectIA.html#a20">00356</a> <font class="keywordtype">bool</font> IObjectIA::isLocal() +00357 { +00358 <font class="keywordflow">return</font> <font class="keyword">true</font>; +00359 } +00360 +00363 +<a name="l00364"></a><a class="code" href="classNLAIAGENT_1_1IRefrence.html#a0">00364</a> IRefrence::IRefrence():_Parent(NULL) +00365 { +00366 <a class="code" href="classNLAIAGENT_1_1IRefrence.html#o0">_NumRef</a> = <font class="keyword">new</font> CLocWordNumRef(<font class="keyword">this</font>); +00367 } +00368 +<a name="l00369"></a><a class="code" href="classNLAIAGENT_1_1IRefrence.html#a1">00369</a> IRefrence::IRefrence(<font class="keyword">const</font> IWordNumRef *parent):_Parent((IWordNumRef *)parent) +00370 { +00371 <font class="comment">//if(_Parent != NULL) _Parent->incRef();</font> +00372 <a class="code" href="classNLAIAGENT_1_1IRefrence.html#o0">_NumRef</a> = <font class="keyword">new</font> CLocWordNumRef(<font class="keyword">this</font>); +00373 } +00374 +<a name="l00375"></a><a class="code" href="classNLAIAGENT_1_1IRefrence.html#a2">00375</a> IRefrence::IRefrence(<a class="code" href="classNLMISC_1_1IStream.html">NLMISC::IStream</a> &is) +00376 { +00377 <a class="code" href="classNLAIAGENT_1_1IRefrence.html#b1">refLoadStream</a>(is); +00378 } +00379 +<a name="l00380"></a><a class="code" href="classNLAIAGENT_1_1IRefrence.html#a3">00380</a> IRefrence::operator const IWordNumRef &()<font class="keyword"> const</font> +00381 <font class="keyword"> </font>{ +00382 <font class="keywordflow">return</font> *<a class="code" href="classNLAIAGENT_1_1IRefrence.html#o0">_NumRef</a>; +00383 } +00384 +<a name="l00385"></a><a class="code" href="classNLAIAGENT_1_1IRefrence.html#a4">00385</a> IRefrence::operator const IWordNumRef *()<font class="keyword"> const </font> +00386 <font class="keyword"> </font>{ +00387 <font class="keywordflow">return</font> <a class="code" href="classNLAIAGENT_1_1IRefrence.html#o0">_NumRef</a>; +00388 } +00389 +<a name="l00390"></a><a class="code" href="classNLAIAGENT_1_1IRefrence.html#a6">00390</a> IRefrence *IRefrence::getParent()<font class="keyword"> const</font> +00391 <font class="keyword"> </font>{ +00392 <font class="keywordflow">return</font> <a class="code" href="classNLAIAGENT_1_1IRefrence.html#o1">_Parent</a> != NULL ? (<a class="code" href="classNLAIAGENT_1_1IRefrence.html#b0">IRefrence</a> *)((<font class="keyword">const</font> <a class="code" href="classNLAIAGENT_1_1IRefrence.html#b0">IRefrence</a> *)*<a class="code" href="classNLAIAGENT_1_1IRefrence.html#o1">_Parent</a>) : NULL; +00393 } +00394 +<a name="l00395"></a><a class="code" href="classNLAIAGENT_1_1IRefrence.html#a7">00395</a> <font class="keywordtype">void</font> IRefrence::setParent(<font class="keyword">const</font> IWordNumRef *parent) +00396 { +00397 <font class="comment">//if(_Parent != NULL) _Parent->release();</font> +00398 <a class="code" href="classNLAIAGENT_1_1IRefrence.html#o1">_Parent</a> = (IWordNumRef *)parent; +00399 <font class="comment">//if(_Parent != NULL) _Parent->incRef(); </font> +00400 } +00401 +<a name="l00402"></a><a class="code" href="classNLAIAGENT_1_1IRefrence.html#a8">00402</a> <font class="keyword">const</font> IRefrence *IRefrence::getOwner()<font class="keyword"> const</font> +00403 <font class="keyword"> </font>{ +00404 <font class="keyword">const</font> <a class="code" href="classNLAIAGENT_1_1IRefrence.html#b0">IRefrence</a> *p = <a class="code" href="classNLAIAGENT_1_1IRefrence.html#a6">getParent</a>(); +00405 +00406 <font class="keywordflow">if</font>(p == NULL) <font class="keywordflow">return</font> <font class="keyword">this</font>; +00407 +00408 <font class="keywordflow">while</font>( true ) +00409 { +00410 <font class="keywordflow">if</font>(p->getParent() == NULL) <font class="keywordflow">return</font> p; +00411 } +00412 } +00413 +<a name="l00414"></a><a class="code" href="classNLAIAGENT_1_1IRefrence.html#z150_0">00414</a> <font class="keywordtype">void</font> IRefrence::save(<a class="code" href="classNLMISC_1_1IStream.html">NLMISC::IStream</a> &os) +00415 { +00416 IObjectIA::save(os); +00417 os.<a class="code" href="classNLMISC_1_1IStream.html#a5">serial</a>( (<a class="code" href="classNLAIC_1_1CIdentType.html">NLAIC::CIdentType</a> &) (<a class="code" href="classNLAIAGENT_1_1IRefrence.html#o0">_NumRef</a>->getType()) ); +00418 <a class="code" href="classNLAIAGENT_1_1IRefrence.html#o0">_NumRef</a>->save(os); +00419 <font class="keywordflow">if</font>(<a class="code" href="classNLAIAGENT_1_1IRefrence.html#o1">_Parent</a> != NULL) +00420 { +00421 <font class="keywordtype">bool</font> <a class="code" href="driver__opengl__extension__def_8h.html#a384">t</a> = <font class="keyword">true</font>; +00422 os.<a class="code" href="classNLMISC_1_1IStream.html#a5">serial</a>( <a class="code" href="driver__opengl__extension__def_8h.html#a384">t</a> ); +00423 os.<a class="code" href="classNLMISC_1_1IStream.html#a5">serial</a>( (<a class="code" href="classNLAIC_1_1CIdentType.html">NLAIC::CIdentType</a> &) (<a class="code" href="classNLAIAGENT_1_1IRefrence.html#o1">_Parent</a>->getType()) ); +00424 <a class="code" href="classNLAIAGENT_1_1IRefrence.html#o1">_Parent</a>->save(os); +00425 } +00426 <font class="keywordflow">else</font> +00427 { +00428 <font class="keywordtype">bool</font> <a class="code" href="driver__opengl__extension__def_8h.html#a384">t</a> = <font class="keyword">false</font>; +00429 os.<a class="code" href="classNLMISC_1_1IStream.html#a5">serial</a>( <a class="code" href="driver__opengl__extension__def_8h.html#a384">t</a> ); +00430 } +00431 } +00432 +<a name="l00433"></a><a class="code" href="classNLAIAGENT_1_1IRefrence.html#b1">00433</a> <font class="keywordtype">void</font> IRefrence::refLoadStream(<a class="code" href="classNLMISC_1_1IStream.html">NLMISC::IStream</a> &is) +00434 { +00435 IObjectIA::load(is); +00436 <a class="code" href="classNLAIAGENT_1_1IRefrence.html#o0">_NumRef</a>->release(); +00437 <a class="code" href="classNLAIC_1_1CIdentTypeAlloc.html">NLAIC::CIdentTypeAlloc</a> <a class="code" href="driver__opengl__extension__def_8h.html#a356">id</a>; +00438 is >> id; +00439 <a class="code" href="classNLAIAGENT_1_1IRefrence.html#o0">_NumRef</a> = (IWordNumRef *)id.<a class="code" href="classNLAIC_1_1CIdentTypeAlloc.html#a3">allocClass</a>(); +00440 <a class="code" href="classNLAIAGENT_1_1IRefrence.html#o0">_NumRef</a>->load(is); +00441 <font class="keywordtype">bool</font> k; +00442 is.<a class="code" href="classNLMISC_1_1IStream.html#a5">serial</a>( k ); +00443 <font class="keywordflow">if</font> ( k ) +00444 { +00445 <font class="keywordflow">if</font>(_Parent) <a class="code" href="classNLAIAGENT_1_1IRefrence.html#o1">_Parent</a>->release(); +00446 is >> id; +00447 <a class="code" href="classNLAIAGENT_1_1IRefrence.html#o1">_Parent</a> = (IWordNumRef *)id.<a class="code" href="classNLAIC_1_1CIdentTypeAlloc.html#a3">allocClass</a>(); +00448 <a class="code" href="classNLAIAGENT_1_1IRefrence.html#o1">_Parent</a>->load(is); +00449 } +00450 <font class="keywordflow">else</font> +00451 { +00452 <a class="code" href="classNLAIAGENT_1_1IRefrence.html#o1">_Parent</a> = NULL; +00453 } +00454 } +00455 +<a name="l00456"></a><a class="code" href="classNLAIAGENT_1_1IRefrence.html#z150_1">00456</a> <font class="keywordtype">void</font> IRefrence::load(<a class="code" href="classNLMISC_1_1IStream.html">NLMISC::IStream</a> &is) +00457 { +00458 <a class="code" href="classNLAIAGENT_1_1IRefrence.html#b1">refLoadStream</a>(is); +00459 } +00460 +<a name="l00461"></a><a class="code" href="classNLAIAGENT_1_1IRefrence.html#b2">00461</a> <font class="keywordtype">void</font> IRefrence::setNumRef(<font class="keyword">const</font> IWordNumRef &ref) +00462 { +00463 <font class="keywordflow">if</font>(<a class="code" href="classNLAIAGENT_1_1IRefrence.html#o0">_NumRef</a> != NULL) <a class="code" href="classNLAIAGENT_1_1IRefrence.html#o0">_NumRef</a>->release(); +00464 <a class="code" href="classNLAIAGENT_1_1IRefrence.html#o0">_NumRef</a> = <font class="keyword">new</font> CLocWordNumRef(ref.getNumIdent(),<font class="keyword">this</font>); +00465 } +00466 +<a name="l00467"></a><a class="code" href="classNLAIAGENT_1_1IRefrence.html#a10">00467</a> IRefrence::~IRefrence() +00468 { +00469 <font class="comment">//if(_Parent != NULL) _Parent->release();</font> +00470 <a class="code" href="classNLAIAGENT_1_1IRefrence.html#o0">_NumRef</a>->release(); +00471 } +00472 +<a name="l00473"></a><a class="code" href="classNLAIAGENT_1_1IRefrence.html#b0">00473</a> IRefrence::IRefrence(<font class="keyword">const</font> IRefrence &A):IObjectIA(A),_Parent(A._Parent)<font class="comment">//,_NumRef(A._NumRef)</font> +00474 { +00475 <font class="comment">//if(_Parent != NULL) _Parent->incRef();</font> +00476 <a class="code" href="classNLAIAGENT_1_1IRefrence.html#o0">_NumRef</a> = <font class="keyword">new</font> CLocWordNumRef(<font class="keyword">this</font>); +00477 <a class="code" href="classNLAIAGENT_1_1IRefrence.html#a9">setTypeAt</a>(A._NumRef->getNumIdent().getId().getType()); +00478 } +00479 +<a name="l00480"></a><a class="code" href="classNLAIAGENT_1_1IRefrence.html#a5">00480</a> <font class="keyword">const</font> CIdent IRefrence::getIdentType()<font class="keyword"> const</font> +00481 <font class="keyword"> </font>{ +00482 <font class="keywordflow">return</font> CIdent(0,<a class="code" href="classNLAIAGENT_1_1IRefrence.html#o0">_NumRef</a>->getNumIdent().getId()); +00483 } +00484 +<a name="l00485"></a><a class="code" href="classNLAIAGENT_1_1IRefrence.html#a9">00485</a> <font class="keywordtype">void</font> IRefrence::setTypeAt(uint64 <a class="code" href="driver__opengl__extension__def_8h.html#a384">t</a>) +00486 { +00487 ((CAgentNumber &)(<a class="code" href="classNLAIAGENT_1_1IRefrence.html#o0">_NumRef</a>->getNumIdent().getId())).setTypeAt(<a class="code" href="driver__opengl__extension__def_8h.html#a384">t</a>); +00488 } +00489 +00490 +00493 +<a name="l00494"></a><a class="code" href="classNLAIAGENT_1_1IConnectIA.html#b0">00494</a> IConnectIA::IConnectIA(<font class="keyword">const</font> IConnectIA &A):IRefrence(A) +00495 { +00496 } +00497 +<a name="l00498"></a><a class="code" href="classNLAIAGENT_1_1IConnectIA.html#a0">00498</a> IConnectIA::IConnectIA():IRefrence() +00499 { +00500 } +00501 +<a name="l00502"></a><a class="code" href="classNLAIAGENT_1_1IConnectIA.html#a1">00502</a> IConnectIA::IConnectIA(<font class="keyword">const</font> IWordNumRef *parent):IRefrence(parent) +00503 { +00504 } +00505 +<a name="l00506"></a><a class="code" href="classNLAIAGENT_1_1IConnectIA.html#a2">00506</a> IConnectIA::IConnectIA(<a class="code" href="classNLMISC_1_1IStream.html">NLMISC::IStream</a> &is):IRefrence(is) +00507 { +00508 <a class="code" href="classNLAIAGENT_1_1IConnectIA.html#b1">connectLoadStream</a>(is); +00509 } +00510 +<a name="l00511"></a><a class="code" href="classNLAIAGENT_1_1IConnectIA.html#a3">00511</a> IConnectIA *IConnectIA::getParent()<font class="keyword"> const</font> +00512 <font class="keyword"> </font>{ +00513 <font class="keywordflow">return</font> (<a class="code" href="classNLAIAGENT_1_1IConnectIA.html#b0">IConnectIA</a> *)IRefrence::getParent(); +00514 } +00515 +<a name="l00516"></a><a class="code" href="classNLAIAGENT_1_1IConnectIA.html#z152_1">00516</a> <font class="keywordtype">void</font> IConnectIA::load(<a class="code" href="classNLMISC_1_1IStream.html">NLMISC::IStream</a> &is) +00517 { +00518 <a class="code" href="classNLAIAGENT_1_1IConnectIA.html#b1">connectLoadStream</a>(is); +00519 } +00520 +<a name="l00521"></a><a class="code" href="classNLAIAGENT_1_1IConnectIA.html#b1">00521</a> <font class="keywordtype">void</font> IConnectIA::connectLoadStream(<a class="code" href="classNLMISC_1_1IStream.html">NLMISC::IStream</a> &is) +00522 { +00523 IRefrence::refLoadStream(is); +00524 <a class="code" href="classNLAIC_1_1CIdentTypeAlloc.html">NLAIC::CIdentTypeAlloc</a> <a class="code" href="driver__opengl__extension__def_8h.html#a356">id</a>; +00525 sint32 i; +00526 is.<a class="code" href="classNLMISC_1_1IStream.html#a5">serial</a>( i ); +00527 +00528 <font class="keywordflow">if</font>(i) +00529 { +00530 <font class="keywordflow">while</font>(i --) +00531 { +00532 is >> id; +00533 IWordNumRef *<a class="code" href="driver__opengl__extension__def_8h.html#a410">num</a> = (IWordNumRef *)id.<a class="code" href="classNLAIC_1_1CIdentTypeAlloc.html#a3">allocClass</a>(); +00534 <a class="code" href="driver__opengl__extension__def_8h.html#a410">num</a>->load(is); +00535 <a class="code" href="classNLAIAGENT_1_1IConnectIA.html#z153_0">addInConnectionList</a>((<a class="code" href="classNLAIAGENT_1_1IConnectIA.html#b0">IConnectIA</a> *)((<font class="keyword">const</font> <a class="code" href="classNLAIAGENT_1_1IRefrence.html#b0">IRefrence</a> *)*<a class="code" href="driver__opengl__extension__def_8h.html#a410">num</a>)); +00536 <font class="keyword">delete</font> <a class="code" href="driver__opengl__extension__def_8h.html#a410">num</a>; +00537 } +00538 } +00539 +00540 +00541 is.<a class="code" href="classNLMISC_1_1IStream.html#a5">serial</a>(i); +00542 <font class="keywordflow">if</font>(i) +00543 { +00544 <font class="keywordflow">while</font>(i--) +00545 { +00546 is >> id; +00547 IWordNumRef *<a class="code" href="driver__opengl__extension__def_8h.html#a410">num</a> = (IWordNumRef *)id.<a class="code" href="classNLAIC_1_1CIdentTypeAlloc.html#a3">allocClass</a>(); +00548 <a class="code" href="driver__opengl__extension__def_8h.html#a410">num</a>->load(is); +00549 <a class="code" href="classNLAIAGENT_1_1IConnectIA.html#z153_2">addInConnectedList</a>((<a class="code" href="classNLAIAGENT_1_1IConnectIA.html#b0">IConnectIA</a> *)((<font class="keyword">const</font> <a class="code" href="classNLAIAGENT_1_1IRefrence.html#b0">IRefrence</a> *)*<a class="code" href="driver__opengl__extension__def_8h.html#a410">num</a>)); +00550 <font class="keyword">delete</font> <a class="code" href="driver__opengl__extension__def_8h.html#a410">num</a>; +00551 } +00552 } +00553 } +00554 +<a name="l00555"></a><a class="code" href="classNLAIAGENT_1_1IConnectIA.html#a7">00555</a> <font class="keywordtype">void</font> IConnectIA::connect(IConnectIA *b) +00556 { +00557 b->addInConnectedList(<font class="keyword">this</font>); +00558 <a class="code" href="classNLAIAGENT_1_1IConnectIA.html#z153_0">addInConnectionList</a>(b); +00559 } +00560 +<a name="l00561"></a><a class="code" href="classNLAIAGENT_1_1IConnectIA.html#a8">00561</a> <font class="keywordtype">void</font> IConnectIA::removeConnection(IConnectIA *Agent) +00562 { +00563 Agent->removeInConnectedList(<font class="keyword">this</font>); +00564 <a class="code" href="classNLAIAGENT_1_1IConnectIA.html#z153_1">removeInConnectionList</a>(Agent); +00565 } +00566 +<a name="l00567"></a><a class="code" href="classNLAIAGENT_1_1IConnectIA.html#a11">00567</a> IConnectIA::~IConnectIA() +00568 { +00569 <a class="code" href="classNLAIAGENT_1_1IConnectIA.html#a10">Kill</a>(); +00570 } +00571 +<a name="l00572"></a><a class="code" href="classNLAIAGENT_1_1IConnectIA.html#z153_0">00572</a> <font class="keywordtype">void</font> IConnectIA::addInConnectionList(<font class="keyword">const</font> IConnectIA *a) +00573 { +00574 <a class="code" href="classNLAIAGENT_1_1IConnectIA.html#n0">_Connection</a>.insert(a); +00575 } +00576 +<a name="l00577"></a><a class="code" href="classNLAIAGENT_1_1IConnectIA.html#z153_1">00577</a> <font class="keywordtype">void</font> IConnectIA::removeInConnectionList(IConnectIA *a) +00578 { +00579 +00580 <a class="code" href="classNLAIAGENT_1_1IConnectIA.html#u1">tListiBasicItr</a> i = <a class="code" href="classNLAIAGENT_1_1IConnectIA.html#n0">_Connection</a>.find(a); +00581 <font class="keywordflow">if</font>(i != <a class="code" href="classNLAIAGENT_1_1IConnectIA.html#n0">_Connection</a>.end()) +00582 <a class="code" href="classNLAIAGENT_1_1IConnectIA.html#n0">_Connection</a>.erase(i); +00583 <font class="comment">/*tListiBasicItr i = _Connection.begin();</font> +00584 <font class="comment"> while(i != _Connection.end())</font> +00585 <font class="comment"> { </font> +00586 <font class="comment"> if(*i == a)</font> +00587 <font class="comment"> {</font> +00588 <font class="comment"> _Connection.erase(i);</font> +00589 <font class="comment"> return;</font> +00590 <font class="comment"> }</font> +00591 <font class="comment"> i++;</font> +00592 <font class="comment"> }*/</font> +00593 } +00594 +<a name="l00595"></a><a class="code" href="classNLAIAGENT_1_1IConnectIA.html#z153_2">00595</a> <font class="keywordtype">void</font> IConnectIA::addInConnectedList(<font class="keyword">const</font> IConnectIA *a) +00596 { +00597 <a class="code" href="classNLAIAGENT_1_1IConnectIA.html#n1">_Connected</a>.insert(a); +00598 } +00599 +<a name="l00600"></a><a class="code" href="classNLAIAGENT_1_1IConnectIA.html#z153_3">00600</a> <font class="keywordtype">void</font> IConnectIA::removeInConnectedList(<font class="keyword">const</font> IConnectIA *a) +00601 { +00602 <a class="code" href="classNLAIAGENT_1_1IConnectIA.html#u1">tListiBasicItr</a> i = <a class="code" href="classNLAIAGENT_1_1IConnectIA.html#n1">_Connected</a>.find(a); +00603 <font class="keywordflow">if</font>(i != <a class="code" href="classNLAIAGENT_1_1IConnectIA.html#n1">_Connected</a>.end()) +00604 <a class="code" href="classNLAIAGENT_1_1IConnectIA.html#n1">_Connected</a>.erase(i); +00605 <font class="comment">/*tListiBasicItr i = _Connected.begin();</font> +00606 <font class="comment"> while(i != _Connected.end())</font> +00607 <font class="comment"> { </font> +00608 <font class="comment"> const IConnectIA *o = *i;</font> +00609 <font class="comment"> if(o == a)</font> +00610 <font class="comment"> { </font> +00611 <font class="comment"> _Connected.erase(i);</font> +00612 <font class="comment"> return;</font> +00613 <font class="comment"> }</font> +00614 <font class="comment"> i++;</font> +00615 <font class="comment"> }*/</font> +00616 } +00617 +<a name="l00618"></a><a class="code" href="classNLAIAGENT_1_1IConnectIA.html#a10">00618</a> <font class="keywordtype">void</font> IConnectIA::Kill() +00619 { +00620 <a class="code" href="classNLAIAGENT_1_1IConnectIA.html#b0">IConnectIA</a> *parent = <a class="code" href="classNLAIAGENT_1_1IConnectIA.html#a3">getParent</a>(); +00621 <font class="keywordflow">if</font> ( parent != NULL ) +00622 { +00623 parent->onKill( <font class="keyword">this</font> ); +00624 } +00625 +00626 <a class="code" href="classNLAIAGENT_1_1IConnectIA.html#u2">tListiBasicCstItr</a> it = <a class="code" href="classNLAIAGENT_1_1IConnectIA.html#n0">_Connection</a>.begin(); +00627 +00628 <font class="keywordflow">while</font>(it != <a class="code" href="classNLAIAGENT_1_1IConnectIA.html#n0">_Connection</a>.end()) +00629 { +00630 <a class="code" href="classNLAIAGENT_1_1IConnectIA.html#b0">IConnectIA</a> *a = (<a class="code" href="classNLAIAGENT_1_1IConnectIA.html#b0">IConnectIA</a> *)*it ++; +00631 <font class="keywordflow">if</font>(a != NULL) +00632 { +00633 a->removeInConnectedList(<font class="keyword">this</font>); +00634 } +00635 } +00636 <a class="code" href="classNLAIAGENT_1_1IConnectIA.html#n0">_Connection</a>.clear(); +00637 +00638 it = <a class="code" href="classNLAIAGENT_1_1IConnectIA.html#n1">_Connected</a>.begin(); +00639 <font class="keywordflow">while</font>(it != <a class="code" href="classNLAIAGENT_1_1IConnectIA.html#n1">_Connected</a>.end()) +00640 { +00641 <a class="code" href="classNLAIAGENT_1_1IConnectIA.html#b0">IConnectIA</a> *a = (<a class="code" href="classNLAIAGENT_1_1IConnectIA.html#b0">IConnectIA</a> *)*it ++; +00642 <font class="keywordflow">if</font>(a != NULL) +00643 { +00644 a->removeInConnectionList(<font class="keyword">this</font>); +00645 a->onKill(<font class="keyword">this</font>); +00646 } +00647 } +00648 <a class="code" href="classNLAIAGENT_1_1IConnectIA.html#n1">_Connected</a>.clear(); +00649 } +00650 +<a name="l00651"></a><a class="code" href="classNLAIAGENT_1_1IConnectIA.html#a4">00651</a> <font class="keywordtype">void</font> IConnectIA::onKill(IConnectIA *a) +00652 { +00653 <a class="code" href="classNLAIAGENT_1_1IConnectIA.html#b0">IConnectIA</a> *parent = <a class="code" href="classNLAIAGENT_1_1IConnectIA.html#a3">getParent</a>(); +00654 <font class="keywordflow">if</font> ( parent == a ) +00655 { +00656 <font class="comment">//parent->release();</font> +00657 <a class="code" href="classNLAIAGENT_1_1IConnectIA.html#a9">setParent</a>(NULL); +00658 } +00659 } +00660 +<a name="l00661"></a><a class="code" href="classNLAIAGENT_1_1IConnectIA.html#a9">00661</a> <font class="keywordtype">void</font> IConnectIA::setParent(<font class="keyword">const</font> IWordNumRef *parent) +00662 { +00663 IRefrence::setParent(parent); +00664 <a class="code" href="classNLAIAGENT_1_1IConnectIA.html#b0">IConnectIA</a> *p = (<a class="code" href="classNLAIAGENT_1_1IConnectIA.html#b0">IConnectIA</a> *)<a class="code" href="classNLAIAGENT_1_1IConnectIA.html#a3">getParent</a>(); +00665 +00666 <font class="keywordflow">if</font>(p != NULL) <a class="code" href="classNLAIAGENT_1_1IConnectIA.html#a7">connect</a>(p); +00667 } +00668 } +</pre></div> + +<!-- footer --> +<BR><FONT Size=+5> </FONT> +</TD> +<TD WIDTH=15><IMG SRC=http://www.nevrax.org/inc/img/pixel.gif WIDTH=15 HEIGHT=15 BORDER=0 ALT=""></TD> +</TR> +</TABLE> +</BODY> +</HTML> |