NLAILOGIC::CValueSet Class Reference

#include <valueset.h>

Inheritance diagram for NLAILOGIC::CValueSet:

NLAIAGENT::IObjetOp NLAIAGENT::IObjectIA NLAIAGENT::IBasicObjectIA NLAIC::IBasicInterface NLAIC::IBasicType NLAIC::IPointerGestion NLMISC::IStreamable NLMISC::IClassable NLAILOGIC::CFact

IObjectIA base class method;

virtual sint32 getMethodIndexSize () const
virtual TQueue IObjetOp::isMember (const IVarName *, const IVarName *, const IObjectIA &) const
virtual CProcessResult IObjetOp::runMethodeMember (sint32 index, IObjectIA *)

[NOHEADER]

virtual IObjetOpneg ()
 throw (NLAIE::CExceptionNotImplemented)

virtual IObjetOpoperator *= (const IObjetOp &)
 throw (NLAIE::CExceptionNotImplemented)

virtual IObjetOpoperator+= (const IObjetOp &)
 add the operater by anather.

virtual IObjetOpoperator-= (const IObjetOp &)
 throw (NLAIE::CExceptionNotImplemented)

virtual IObjetOpoperator/= (const IObjetOp &)
 throw (NLAIE::CExceptionNotImplemented)


[NOHEADER]

virtual IObjetOpoperator * (const IObjetOp &)
 throw (NLAIE::CExceptionNotImplemented)

virtual IObjetOpoperator+ (const IObjetOp &)
 throw (NLAIE::CExceptionNotImplemented)

virtual IObjetOpoperator- (const IObjetOp &)
 throw (NLAIE::CExceptionNotImplemented)

virtual IObjetOpoperator/ (const IObjetOp &)
 throw (NLAIE::CExceptionNotImplemented)


Public Types

enum  TOpId {
  op_add, op_sub, op_mul, op_div,
  op_eq, op_inf, op_sup, op_inf_eq,
  op_sup_eq, op_not, op_diff, op_neg,
  op_last
}

Public Member Functions

virtual TQueue canProcessMessage (const IVarName &)
virtual const NLAIC::IBasicTypeclone () const
 CValueSet (sint32, std::list< NLAIAGENT::IObjectIA * > *, std::vector< sint32 > &)
 Builds a CValueSet with size from a list of values and their positions.

 CValueSet (CValueSet *, std::vector< sint32 > &)
 CValueSet (std::vector< IBaseVar * > &)
 Builds a CValueSet from values taken from a list of variables.

 CValueSet (const CValueSet &)
 Copy constructor.

 CValueSet (sint32)
 Initialises a CValueSet of size with values to NULL.

 CValueSet ()
sint32 decRef ()
 Decrement the reference of an object.

CValueSetforward (CClause *, std::vector< sint32 > &)
virtual void getDebugString (std::string &) const
virtual const std::string getInfo ()
virtual std::string getMethodeMemberDebugString (sint32, sint32) const
virtual IObjetOpgetNeg () const
const sint32getRef () const
 get the refence count.

const IObjectIAgetStaticMember (const IVarName &compName) const
virtual const IObjectIAgetStaticMember (sint32) const
virtual sint32 getStaticMemberIndex (const IVarName &) const
virtual sint32 getStaticMemberSize () const
virtual const NLAIC::CIdentTypegetType () const
virtual NLAIAGENT::IObjectIAgetValue (sint32)
std::list< NLAIAGENT::IObjectIA * > * getValues ()
 Return a list of the != NULL values of the object.

void incRef ()
 Inc a reference. We use this when we have to conserve a pointer memeory for exemple in a list.

virtual void init (IObjectIA *)
virtual sint32 isClassInheritedFrom (const IVarName &) const
virtual bool isEqual (const IBasicObjectIA &a) const=0
virtual bool isEqual (const NLAIAGENT::IBasicObjectIA &) const
virtual bool isLocal ()
 If the result is true the object is loclal else its a representation of an object on the server. By the method return true.

virtual TQueue isMember (const IVarName *, const IVarName *, const IObjectIA &) const
virtual bool isTrue () const
 throw (NLAIE::CExceptionNotImplemented)

virtual void load (NLMISC::IStream &is)
virtual const NLAIC::IBasicTypenewInstance () const
virtual IObjetOpoperator * (IObjetOp *a)
 throw (NLAIE::CExceptionNotImplemented)

virtual IObjetOpoperator *= (IObjetOp *a)
 throw (NLAIE::CExceptionNotImplemented)

virtual NLAIAGENT::IObjetOpoperator! () const
 throw (NLAIE::CExceptionNotImplemented)

virtual IObjetOpoperator!= (IObjetOp &) const
 throw (NLAIE::CExceptionNotImplemented)

virtual NLAIAGENT::IObjectIAoperator!= (NLAIAGENT::IObjectIA &a) const
virtual IObjetOpoperator+ (IObjetOp *a)
 throw (NLAIE::CExceptionNotImplemented)

virtual IObjetOpoperator+= (IObjetOp *a)
 throw (NLAIE::CExceptionNotImplemented)

virtual IObjetOpoperator- (IObjetOp *a)
 throw (NLAIE::CExceptionNotImplemented)

virtual IObjetOpoperator-= (IObjetOp *a)
 throw (NLAIE::CExceptionNotImplemented)

virtual IObjetOpoperator/ (IObjetOp *a)
 throw (NLAIE::CExceptionNotImplemented)

virtual IObjetOpoperator/= (IObjetOp *a)
 throw (NLAIE::CExceptionNotImplemented)

virtual IObjetOpoperator< (IObjetOp &) const
 throw (NLAIE::CExceptionNotImplemented)

virtual IObjetOpoperator<= (IObjetOp &) const
 throw (NLAIE::CExceptionNotImplemented)

bool operator== (const IBasicObjectIA &classType) const
virtual IObjetOpoperator== (IObjetOp &) const
 throw (NLAIE::CExceptionNotImplemented)

virtual NLAIAGENT::IObjectIAoperator== (NLAIAGENT::IObjectIA &a) const
bool operator== (CValueSet *)
virtual IObjetOpoperator> (IObjetOp &) const
 throw (NLAIE::CExceptionNotImplemented)

virtual IObjetOpoperator>= (IObjetOp &) const
 throw (NLAIE::CExceptionNotImplemented)

virtual NLAIAGENT::IObjectIAoperator[] (sint32)
virtual void release ()
 Release allow to release the pointer. The last release when the _Ref is nul delete the object.

virtual const IObjectIA::CProcessResultrun ()
virtual CProcessResult runMethodeMember (sint32 index, IObjectIA *)
virtual CProcessResult runMethodeMember (sint32, sint32, IObjectIA *)
virtual const CProcessResult & runStep ()
virtual void save (NLMISC::IStream &os)
virtual CProcessResult sendMessage (const IVarName &, IObjectIA *)
virtual CProcessResult sendMessage (IObjectIA *)
virtual void serial (NLMISC::IStream &f) throw (NLMISC::EStream)
virtual void setSize (sint32)
virtual bool setStaticMember (sint32, IObjectIA *)
bool setStaticMember (const IVarName &compName, IObjectIA *change)
void setValue (sint32, NLAIAGENT::IObjectIA *)
sint32 size ()
sint32 undefined () const
 Returns the number of NULL values (considered as undefined).

CValueSetunify (CValueSet *vals, std::vector< sint32 > &pos_vals) const
CValueSetunify (std::list< NLAIAGENT::IObjectIA * > *vals, std::vector< sint32 > &pos_vals) const
 Tries to unify a CValueSet with a list of values and their positions.

CValueSetunify (const CValueSet *) const
virtual ~CValueSet ()

Static Public Attributes

const NLAIC::CIdentType IdValueSet
TProcessStatement ProcessBuzzy = processBuzzy
TProcessStatement ProcessEnd = processEnd
TProcessStatement ProcessError = processError
TProcessStatement ProcessIdle = processIdle
TProcessStatement ProcessLocked = processLocked
CProcessResult ProcessNotComplit = IObjectIA::CProcessResult(processNotComplete)
CProcessResult ProcessRun = IObjectIA::CProcessResult()
const NLAIAGENT::TProcessStatement state = processIdle

Protected Attributes

sint32 _NbValues
NLAIAGENT::IObjectIA ** _Values

Member Enumeration Documentation

enum NLAIAGENT::IObjetOp::TOpId [inherited]
 

Enumeration values:
op_add 
op_sub 
op_mul 
op_div 
op_eq 
op_inf 
op_sup 
op_inf_eq 
op_sup_eq 
op_not 
op_diff 
op_neg 
op_last 

Definition at line 46 of file agent_operator.h.

00047                 {
00048                         op_add ,
00049                         op_sub ,
00050                         op_mul ,
00051                         op_div ,
00052                         op_eq ,
00053                         op_inf ,
00054                         op_sup ,
00055                         op_inf_eq ,
00056                         op_sup_eq ,
00057                         op_not ,
00058                         op_diff ,                       
00059                         op_neg,
00060                         op_last
00061                 };      


Constructor & Destructor Documentation

NLAILOGIC::CValueSet::CValueSet  ) 
 

Definition at line 32 of file valueset.cpp.

Referenced by NLAILOGIC::CFact::asValueSet(), clone(), forward(), and unify().

00033         {
00034                 _NbValues = 0;
00035                 _Values = NULL;
00036         }

NLAILOGIC::CValueSet::CValueSet sint32   ) 
 

Initialises a CValueSet of size with values to NULL.

Definition at line 39 of file valueset.cpp.

References sint32, and size.

00040         {
00041                 _NbValues = size;
00042                 _Values = new IObjectIA *[ _NbValues ];
00043 
00044                 for ( sint32 i = 0; i < _NbValues; i++ )
00045                 {
00046                         _Values[ i ] = NULL;
00047                 }
00048         }

NLAILOGIC::CValueSet::CValueSet const CValueSet  ) 
 

Copy constructor.

Definition at line 51 of file valueset.cpp.

References _NbValues, _Values, NLAIC::IPointerGestion::incRef(), and sint32.

00052         {
00053                 _NbValues = cp._NbValues;
00054 
00055                 _Values = new IObjectIA *[ _NbValues ];
00056 
00057                 for ( sint32 i = 0; i < _NbValues; i++ )
00058                 {
00059                         _Values[i] = (IObjectIA *) cp._Values[i];
00060 
00061                         if ( _Values[i] )
00062                                 _Values[i]->incRef();
00063                 }
00064         }

NLAILOGIC::CValueSet::CValueSet std::vector< IBaseVar * > &   ) 
 

Builds a CValueSet from values taken from a list of variables.

Definition at line 67 of file valueset.cpp.

References NLAIC::IPointerGestion::incRef(), and sint32.

00068         {
00069                 _NbValues = vars.size();
00070 
00071                 _Values = new IObjectIA *[ _NbValues ];
00072 
00073                 for (sint32 i = 0; i < _NbValues; i++ )
00074                 {
00075                         _Values[ i ] =  vars[i]->getValue();
00076 
00077                         if ( _Values[i] )
00078                                 _Values[i]->incRef();
00079                 }
00080         }

NLAILOGIC::CValueSet::CValueSet CValueSet vals,
std::vector< sint32 > &  pos
 

Builds a CValueSet from another one, changing the positions of values pos = positiions in the new CValueSet of the existing one's variables

Definition at line 87 of file valueset.cpp.

References _Values, index, and sint32.

00088         {
00089                 _NbValues = pos.size();
00090 
00091                 _Values = new IObjectIA *[ _NbValues ];
00092 
00093                 for (sint32 i = 0; i < _NbValues; i++ )
00094                 {
00095                         _Values[ i ] =  NULL;
00096                 }
00097 
00098                 std::vector<sint32>::iterator it_pos = pos.begin();
00099                 sint32 index = 0;
00100                 while ( it_pos != pos.end() )
00101                 {
00102                         _Values[ index ] = vals->_Values[ *it_pos ];
00103                         it_pos++;
00104                         index++;
00105                 }
00106         }

NLAILOGIC::CValueSet::CValueSet sint32  ,
std::list< NLAIAGENT::IObjectIA * > *  ,
std::vector< sint32 > & 
 

Builds a CValueSet with size from a list of values and their positions.

Definition at line 109 of file valueset.cpp.

References NLAIC::IPointerGestion::incRef(), sint32, and size.

00110         {
00111                 _NbValues = size;
00112 
00113                 _Values = new IObjectIA *[ _NbValues ];
00114 
00115                 for (sint32 i = 0; i < _NbValues; i++ )
00116                 {
00117                         _Values[ i ] =  NULL;
00118                 }
00119 
00120                 std::list<IObjectIA *>::iterator it_val = vals->begin();
00121                 std::vector<sint32>::iterator it_pos = pos.begin();
00122 
00123                 while ( it_val != vals->end() && it_pos != pos.end() )
00124                 {
00125                         _Values[ *it_pos ] = *it_val;
00126                         (*it_val)->incRef();
00127                         it_val++;
00128                         it_pos++;
00129                 }
00130         }

NLAILOGIC::CValueSet::~CValueSet  )  [virtual]
 

Definition at line 132 of file valueset.cpp.

References NLAIC::IPointerGestion::release(), and sint32.

00133         {
00134                 for ( sint32 i = 0; i < _NbValues; i++ )
00135                         if ( _Values[i] )
00136                                 _Values[i]->release();
00137                 delete[] _Values;
00138         }


Member Function Documentation

TQueue NLAIAGENT::IObjectIA::canProcessMessage const IVarName  )  [virtual, inherited]
 

The method canProcessMessage(const IVarName &msgName) allow us to know if agent can preocess given by msgName.

TQueue contain the liste of method (same as a run(msg)) that coud process the msg.

Reimplemented in NLAIAGENT::CLocalAgentMail.

Definition at line 350 of file baseai.cpp.

References NLAIAGENT::TQueue.

Referenced by NLAIAGENT::CLocalAgentMail::canProcessMessage().

00351         {
00352                 return TQueue();
00353         }

const NLAIC::IBasicType * NLAILOGIC::CValueSet::clone  )  const [virtual]
 

This function allow a pointer copy, that mean that the new class have the sam attributs caracteristics as the owne.

Implements NLAIC::IBasicType.

Reimplemented in NLAILOGIC::CFact.

Definition at line 353 of file valueset.cpp.

References CValueSet().

Referenced by NLAILOGIC::CFirstOrderAssert::addFact(), and newInstance().

00354         {
00355                 NLAIC::IBasicType *tmp = new CValueSet( *this );
00356                 return tmp;
00357         }

sint32 NLAIC::IPointerGestion::decRef  )  [inline, inherited]
 

Decrement the reference of an object.

Definition at line 93 of file abstract_interface.h.

References NLAIC::IPointerGestion::_Ref, and sint32.

Referenced by NLAIC::IPointerGestion::release(), and NLAIAGENT::CAgentTimerHandle::~CAgentTimerHandle().

00094                 {
00095                         return --_Ref;
00096                 }

CValueSet * NLAILOGIC::CValueSet::forward CClause ,
std::vector< sint32 > & 
 

Definition at line 532 of file valueset.cpp.

References _Values, CValueSet(), NLAIC::IPointerGestion::incRef(), NLAILOGIC::CClause::nbVars(), and sint32.

00533         {
00534                 CValueSet *result = new CValueSet( clause->nbVars() );
00535 
00536                 std::vector<sint32>::iterator it_pos = pos.begin();
00537 
00538                 for (sint32 i = 0; i < _NbValues; i++ )
00539                 {
00540                         if ( _Values[i] )
00541                         {
00542                                 result->_Values[ *it_pos ] = _Values[i];
00543                                 _Values[i]->incRef();
00544                                 it_pos++;
00545                         }
00546                 }
00547                 return result;
00548         }

virtual std::string NLAIC::IPointerGestion::getClassName  )  [inline, virtual, inherited]
 

Implements NLMISC::IClassable.

Reimplemented in NLAIC::CIdentType.

Definition at line 116 of file abstract_interface.h.

Referenced by NLAISCRIPT::CAgentClass::isClassInheritedFrom().

00117                 {
00118                         return std::string("<unnamed>");
00119                 }

void NLAILOGIC::CValueSet::getDebugString std::string &   )  const [virtual]
 

This is a Debug function, text is an character pointer to receive the debug text output, the debug text containe all think sensible to interset user.

Implements NLAIC::IBasicType.

Reimplemented in NLAILOGIC::CFact.

Definition at line 436 of file valueset.cpp.

References NLAIC::IBasicType::getDebugString(), and sint32.

Referenced by NLAILOGIC::CRule::addConflicts(), NLAILOGIC::CFirstOrderOperator::forward(), NLAILOGIC::CFirstOrderOperator::propagate(), unify(), NLAILOGIC::CRule::unifyBack(), and NLAILOGIC::CRule::unifyLiaisonBack().

00437         {
00438                 std::string buf;
00439                 txt += " <CValueSet> ";
00440                 for (sint32 i = 0; i < _NbValues; i++ )
00441                 {
00442                         txt += " , ";
00443                         if ( _Values[i] )
00444                         {
00445                                 _Values[i]->getDebugString( buf );
00446 
00447                                 txt += buf ;
00448                         }
00449                         else txt += "NULL";
00450                 }
00451         }

virtual const std::string NLAIC::IBasicType::getInfo  )  [inline, virtual, inherited]
 

Definition at line 292 of file abstract_interface.h.

References NLAIC::IBasicType::getDebugString(), and s.

00293                 {
00294                         std::string s;
00295                         getDebugString(s);
00296                         return s;
00297                 }

std::string NLAIAGENT::IObjectIA::getMethodeMemberDebugString sint32  ,
sint32 
const [virtual, inherited]
 

The methode getMethodeMemberDebugString(sint32 heritance, sint32 index) return a string that define the name and the argument of the method

Reimplemented in NLAIAGENT::CAgentScript.

Definition at line 311 of file baseai.cpp.

References sint32.

Referenced by NLAISCRIPT::CCallHeapMethodi::getDebugResult(), NLAISCRIPT::CCallStackMethodi::getDebugResult(), NLAISCRIPT::CCallMethodi::getDebugResult(), NLAISCRIPT::CLibHeapMemberMethod::getDebugResult(), NLAISCRIPT::CLibStackNewMemberMethod::getDebugResult(), NLAISCRIPT::CLibStackMemberMethod::getDebugResult(), NLAISCRIPT::CLibCallMethodi::getDebugResult(), NLAISCRIPT::CLibCallInheritedMethod::getDebugResult(), NLAISCRIPT::CLibCallMethod::getDebugResult(), NLAISCRIPT::CLibMemberMethodi::getDebugResult(), NLAISCRIPT::CLibMemberInheritedMethod::getDebugResult(), and NLAISCRIPT::CLibMemberMethod::getDebugResult().

00312         {
00313                 switch(id)
00314                 {
00315                 case 0:
00316                         {
00317                                 return std::string("IObjectIA::sendMessage(IMessage)");
00318                         }                       
00319                         break;
00320                 case 1:                 
00321                         break;
00322                 case 2:                 
00323                         return std::string("IObjectIA::run()");
00324                         break;
00325 
00326                 case 3:
00327                         {                               
00328                                 return std::string("IObjectIA::getStaticMember(Integer)");                              
00329                         }
00330                 }
00331                 return std::string("Mathod_?????(Param_?????)");
00332         }

sint32 NLAIAGENT::IObjetOp::getMethodIndexSize  )  const [virtual, inherited]
 

getMethodIndexSize define the nomber of method define in the class.

Reimplemented from NLAIAGENT::IObjectIA.

Reimplemented in NLAIAGENT::IVector, NLAIAGENT::INombreDefine, NLAIAGENT::CPairType, NLAIAGENT::IBaseGroupType, NLAIAGENT::CVectorGroupType, NLAIAGENT::IListBasicManager, NLAIAGENT::CMessageScript, NLAIAGENT::IMessageBase, NLAIAGENT::CAgentOperation, NLAIFUZZY::CFuzzyVar, NLAILOGIC::CFact, NLAILOGIC::CGoal, NLAILOGIC::CInternalGoal, and NLAILOGIC::IBaseVar.

Definition at line 93 of file agent_operator.cpp.

References NLAIAGENT::IObjetOp::op_last, and sint32.

00094         {
00095                 return IObjectIA::getMethodIndexSize() + op_last;
00096         }

virtual IObjetOp* NLAIAGENT::IObjetOp::getNeg  )  const [inline, virtual, inherited]
 

Definition at line 165 of file agent_operator.h.

References NLAIC::IBasicType::clone(), and NLAIAGENT::IObjetOp::neg().

Referenced by NLAISCRIPT::CNegOpCode::runOpCode().

00166                 {
00167                         IObjetOp *o = (IObjetOp *)clone();                      
00168                         o->neg();
00169                         return o;
00170                 }

const sint32& NLAIC::IPointerGestion::getRef  )  const [inline, inherited]
 

get the refence count.

Definition at line 99 of file abstract_interface.h.

References NLAIC::IPointerGestion::_Ref, and sint32.

Referenced by NLAIAGENT::CAgentTimerHandle::~CAgentTimerHandle().

00100                 {
00101                         return _Ref;
00102                 }

const IObjectIA* NLAIAGENT::IObjectIA::getStaticMember const IVarName compName  )  const [inline, inherited]
 

to get the pointer of a given components referened by an string.

Definition at line 261 of file baseai.h.

References NLAIAGENT::IObjectIA::getStaticMember(), and NLAIAGENT::IObjectIA::getStaticMemberIndex().

00262                 {
00263                         return getStaticMember(getStaticMemberIndex(compName));
00264                 }

const IObjectIA * NLAIAGENT::IObjectIA::getStaticMember sint32   )  const [virtual, inherited]
 

to get the pointer of a given components referened by an index.

Reimplemented in NLAIAGENT::CLocalAgentMail, NLAIAGENT::CAgentScript, NLAIAGENT::CMessageScript, and NLAISCRIPT::CAgentClass.

Definition at line 193 of file baseai.cpp.

References sint32.

Referenced by NLAISCRIPT::CCompilateur::affectationMember(), NLAIAGENT::CComponentHandle::getComponent(), NLAISCRIPT::CLdbMemberiOpCode::getDebugResult(), NLAISCRIPT::CLdbHeapMemberiOpCode::getDebugResult(), NLAISCRIPT::CLdbStackMemberiOpCode::getDebugResult(), NLAISCRIPT::CCallStackNewMethodi::getDebugResult(), NLAISCRIPT::CCallHeapMethodi::getDebugResult(), NLAISCRIPT::CCallStackMethodi::getDebugResult(), NLAISCRIPT::CCallMethodi::getDebugResult(), NLAISCRIPT::CLibHeapMemberMethod::getDebugResult(), NLAISCRIPT::CLibStackNewMemberMethod::getDebugResult(), NLAISCRIPT::CLibStackMemberMethod::getDebugResult(), NLAISCRIPT::CLibCallMethodi::getDebugResult(), NLAISCRIPT::CLibMemberMethodi::getDebugResult(), NLAISCRIPT::CLoadHeapObject::getObject(), NLAISCRIPT::CLoadStackObject::getObject(), NLAISCRIPT::CLoadSelfObject::getObject(), NLAIAGENT::IObjectIA::getStaticMember(), NLAIAGENT::CLocalAgentMail::getStaticMember(), NLAISCRIPT::CCompilateur::getValidateHierarchyBase(), NLAISCRIPT::CCompilateur::isValidateVarName(), NLAISCRIPT::CCodeBrancheRunDebug::printVariable(), NLAIAGENT::IObjectIA::runMethodeMember(), NLAISCRIPT::CLdbMemberiOpCode::runOpCode(), NLAISCRIPT::CLdbHeapMemberiOpCode::runOpCode(), NLAISCRIPT::CLdbStackMemberiOpCode::runOpCode(), NLAISCRIPT::CCallHeapMethodi::runOpCode(), NLAISCRIPT::CCallStackMethodi::runOpCode(), NLAISCRIPT::CCallStackNewMethodi::runOpCode(), NLAISCRIPT::CCallMethodi::runOpCode(), NLAISCRIPT::CLibHeapMemberMethod::runOpCode(), NLAISCRIPT::CLibStackNewMemberMethod::runOpCode(), NLAISCRIPT::CLibStackMemberMethod::runOpCode(), NLAISCRIPT::CLibCallMethodi::runOpCode(), NLAISCRIPT::CLibMemberMethodi::runOpCode(), NLAISCRIPT::CAffHeapMemberiOpCode::runOpCode(), and NLAISCRIPT::CAffMemberiOpCode::runOpCode().

00194         {
00195                 return NULL;
00196         }

sint32 NLAIAGENT::IObjectIA::getStaticMemberIndex const IVarName  )  const [virtual, inherited]
 

to get the index of a given components name.

Reimplemented in NLAIAGENT::CLocalAgentMail, NLAIAGENT::CAgentScript, and NLAIAGENT::CMessageScript.

Definition at line 188 of file baseai.cpp.

References sint32.

Referenced by NLAISCRIPT::CCompilateur::affectation(), NLAIAGENT::CComponentHandle::getComponent(), NLAIAGENT::IObjectIA::getStaticMember(), NLAIAGENT::CLocalAgentMail::getStaticMemberIndex(), NLAISCRIPT::CCompilateur::getValidateHierarchyBase(), NLAISCRIPT::CCompilateur::isValidateVarName(), NLAISCRIPT::CCodeBrancheRunDebug::printVariable(), NLAISCRIPT::CCompilateur::processingVar(), NLAISCRIPT::CConstraintStackComp::run(), and NLAIAGENT::IObjectIA::setStaticMember().

00189         {
00190                 return -1;
00191         }

sint32 NLAIAGENT::IObjectIA::getStaticMemberSize  )  const [virtual, inherited]
 

Static member is the component that the agent is create and die with. getStaticMemberSize to get the size of the static member components

Reimplemented in NLAIAGENT::CLocalAgentMail, NLAIAGENT::CAgentScript, NLAIAGENT::CMessageScript, NLAISCRIPT::IClassInterpret, and NLAISCRIPT::CAgentClass.

Definition at line 180 of file baseai.cpp.

References NLAIC::IBasicType::getType(), sint32, and NLAIC::stringGetBuild().

Referenced by NLAIAGENT::CLocalAgentMail::getStaticMemberSize().

00181         {
00182                 std::string text;
00183                 text = NLAIC::stringGetBuild("sint32 IObjectIA::getStaticMemberSize() note implementaited for the '%s' interface",(const char *)getType());
00184                 throw NLAIE::CExceptionNotImplemented(text.c_str());
00185                 return 0;       
00186         }

const NLAIC::CIdentType & NLAILOGIC::CValueSet::getType  )  const [virtual]
 

getType return a unique string how represente the class, it can be the name of the class. This function is used for the sytem regstry class (see the definition of the template class Gen::CRegistry).

Implements NLAIC::IBasicType.

Reimplemented in NLAILOGIC::CFact.

Definition at line 364 of file valueset.cpp.

References IdValueSet.

00365         {
00366                 return IdValueSet;
00367         }

IObjectIA * NLAILOGIC::CValueSet::getValue sint32   )  [virtual]
 

Definition at line 317 of file valueset.cpp.

References sint32.

Referenced by NLAILOGIC::CBoolAssert::addFact(), and NLAILOGIC::CBoolAssert::removeFact().

00318         {
00319                 if ( pos <= _NbValues )
00320                         return _Values[pos];    
00321                 else
00322                         return NULL;    // TODO: exception!!!!!!!!!!!!
00323         }

std::list< IObjectIA * > * NLAILOGIC::CValueSet::getValues  ) 
 

Return a list of the != NULL values of the object.

Definition at line 341 of file valueset.cpp.

References sint32.

00342         {
00343                 // Warning: this list must be deleted after use!!!
00344                 std::list<IObjectIA *> *result = new std::list<IObjectIA *>;
00345                 for (sint32 i = 0; i < _NbValues; i++ )
00346                 {
00347                         if ( _Values[i] )
00348                                 result->push_back( _Values[i] );
00349                 }
00350                 return result;
00351         }

void NLAIC::IPointerGestion::incRef  )  [inline, inherited]
 

Inc a reference. We use this when we have to conserve a pointer memeory for exemple in a list.

Definition at line 80 of file abstract_interface.h.

References NLAIC::IPointerGestion::_Ref.

Referenced by NLAIAGENT::CSeqFsmScript::activate(), NLAILOGIC::CFactBase::addAssert(), NLAIAGENT::IAgentComposite::addChild(), NLAILOGIC::IBaseAssert::addInput(), NLAILOGIC::CBoolOperator::addPostcondition(), NLAILOGIC::CBoolOperator::addPrecondition(), NLAILOGIC::CInternalGoal::addPredecessor(), NLAILOGIC::CGoal::addPredecessor(), NLAIFUZZY::CFuzzyVar::addSet(), NLAISCRIPT::CCompilateur::affectation(), NLAILOGIC::CFact::asValueSet(), NLAIAGENT::CAgentWatchTimer::attach(), NLAISCRIPT::CCompilateur::buildObject(), NLAISCRIPT::CAgentClass::buildVMethode(), NLAIAGENT::CAgentOperation::CAgentOperation(), NLAIAGENT::CAgentTimerHandle::CAgentTimerHandle(), NLAISCRIPT::CCompilateur::callFunction(), NLAISCRIPT::CClassInterpretFactory::CClassInterpretFactory(), NLAISCRIPT::CCodeBrancheRunDebug::CCodeBrancheRunDebug(), NLAISCRIPT::CCompilateur::CCompilateur(), NLAISCRIPT::CFactorType::CFactorType(), NLAISCRIPT::CFunctionTag::CFunctionTag(), NLAIAGENT::COperatorScript::checkTrigMsg(), NLAIC::CIdentType::CIdentType(), NLAIAGENT::CIdMethod::CIdMethod(), NLAIAGENT::CKeyObject::CKeyObject(), NLAISCRIPT::CFindRunMsg::clone(), NLAISCRIPT::CObjectUnknown::clone(), NLAISCRIPT::CConstraintStackComp::clone(), NLAISCRIPT::CConstraintFindRun::clone(), NLAISCRIPT::CConstraintMethode::clone(), NLAILINK::IOTrace::clone(), NLAISCRIPT::CMethodeName::CMethodeName(), NLAISCRIPT::CAgentClass::CMethodType::CMethodType(), NLAISCRIPT::CObjectUnknown::CObjectUnknown(), NLAIAGENT::CPairType::CPairType(), NLAISCRIPT::CAgentClass::createComponents(), CValueSet(), NLAILOGIC::CVar::CVar(), forward(), NLAIAGENT::IMessageBase::IMessageBase(), NLAIAGENT::CAgentScript::initAgentScript(), NLAISCRIPT::CCompilateur::initMessageManager(), NLAISCRIPT::COperatorClass::isValidFonc(), load(), NLAILOGIC::IBaseOperator::load(), NLAISCRIPT::CAgentClass::load(), NLAISCRIPT::CComponent::load(), NLAISCRIPT::CMethodeName::load(), NLAIAGENT::CVectorGroupType::operator+(), NLAIAGENT::CGroupType::operator+(), NLAISCRIPT::CPramContainer::operator+=(), NLAIAGENT::IMessageBase::operator=(), NLAIAGENT::CKeyObject::operator=(), NLAISCRIPT::CAgentClass::CMethodType::operator=(), NLAISCRIPT::CFunctionTag::operator=(), NLAIAGENT::CIdMethod::operator=(), NLAISCRIPT::CCompilateur::processingVar(), NLAIAGENT::CAgentScript::processMessages(), NLAISCRIPT::CCompilateur::pushParamExpression(), NLAISCRIPT::CConstraintFindRun::run(), NLAIAGENT::IBasicAgent::run(), NLAIAGENT::CAgentScript::runAskGetValue(), NLAIAGENT::IAgent::runChildren(), NLAIAGENT::CMainAgentScript::runExec(), NLAIAGENT::CAgentScript::runInitComponent(), NLAIAGENT::CAgentOperation::runMethodBase(), NLAIAGENT::CAgentWatchTimer::runMethodBase(), NLAIAGENT::CAgentScript::runMethodBase(), NLAIAGENT::CActorScript::runMethodBase(), NLAIAGENT::IMessageBase::runMethodeMember(), NLAIAGENT::IBaseGroupType::runMethodeMember(), NLAIAGENT::IBasicAgent::runMethodeMember(), NLAISCRIPT::CLdbRefOpCode::runOpCode(), NLAISCRIPT::CLdbMemberiOpCode::runOpCode(), NLAISCRIPT::CLdbHeapMemberiOpCode::runOpCode(), NLAISCRIPT::CLdbStackMemberiOpCode::runOpCode(), NLAISCRIPT::CCallStackMethodi::runOpCode(), NLAISCRIPT::CCallStackNewMethodi::runOpCode(), NLAISCRIPT::CLibStackNewMemberMethod::runOpCode(), NLAISCRIPT::CLibStackMemberMethod::runOpCode(), NLAISCRIPT::CAffOpCode::runOpCode(), NLAISCRIPT::CAddParamNameDebug::runOpCode(), NLAISCRIPT::CAffOpCodeDebug::runOpCode(), NLAISCRIPT::CAffHeapMemberiOpCode::runOpCode(), NLAISCRIPT::CAffMemberOpCode::runOpCode(), NLAISCRIPT::CAffMemberiOpCode::runOpCode(), NLAIAGENT::CAgentScript::runTellComponent(), NLAIAGENT::CAgentScript::runTellSetValue(), NLAISCRIPT::CMethodContextDebug::saveContext(), NLAISCRIPT::CMethodContext::saveContext(), NLAIAGENT::CAgentScript::sendBroadCast(), NLAIAGENT::IListManager::sendMessage(), NLAIAGENT::CAgentScript::sendMethodCompoment(), NLAIAGENT::CVolatilMemmory::sendUpdateMessage(), NLAISCRIPT::CFactorType::set(), NLAILOGIC::IBaseOperator::setGoal(), NLAISCRIPT::CCompilateur::setImediateVarNill(), NLAISCRIPT::CCompilateur::setMethodVar(), NLAISCRIPT::CCompilateur::setParamVarName(), NLAISCRIPT::CFunctionTag::setTypeObject(), NLAILOGIC::CVar::setValue(), setValue(), NLAIAGENT::CAgentWatchTimer::tellBroker(), NLAISCRIPT::CCompilateur::typeOfMethod(), NLAILOGIC::CVar::unify(), unify(), and NLAIAGENT::CAgentOperation::update().

00081                 {
00082                         _Ref ++;
00083                 }

void NLAIAGENT::IObjectIA::init IObjectIA  )  [virtual, inherited]
 

Init method alows to init the attribut of an object. the maparmetre is in more time a list of IObjectIA.

Reimplemented in NLAIFUZZY::CSimpleFuzzyCond, NLAIFUZZY::CFuzzyRule, NLAIFUZZY::CFuzzyRuleSet, NLAIFUZZY::CFuzzyInterval, NLAIFUZZY::CRightFuzzySet, NLAIFUZZY::CTriangleFuzzySet, NLAIFUZZY::CTrapezeFuzzySet, NLAIFUZZY::CLeftFuzzySet, NLAIFUZZY::CFuzzyVar, NLAILOGIC::CFirstOrderAssert, NLAILOGIC::CRule, and NLAILOGIC::CFactPattern.

Definition at line 116 of file baseai.cpp.

Referenced by NLAIFUZZY::IFuzzySet::runMethodeMember(), and NLAISCRIPT::CLdbNewOpCode::runOpCode().

00117         {
00118                 
00119         }

virtual TQueue NLAIAGENT::IObjetOp::IObjetOp::isMember const IVarName ,
const IVarName ,
const IObjectIA
const [virtual, inherited]
 

virtual CProcessResult NLAIAGENT::IObjetOp::IObjetOp::runMethodeMember sint32  index,
IObjectIA
[virtual, inherited]
 

sint32 NLAIAGENT::IObjectIA::isClassInheritedFrom const IVarName  )  const [virtual, inherited]
 

isClassInheritedFrom(className) allow us to known if this class have a base class with the name className.

If true the method return the range of the base class, this range is an arbitrary reference id define by the programmer or bay the scrypt. the false return is define by -1.

Reimplemented in NLAIAGENT::IVector, NLAIAGENT::CLocalAgentMail, NLAIAGENT::INombreDefine, NLAIAGENT::IBaseGroupType, and NLAIAGENT::CMessageScript.

Definition at line 246 of file baseai.cpp.

References sint32.

Referenced by NLAISCRIPT::CCompilateur::getValidateHierarchyBase(), NLAIAGENT::CLocalAgentMail::isClassInheritedFrom(), NLAIAGENT::CActorScript::Launch(), NLAIAGENT::CFsmScript::setTopLevel(), and NLAIAGENT::CActorScript::setTopLevel().

00247         {
00248                 return -1;
00249         }       

virtual bool NLAIAGENT::IBasicObjectIA::isEqual const IBasicObjectIA a  )  const [pure virtual, inherited]
 

The bool operator == (const IBasicObjectIA &a) const member method call this function when class 'classType' have the same type of this class, programme have to assume the equality between the memebers of this class and the memeber of the class 'classType'.

Implemented in NLAIAGENT::CActor, NLAIAGENT::CActorScript, NLAIAGENT::IAgent, NLAIAGENT::IVector, NLAIAGENT::IAgentInput, NLAIAGENT::CLocalAgentMail, NLAIAGENT::INombre< tNombre >, NLAIAGENT::CStringType, NLAIAGENT::CPairType, NLAIAGENT::CGroupType, NLAIAGENT::CVectorGroupType, NLAIAGENT::CProxyAgentMail, NLAIAGENT::CAgentScript, NLAIAGENT::IListBasicManager, NLAIAGENT::IListManager, NLAIAGENT::CLocalMailBox, NLAIAGENT::CMessageScript, NLAIAGENT::IMessageBase, NLAIAGENT::CObjectIdent, NLAIAGENT::CObjectType, NLAIAGENT::CAgentOperation, NLAIAGENT::CHashTimerManager, NLAIAGENT::CVolatilMemmory, NLAIAGENT::CFsmScript, NLAIAGENT::CSeqFsmScript, NLAIAGENT::COperatorScript, NLAIAGENT::INombre< double >, NLAIAGENT::INombre< uint16 >, NLAIAGENT::INombre< float >, NLAIAGENT::INombre< sint8 >, NLAIAGENT::INombre< uint64 >, NLAIAGENT::INombre< sint16 >, NLAIAGENT::INombre< uint8 >, NLAIAGENT::INombre< uint32 >, and NLAIAGENT::INombre< sint32 >.

Referenced by NLAIAGENT::CAgentOperation::isEqual(), NLAIAGENT::IMessageBase::isEqual(), NLAIAGENT::IListBasicManager::isEqual(), NLAIAGENT::CLocalAgentMail::isEqual(), NLAIAGENT::IAgentInput::isEqual(), and NLAIAGENT::IBasicObjectIA::operator==().

bool NLAILOGIC::CValueSet::isEqual const NLAIAGENT::IBasicObjectIA  )  const [virtual]
 

Definition at line 505 of file valueset.cpp.

References sint32.

00506         {
00507                 if ( _NbValues != ((CValueSet &)cmp)._NbValues )
00508                 {
00509                         return false;
00510                 }
00511 
00512                 for (sint32 i = _NbValues; i < _NbValues; i++ )
00513                 {
00514                         if ( _Values[i] != ((CValueSet &)cmp)._Values[i] )
00515                         {
00516                                 return false;
00517                         }
00518                 }
00519                 return true;
00520         }

bool NLAIAGENT::IObjectIA::isLocal  )  [virtual, inherited]
 

If the result is true the object is loclal else its a representation of an object on the server. By the method return true.

Definition at line 356 of file baseai.cpp.

00357         {
00358                 return true;
00359         }

TQueue NLAIAGENT::IObjectIA::isMember const IVarName ,
const IVarName ,
const IObjectIA
const [virtual, inherited]
 

The method isMember(nameSubClass,methodName,param) return the best method correspondent to the search. remember we use the overloadind method.

NameSubClass: if this pointer is not NULL then NameSubClass is the name of the base class were the method are defined.

methodName: is the name of the class.

param: is an IObjectIA where it defined the parametre of the method. lot of method use a IObjectIA vector object with an NLAIC::CIdentType as the the template argm.

Reimplemented in NLAIAGENT::IBasicAgent, NLAIAGENT::IVector, NLAIAGENT::CLocalAgentMail, NLAIAGENT::INombreDefine, NLAIAGENT::CPairType, NLAIAGENT::IBaseGroupType, NLAIAGENT::CVectorGroupType, NLAIAGENT::CProxyAgentMail, NLAIAGENT::CAgentTimerHandle, NLAIAGENT::IListBasicManager, NLAIAGENT::CMessageScript, and NLAIAGENT::IMessageBase.

Definition at line 206 of file baseai.cpp.

References _CONSTRUCTOR_, _RUN_, _SEND_, param, r, NLAIAGENT::IObjectIA::run(), and NLAIAGENT::TQueue.

Referenced by NLAIAGENT::CAgentWatchTimer::addAttrib(), NLAISCRIPT::CCompilateur::findMethode(), NLAISCRIPT::CAgentClass::isMember(), NLAIAGENT::CLocalAgentMail::isMember(), and NLAISCRIPT::CFindRunMsg::runOpCode().

00207         {               
00208                 static CStringVarName send(_SEND_);
00209                 static CStringVarName constructor(_CONSTRUCTOR_);
00210                 static CStringVarName run(_RUN_);
00211                 static CStringVarName statM("GetStaticMember");
00212 
00213                 if(*methodName == send)
00214                 {
00215                         TQueue r;                       
00216                         CObjectType *c = new CObjectType(new NLAIC::CIdentType(NLAIC::CIdentType::VoidType));
00217                         r.push(CIdMethod(0,0.0,NULL,c));
00218                         return r;
00219                 }
00220                 else
00221                 if(*methodName == constructor && !((const NLAISCRIPT::CParam &)param).size())
00222                 {
00223                         TQueue r;
00224                         CObjectType *c = new CObjectType(new NLAIC::CIdentType(NLAIC::CIdentType::VoidType));
00225                         r.push(CIdMethod(1,0.0,NULL,c));
00226                         return r;
00227                 }
00228                 else
00229                 if(*methodName == run && !((const NLAISCRIPT::CParam &)param).size())
00230                 {
00231                         TQueue r;
00232                         CObjectType *c = new CObjectType(new NLAIC::CIdentType(NLAIC::CIdentType::VoidType));
00233                         r.push(CIdMethod(2,0.0,NULL,c));
00234                         return r;                       
00235                 }
00236                 if(*methodName == statM && ((const NLAISCRIPT::CParam &)param).size())
00237                 {
00238                         TQueue r;
00239                         CObjectType *c = new CObjectType(new NLAIC::CIdentType(*IAgent::IdAgent));
00240                         r.push(CIdMethod(3,0.0,NULL,c));
00241                         return r;                       
00242                 }
00243                 return TQueue();
00244         }

bool NLAILOGIC::CValueSet::isTrue  )  const [virtual]
 

throw (NLAIE::CExceptionNotImplemented)

Implements NLAIAGENT::IObjetOp.

Definition at line 522 of file valueset.cpp.

References sint32, and undefined().

Referenced by operator!().

00523         {
00524                 return ( undefined() == (sint32) 0 );
00525         }

void NLAILOGIC::CValueSet::load NLMISC::IStream is  )  [virtual]
 

Load the class from a stream.

Implements NLAIC::IBasicInterface.

Definition at line 399 of file valueset.cpp.

References NLAIC::IPointerGestion::incRef(), NLAIC::IBasicInterface::load(), NLAIC::IPointerGestion::release(), NLMISC::IStream::serial(), and sint32.

00400         {
00401                 // Deletes the old table
00402                 int i;
00403                 for ( i = 0; i < _NbValues; i++ )
00404                         if ( _Values[i] )
00405                                 _Values[i]->release();
00406                 delete[] _Values;
00407                 
00408                 // Creates the new one
00409                 sint32 nb_Values;
00410                 is.serial( nb_Values );
00411                 _NbValues = (sint32) nb_Values;
00412                 sint32 nbvals;
00413                 is.serial( nbvals );
00414                 
00415                 _Values = new IObjectIA *[ _NbValues ];
00416 
00417                 for ( i = 0; i < _NbValues; i++ )
00418                 {
00419                         _Values[ i ] = NULL;
00420                 }
00421 
00422                 std::list<IObjectIA *> vals;
00423                 std::vector<sint32> pos;
00424 
00425                 for ( i = 0; i < nbvals; i++ )
00426                 {
00427                         NLAIC::CIdentTypeAlloc id;
00428                         is.serial( id );
00429                         IObjectIA *tmp_val = (IObjectIA *) id.allocClass();
00430                         tmp_val->load( is );
00431                         tmp_val->incRef();
00432                         vals.push_back(  tmp_val );
00433                 }
00434         }

virtual IObjetOp& NLAIAGENT::IObjetOp::neg  )  [inline, virtual, inherited]
 

throw (NLAIE::CExceptionNotImplemented)

Reimplemented in NLAIAGENT::DigitalType, NLAIAGENT::BorneDigitalType, NLAIAGENT::DDigitalType, NLAIAGENT::BorneDDigitalType, NLAIAGENT::IntegerType, NLAIAGENT::ShortIntegerType, NLAIAGENT::CharType, NLAIAGENT::UInt8Type, NLAIAGENT::UInt16Type, NLAIAGENT::UInt32Type, NLAIAGENT::UInt64Type, NLAIAGENT::INombre< tNombre >, NLAIAGENT::CGroupType, NLAIAGENT::CVectorGroupType, NLAIAGENT::CAgentOperation, NLAISCRIPT::CVarPStack, NLAISCRIPT::CVarPStackParam, NLAIAGENT::INombre< double >, NLAIAGENT::INombre< uint16 >, NLAIAGENT::INombre< float >, NLAIAGENT::INombre< sint8 >, NLAIAGENT::INombre< uint64 >, NLAIAGENT::INombre< sint16 >, NLAIAGENT::INombre< uint8 >, NLAIAGENT::INombre< uint32 >, and NLAIAGENT::INombre< sint32 >.

Definition at line 101 of file agent_operator.h.

References NLAIC::IBasicType::getType(), and NLAIC::stringGetBuild().

Referenced by NLAIAGENT::IObjetOp::getNeg(), NLAISCRIPT::CVarPStackParam::neg(), NLAISCRIPT::CVarPStack::neg(), and NLAIAGENT::CAgentOperation::neg().

00102                 {
00103                         std::string text;
00104                         text = NLAIC::stringGetBuild("opertor <IObjectIA &neg()> note implemented for the '%s' interface",(const char *)getType());
00105                         throw NLAIE::CExceptionNotImplemented(text.c_str());
00106                         return *this;
00107                 }               

const NLAIC::IBasicType * NLAILOGIC::CValueSet::newInstance  )  const [virtual]
 

This function allow a new instance, that mean that the class is a class factory.

Implements NLAIC::IBasicType.

Reimplemented in NLAILOGIC::CFact.

Definition at line 359 of file valueset.cpp.

References clone().

00360         {
00361                 return clone();
00362         }

virtual IObjetOp* NLAIAGENT::IObjetOp::operator * IObjetOp a  )  [inline, virtual, inherited]
 

throw (NLAIE::CExceptionNotImplemented)

Definition at line 202 of file agent_operator.h.

00203                 {
00204                         return *this * *a;
00205 
00206                 }

virtual IObjetOp* NLAIAGENT::IObjetOp::operator * const IObjetOp  )  [inline, virtual, inherited]
 

throw (NLAIE::CExceptionNotImplemented)

Reimplemented in NLAIAGENT::INombre< tNombre >, NLAIAGENT::INombre< double >, NLAIAGENT::INombre< uint16 >, NLAIAGENT::INombre< float >, NLAIAGENT::INombre< sint8 >, NLAIAGENT::INombre< uint64 >, NLAIAGENT::INombre< sint16 >, NLAIAGENT::INombre< uint8 >, NLAIAGENT::INombre< uint32 >, and NLAIAGENT::INombre< sint32 >.

Definition at line 147 of file agent_operator.h.

References NLAIC::IBasicType::getType(), and NLAIC::stringGetBuild().

00148                 {
00149                         std::string text;
00150                         text = NLAIC::stringGetBuild("opertor <virtual IObjetOp *operator * (const IObjetOp &a)  const> note implemented for the '%s' interface",(const char *)getType());
00151                         throw NLAIE::CExceptionNotImplemented(text.c_str());
00152                         return (IObjetOp *)this;
00153                 }

virtual IObjetOp& NLAIAGENT::IObjetOp::operator *= IObjetOp a  )  [inline, virtual, inherited]
 

throw (NLAIE::CExceptionNotImplemented)

Definition at line 182 of file agent_operator.h.

00183                 {
00184                         return *this *= *a;
00185 
00186                 }

virtual IObjetOp& NLAIAGENT::IObjetOp::operator *= const IObjetOp  )  [inline, virtual, inherited]
 

throw (NLAIE::CExceptionNotImplemented)

Reimplemented in NLAIAGENT::INombre< tNombre >, NLAIAGENT::CAgentOperation, NLAIAGENT::INombre< double >, NLAIAGENT::INombre< uint16 >, NLAIAGENT::INombre< float >, NLAIAGENT::INombre< sint8 >, NLAIAGENT::INombre< uint64 >, NLAIAGENT::INombre< sint16 >, NLAIAGENT::INombre< uint8 >, NLAIAGENT::INombre< uint32 >, and NLAIAGENT::INombre< sint32 >.

Definition at line 110 of file agent_operator.h.

References NLAIC::IBasicType::getType(), and NLAIC::stringGetBuild().

00111                 {
00112                         std::string text;
00113                         text = NLAIC::stringGetBuild("opertor <IObjectIA &operator *= (const IObjectIA &a)> note implemented for the '%s' interface",(const char *)getType());
00114                         throw NLAIE::CExceptionNotImplemented(text.c_str());
00115                         return *this;
00116                 }

IObjetOp * NLAILOGIC::CValueSet::operator!  )  const [virtual]
 

throw (NLAIE::CExceptionNotImplemented)

Reimplemented from NLAIAGENT::IObjetOp.

Definition at line 453 of file valueset.cpp.

References isTrue().

00454         {
00455                 CBoolType *result = new CBoolType ( !isTrue() );
00456                 return result;
00457         }

virtual IObjetOp* NLAIAGENT::IObjetOp::operator!= IObjetOp  )  const [inline, virtual, inherited]
 

throw (NLAIE::CExceptionNotImplemented)

Reimplemented in NLAIAGENT::IVector, NLAIAGENT::INombre< tNombre >, NLAIAGENT::CStringType, NLAIFUZZY::FuzzyType, NLAILOGIC::CBoolType, NLAILOGIC::CClause, NLAILOGIC::CVarSet, NLAISCRIPT::CVarPStack, NLAISCRIPT::CVarPStackParam, NLAIAGENT::INombre< double >, NLAIAGENT::INombre< uint16 >, NLAIAGENT::INombre< float >, NLAIAGENT::INombre< sint8 >, NLAIAGENT::INombre< uint64 >, NLAIAGENT::INombre< sint16 >, NLAIAGENT::INombre< uint8 >, NLAIAGENT::INombre< uint32 >, and NLAIAGENT::INombre< sint32 >.

Definition at line 252 of file agent_operator.h.

References NLAIC::IBasicType::getType(), and NLAIC::stringGetBuild().

00253                 {
00254                         std::string text;
00255                         text = NLAIC::stringGetBuild("opertor <virtual IObjetOp *operator != (const IObjetOp &a)  const> note implemented for the '%s' interface",(const char *)getType());
00256                         throw NLAIE::CExceptionNotImplemented(text.c_str());
00257                         return (IObjetOp *)this;
00258                 }               

IObjectIA * NLAILOGIC::CValueSet::operator!= NLAIAGENT::IObjectIA a  )  const [virtual]
 

Definition at line 459 of file valueset.cpp.

References sint32.

00460         {
00461                 if ( _NbValues != ((CValueSet &)a)._NbValues )
00462                 {
00463                         CBoolType *result = new CBoolType ( false );
00464                         return result;
00465                 }
00466 
00467 
00468                 for (sint32 i = _NbValues; i < _NbValues; i++ )
00469                 {
00470                         if ( _Values[i] != ((CValueSet &)a)._Values[i] )
00471                         {
00472                                 CBoolType *result = new CBoolType ( false );
00473                                 return result;
00474                         }
00475 
00476                 }
00477                 CBoolType *result = new CBoolType ( true );
00478                 return result;
00479         }

virtual IObjetOp* NLAIAGENT::IObjetOp::operator+ IObjetOp a  )  [inline, virtual, inherited]
 

throw (NLAIE::CExceptionNotImplemented)

Reimplemented in NLAIAGENT::CGroupType, and NLAIAGENT::CVectorGroupType.

Definition at line 193 of file agent_operator.h.

00194                 {
00195                         return *this + *a;
00196                 }

virtual IObjetOp* NLAIAGENT::IObjetOp::operator+ const IObjetOp  )  [inline, virtual, inherited]
 

throw (NLAIE::CExceptionNotImplemented)

Reimplemented in NLAIAGENT::IVector, NLAIAGENT::INombre< tNombre >, NLAIAGENT::CGroupType, NLAIAGENT::CVectorGroupType, NLAIAGENT::INombre< double >, NLAIAGENT::INombre< uint16 >, NLAIAGENT::INombre< float >, NLAIAGENT::INombre< sint8 >, NLAIAGENT::INombre< uint64 >, NLAIAGENT::INombre< sint16 >, NLAIAGENT::INombre< uint8 >, NLAIAGENT::INombre< uint32 >, and NLAIAGENT::INombre< sint32 >.

Definition at line 131 of file agent_operator.h.

References NLAIC::IBasicType::getType(), and NLAIC::stringGetBuild().

00132                 {
00133                         std::string text;
00134                         text = NLAIC::stringGetBuild("opertor <virtual IObjetOp *operator + (const IObjetOp &a)  const> note implemented for the '%s' interface",(const char *)getType());
00135                         throw NLAIE::CExceptionNotImplemented(text.c_str());
00136                         return (IObjetOp *)this;
00137                 }

virtual IObjetOp& NLAIAGENT::IObjetOp::operator+= IObjetOp a  )  [inline, virtual, inherited]
 

throw (NLAIE::CExceptionNotImplemented)

Reimplemented in NLAIAGENT::IBaseGroupType.

Definition at line 173 of file agent_operator.h.

00174                 {
00175                         return *this += *a;
00176                 }

virtual IObjetOp& NLAIAGENT::IObjetOp::operator+= const IObjetOp  )  [inline, virtual, inherited]
 

add the operater by anather.

We do'nt make a pure virtual for this methods because we didn't wont to make development too many long, we prefer to put an exception to warn developer when this method is'nt define in the derivation class.

Reimplemented in NLAIAGENT::IVector, NLAIAGENT::INombre< tNombre >, NLAIAGENT::CStringType, NLAIAGENT::IBaseGroupType, NLAIAGENT::IListBasicManager, NLAIAGENT::CAgentOperation, NLAIAGENT::INombre< double >, NLAIAGENT::INombre< uint16 >, NLAIAGENT::INombre< float >, NLAIAGENT::INombre< sint8 >, NLAIAGENT::INombre< uint64 >, NLAIAGENT::INombre< sint16 >, NLAIAGENT::INombre< uint8 >, NLAIAGENT::INombre< uint32 >, and NLAIAGENT::INombre< sint32 >.

Definition at line 83 of file agent_operator.h.

References NLAIC::IBasicType::getType(), and NLAIC::stringGetBuild().

00084                 {                       
00085                         std::string text;
00086                         text = NLAIC::stringGetBuild("opertor <IObjectIA &operator += (const IObjectIA &a)> note implemented for the '%s' interface",(const char *)getType());
00087                         throw NLAIE::CExceptionNotImplemented(text.c_str());
00088                         return *this;
00089                 }

virtual IObjetOp* NLAIAGENT::IObjetOp::operator- IObjetOp a  )  [inline, virtual, inherited]
 

throw (NLAIE::CExceptionNotImplemented)

Reimplemented in NLAIAGENT::CGroupType, and NLAIAGENT::CVectorGroupType.

Definition at line 197 of file agent_operator.h.

00198                 {
00199                         return *this - *a;
00200 
00201                 }

virtual IObjetOp* NLAIAGENT::IObjetOp::operator- const IObjetOp  )  [inline, virtual, inherited]
 

throw (NLAIE::CExceptionNotImplemented)

Reimplemented in NLAIAGENT::IVector, NLAIAGENT::INombre< tNombre >, NLAIAGENT::CGroupType, NLAIAGENT::CVectorGroupType, NLAIAGENT::INombre< double >, NLAIAGENT::INombre< uint16 >, NLAIAGENT::INombre< float >, NLAIAGENT::INombre< sint8 >, NLAIAGENT::INombre< uint64 >, NLAIAGENT::INombre< sint16 >, NLAIAGENT::INombre< uint8 >, NLAIAGENT::INombre< uint32 >, and NLAIAGENT::INombre< sint32 >.

Definition at line 139 of file agent_operator.h.

References NLAIC::IBasicType::getType(), and NLAIC::stringGetBuild().

00140                 {
00141                         std::string text;
00142                         text = NLAIC::stringGetBuild("opertor <virtual IObjetOp *operator - (const IObjetOp &a)  const> note implemented for the '%s' interface",(const char *)getType());
00143                         throw NLAIE::CExceptionNotImplemented(text.c_str());
00144                         return (IObjetOp *)this;
00145                 }

virtual IObjetOp& NLAIAGENT::IObjetOp::operator-= IObjetOp a  )  [inline, virtual, inherited]
 

throw (NLAIE::CExceptionNotImplemented)

Reimplemented in NLAIAGENT::IBaseGroupType.

Definition at line 177 of file agent_operator.h.

00178                 {
00179                         return *this -= *a;
00180 
00181                 }

virtual IObjetOp& NLAIAGENT::IObjetOp::operator-= const IObjetOp  )  [inline, virtual, inherited]
 

throw (NLAIE::CExceptionNotImplemented)

Reimplemented in NLAIAGENT::IVector, NLAIAGENT::INombre< tNombre >, NLAIAGENT::CStringType, NLAIAGENT::IBaseGroupType, NLAIAGENT::IListBasicManager, NLAIAGENT::CAgentOperation, NLAIAGENT::INombre< double >, NLAIAGENT::INombre< uint16 >, NLAIAGENT::INombre< float >, NLAIAGENT::INombre< sint8 >, NLAIAGENT::INombre< uint64 >, NLAIAGENT::INombre< sint16 >, NLAIAGENT::INombre< uint8 >, NLAIAGENT::INombre< uint32 >, and NLAIAGENT::INombre< sint32 >.

Definition at line 92 of file agent_operator.h.

References NLAIC::IBasicType::getType(), and NLAIC::stringGetBuild().

00093                 {
00094                         std::string text;
00095                         text = NLAIC::stringGetBuild("opertor <IObjectIA &operator -= (const IObjectIA &a)> note implemented for the '%s' interface",(const char *)getType());
00096                         throw NLAIE::CExceptionNotImplemented(text.c_str());
00097                         return *this;
00098                 }

virtual IObjetOp* NLAIAGENT::IObjetOp::operator/ IObjetOp a  )  [inline, virtual, inherited]
 

throw (NLAIE::CExceptionNotImplemented)

Definition at line 207 of file agent_operator.h.

00208                 {
00209                         return *this / *a;
00210 
00211                 }

virtual IObjetOp* NLAIAGENT::IObjetOp::operator/ const IObjetOp  )  [inline, virtual, inherited]
 

throw (NLAIE::CExceptionNotImplemented)

Reimplemented in NLAIAGENT::INombre< tNombre >, NLAIAGENT::INombre< double >, NLAIAGENT::INombre< uint16 >, NLAIAGENT::INombre< float >, NLAIAGENT::INombre< sint8 >, NLAIAGENT::INombre< uint64 >, NLAIAGENT::INombre< sint16 >, NLAIAGENT::INombre< uint8 >, NLAIAGENT::INombre< uint32 >, and NLAIAGENT::INombre< sint32 >.

Definition at line 155 of file agent_operator.h.

References NLAIC::IBasicType::getType(), and NLAIC::stringGetBuild().

00156                 {
00157                         std::string text;
00158                         text = NLAIC::stringGetBuild("opertor <virtual IObjetOp *operator / (const IObjetOp &a)  const> note implemented for the '%s' interface",(const char *)getType());
00159                         throw NLAIE::CExceptionNotImplemented(text.c_str());
00160                         return (IObjetOp *)this;
00161                 }

virtual IObjetOp& NLAIAGENT::IObjetOp::operator/= IObjetOp a  )  [inline, virtual, inherited]
 

throw (NLAIE::CExceptionNotImplemented)

Definition at line 187 of file agent_operator.h.

00188                 {
00189                         return *this /= *a;
00190 
00191                 }

virtual IObjetOp& NLAIAGENT::IObjetOp::operator/= const IObjetOp  )  [inline, virtual, inherited]
 

throw (NLAIE::CExceptionNotImplemented)

Reimplemented in NLAIAGENT::INombre< tNombre >, NLAIAGENT::CAgentOperation, NLAIAGENT::INombre< double >, NLAIAGENT::INombre< uint16 >, NLAIAGENT::INombre< float >, NLAIAGENT::INombre< sint8 >, NLAIAGENT::INombre< uint64 >, NLAIAGENT::INombre< sint16 >, NLAIAGENT::INombre< uint8 >, NLAIAGENT::INombre< uint32 >, and NLAIAGENT::INombre< sint32 >.

Definition at line 119 of file agent_operator.h.

References NLAIC::IBasicType::getType(), and NLAIC::stringGetBuild().

00120                 {
00121                         std::string text;
00122                         text = NLAIC::stringGetBuild("opertor <IObjectIA &operator /= (const IObjectIA &a)> note implemented for the '%s' interface",(const char *)getType());
00123                         throw NLAIE::CExceptionNotImplemented(text.c_str());
00124                         return *this;
00125                 }       

virtual IObjetOp* NLAIAGENT::IObjetOp::operator< IObjetOp  )  const [inline, virtual, inherited]
 

throw (NLAIE::CExceptionNotImplemented)

Reimplemented in NLAIAGENT::INombre< tNombre >, NLAIAGENT::CStringType, NLAIFUZZY::FuzzyType, NLAILOGIC::CBoolType, NLAISCRIPT::CVarPStack, NLAISCRIPT::CVarPStackParam, NLAIAGENT::INombre< double >, NLAIAGENT::INombre< uint16 >, NLAIAGENT::INombre< float >, NLAIAGENT::INombre< sint8 >, NLAIAGENT::INombre< uint64 >, NLAIAGENT::INombre< sint16 >, NLAIAGENT::INombre< uint8 >, NLAIAGENT::INombre< uint32 >, and NLAIAGENT::INombre< sint32 >.

Definition at line 213 of file agent_operator.h.

References NLAIC::IBasicType::getType(), and NLAIC::stringGetBuild().

00214                 {
00215                         std::string text;
00216                         text = NLAIC::stringGetBuild("opertor <virtual IObjetOp *operator < (const IObjetOp &a)  const> note implemented for the '%s' interface",(const char *)getType());
00217                         throw NLAIE::CExceptionNotImplemented(text.c_str());
00218                         return (IObjetOp *)this;
00219                 }

virtual IObjetOp* NLAIAGENT::IObjetOp::operator<= IObjetOp  )  const [inline, virtual, inherited]
 

throw (NLAIE::CExceptionNotImplemented)

Reimplemented in NLAIAGENT::INombre< tNombre >, NLAIAGENT::CStringType, NLAIFUZZY::FuzzyType, NLAILOGIC::CBoolType, NLAISCRIPT::CVarPStack, NLAISCRIPT::CVarPStackParam, NLAIAGENT::INombre< double >, NLAIAGENT::INombre< uint16 >, NLAIAGENT::INombre< float >, NLAIAGENT::INombre< sint8 >, NLAIAGENT::INombre< uint64 >, NLAIAGENT::INombre< sint16 >, NLAIAGENT::INombre< uint8 >, NLAIAGENT::INombre< uint32 >, and NLAIAGENT::INombre< sint32 >.

Definition at line 229 of file agent_operator.h.

References NLAIC::IBasicType::getType(), and NLAIC::stringGetBuild().

00230                 {
00231                         std::string text;
00232                         text = NLAIC::stringGetBuild("opertor <virtual IObjetOp *operator <= (const IObjetOp &a)  const> note implemented for the '%s' interface",(const char *)getType());
00233                         throw NLAIE::CExceptionNotImplemented(text.c_str());
00234                         return (IObjetOp *)this;
00235                 }

bool NLAIAGENT::IBasicObjectIA::operator== const IBasicObjectIA classType  )  const [inherited]
 

Lot of algo use this function to determine the equality between 2 class, in particular the extraction from stl list. the == operator call the bool isEqual(const IBasicObjectIA &a) const member method to determine the equality between tow class.

Definition at line 134 of file baseai.cpp.

References NLAIC::IBasicType::getType(), and NLAIAGENT::IBasicObjectIA::isEqual().

00135         {                                               
00136                 if(a.getType() == getType() ) return isEqual(a);                        
00137                 return false;
00138         }               

virtual IObjetOp* NLAIAGENT::IObjetOp::operator== IObjetOp  )  const [inline, virtual, inherited]
 

throw (NLAIE::CExceptionNotImplemented)

Reimplemented in NLAIAGENT::IVector, NLAIAGENT::INombre< tNombre >, NLAIAGENT::CStringType, NLAIFUZZY::CFuzzyRule, NLAIFUZZY::FuzzyType, NLAIFUZZY::CFuzzyVar, NLAILOGIC::CBoolType, NLAILOGIC::CClause, NLAILOGIC::CVar, NLAISCRIPT::CVarPStack, NLAISCRIPT::CVarPStackParam, NLAIAGENT::INombre< double >, NLAIAGENT::INombre< uint16 >, NLAIAGENT::INombre< float >, NLAIAGENT::INombre< sint8 >, NLAIAGENT::INombre< uint64 >, NLAIAGENT::INombre< sint16 >, NLAIAGENT::INombre< uint8 >, NLAIAGENT::INombre< uint32 >, and NLAIAGENT::INombre< sint32 >.

Definition at line 260 of file agent_operator.h.

References NLAIC::IBasicType::getType(), and NLAIC::stringGetBuild().

00261                 {
00262                         std::string text;
00263                         text = NLAIC::stringGetBuild("opertor <virtual IObjetOp *operator == (const IObjetOp &a)  const> note implemented for the '%s' interface",(const char *)getType());
00264                         throw NLAIE::CExceptionNotImplemented(text.c_str());
00265                         return (IObjetOp *)this;
00266                 }

IObjectIA * NLAILOGIC::CValueSet::operator== NLAIAGENT::IObjectIA a  )  const [virtual]
 

Definition at line 481 of file valueset.cpp.

References sint32.

00482         {
00483                 if ( _NbValues != ((CValueSet &)a)._NbValues )
00484                 {
00485                         CBoolType *result = new CBoolType ( false );
00486                         return result;
00487                 }
00488 
00489                 for (sint32 i = 0; i < _NbValues; i++ )
00490                 {
00491                         bool test_result = (*_Values[i]) == *((CValueSet &)a)._Values[i];
00492 /*                      IObjectIA *test = (*_Values[i]) != *((CValueSet &)a)._Values[i];
00493                         bool test_result = test->isTrue();
00494                         test->release(); */
00495                         if ( !test_result )
00496                         {
00497                                 CBoolType *result = new CBoolType ( false );
00498                                 return result;
00499                         }
00500                 }
00501                 CBoolType *result = new CBoolType ( true );
00502                 return result;
00503         }

bool NLAILOGIC::CValueSet::operator== CValueSet  ) 
 

Definition at line 298 of file valueset.cpp.

References _NbValues, _Values, and sint32.

00299         {
00300                 if( cp->_NbValues != _NbValues )
00301                         return false;
00302 
00303                 for ( sint32 i = 0; i < _NbValues; i++ )
00304                         if ( cp->_Values[i] != _Values[i] )
00305                                 return false;
00306                 return true;
00307         }

virtual IObjetOp* NLAIAGENT::IObjetOp::operator> IObjetOp  )  const [inline, virtual, inherited]
 

throw (NLAIE::CExceptionNotImplemented)

Reimplemented in NLAIAGENT::INombre< tNombre >, NLAIAGENT::CStringType, NLAIFUZZY::FuzzyType, NLAILOGIC::CBoolType, NLAISCRIPT::CVarPStack, NLAISCRIPT::CVarPStackParam, NLAIAGENT::INombre< double >, NLAIAGENT::INombre< uint16 >, NLAIAGENT::INombre< float >, NLAIAGENT::INombre< sint8 >, NLAIAGENT::INombre< uint64 >, NLAIAGENT::INombre< sint16 >, NLAIAGENT::INombre< uint8 >, NLAIAGENT::INombre< uint32 >, and NLAIAGENT::INombre< sint32 >.

Definition at line 221 of file agent_operator.h.

References NLAIC::IBasicType::getType(), and NLAIC::stringGetBuild().

00222                 {
00223                         std::string text;
00224                         text = NLAIC::stringGetBuild("opertor <virtual IObjetOp *operator > (const IObjetOp &a)  const> note implemented for the '%s' interface",(const char *)getType());
00225                         throw NLAIE::CExceptionNotImplemented(text.c_str());
00226                         return (IObjetOp *)this;
00227                 }

virtual IObjetOp* NLAIAGENT::IObjetOp::operator>= IObjetOp  )  const [inline, virtual, inherited]
 

throw (NLAIE::CExceptionNotImplemented)

Reimplemented in NLAIAGENT::INombre< tNombre >, NLAIAGENT::CStringType, NLAIFUZZY::FuzzyType, NLAILOGIC::CBoolType, NLAISCRIPT::CVarPStack, NLAISCRIPT::CVarPStackParam, NLAIAGENT::INombre< double >, NLAIAGENT::INombre< uint16 >, NLAIAGENT::INombre< float >, NLAIAGENT::INombre< sint8 >, NLAIAGENT::INombre< uint64 >, NLAIAGENT::INombre< sint16 >, NLAIAGENT::INombre< uint8 >, NLAIAGENT::INombre< uint32 >, and NLAIAGENT::INombre< sint32 >.

Definition at line 237 of file agent_operator.h.

References NLAIC::IBasicType::getType(), and NLAIC::stringGetBuild().

00238                 {
00239                         std::string text;
00240                         text = NLAIC::stringGetBuild("opertor <virtual IObjetOp *operator >= (const IObjetOp &a)  const> note implemented for the '%s' interface",(const char *)getType());
00241                         throw NLAIE::CExceptionNotImplemented(text.c_str());
00242                         return (IObjetOp *)this;
00243                 }

IObjectIA * NLAILOGIC::CValueSet::operator[] sint32   )  [virtual]
 

Definition at line 309 of file valueset.cpp.

References sint32.

00310         {
00311                 if ( pos <= _NbValues )
00312                         return _Values[pos];    
00313                 else
00314                         return NULL;    // TODO: exception!!!!!!!!!!!!
00315         }

virtual void NLAIC::IPointerGestion::release void   )  [inline, virtual, inherited]
 

Release allow to release the pointer. The last release when the _Ref is nul delete the object.

Definition at line 86 of file abstract_interface.h.

References NLAIC::IPointerGestion::decRef().

Referenced by NLAIAGENT::CSeqFsmScript::activate(), NLAISCRIPT::CAgentClass::addBrancheCode(), NLAISCRIPT::CConstraintDebug::addIndex(), NLAISCRIPT::CCompilateur::affectation(), NLAISCRIPT::CCompilateur::affectationMember(), NLAISCRIPT::COperatorClass::backward(), NLAILOGIC::CFirstOrderOperator::backward(), NLAILOGIC::CFirstOrderAssert::backward(), NLAISCRIPT::CCompilateur::buildObject(), NLAILINK::buildScript(), NLAISCRIPT::CCompilateur::callFunction(), NLAIC::CIdentType::CIdentType(), NLAISCRIPT::CCompilateur::clean(), NLAISCRIPT::CParam::clear(), NLAIAGENT::CVectorGroupType::clear(), NLAIAGENT::CGroupType::clear(), NLAIAGENT::CVolatilMemmory::CVolatilMemmory(), NLAISCRIPT::CFactorType::del(), NLAIAGENT::IAgentComposite::deleteListe(), NLAIPYSERVER::endPythonInterface(), NLAIAGENT::CVectorGroupType::erase(), NLAIAGENT::CGroupType::erase(), NLAIAGENT::CVectorGroupType::eraseAll(), NLAIAGENT::CGroupType::eraseAll(), NLAISCRIPT::CCompilateur::errorMethodConstraint(), NLAISCRIPT::CCompilateur::errorTypeConstraint(), NLAISCRIPT::CCompilateur::findMethode(), NLAISCRIPT::COperatorClass::forward(), NLAILOGIC::CFirstOrderOperator::forward(), NLAIAGENT::CComponentHandle::getComponent(), NLAIAGENT::COperatorScript::getDebugString(), NLAIAGENT::CAgentScript::getDebugString(), NLAILOGIC::IBaseOperator::IBaseOperator(), NLAISCRIPT::CCompilateur::ifInterrogation(), NLAISCRIPT::CCompilateur::ifInterrogationEnd(), NLAILOGIC::CFactPattern::init(), NLAILOGIC::CRule::init(), NLAIFUZZY::CTrapezeFuzzySet::init(), NLAIFUZZY::CLeftFuzzySet::init(), NLAIFUZZY::CTriangleFuzzySet::init(), NLAIFUZZY::CRightFuzzySet::init(), NLAIFUZZY::CFuzzyInterval::init(), NLAIFUZZY::CFuzzyRule::init(), NLAIFUZZY::CSimpleFuzzyCond::init(), NLAISCRIPT::CCompilateur::interrogationEnd(), NLAISCRIPT::COperatorClass::isValidFonc(), NLAIAGENT::IAgent::Kill(), NLAILOGIC::CVar::load(), load(), NLAISCRIPT::CLdbOpCode::load(), NLAISCRIPT::CLibCallMethodi::load(), NLAISCRIPT::CLibCallInheritedMethod::load(), NLAISCRIPT::CLibCallMethod::load(), NLAISCRIPT::CLdbNewOpCode::load(), NLAISCRIPT::CAddParamNameDebug::load(), NLAISCRIPT::CFindRunMsg::load(), NLAIAGENT::IListBasicManager::load(), NLAIAGENT::CVectorGroupType::load(), NLAIAGENT::CGroupType::load(), NLAIAGENT::CAgentScript::load(), NLAIAGENT::CStringType::load(), NLAIAGENT::CLocalAgentMail::load(), NLAISCRIPT::CMethodContextDebug::loadContext(), NLAISCRIPT::CCompilateur::onEndClass(), NLAIAGENT::CLocalMailBox::onKill(), NLAIAGENT::IAgent::onKill(), NLAIAGENT::CLocalAgentMail::onKill(), NLAIAGENT::CVectorGroupType::operator-(), NLAIAGENT::CGroupType::operator-(), NLAIAGENT::CKeyObject::operator=(), NLAISCRIPT::CFunctionTag::operator=(), NLAIAGENT::CIdMethod::operator=(), NLAISCRIPT::CCompilateur::PrivateError(), NLAISCRIPT::CCompilateur::processingVar(), NLAIAGENT::CAgentScript::processMessages(), NLAIAGENT::IRefrence::refLoadStream(), NLAISCRIPT::CCompilateur::registerMethod(), NLAIAGENT::IAgentComposite::removeChild(), NLAILOGIC::CFirstOrderAssert::removeFact(), NLAISCRIPT::CConstraintStackComp::run(), NLAISCRIPT::CConstraintFindRun::run(), NLAISCRIPT::CConstraintMethode::run(), NLAIAGENT::IBasicAgent::run(), NLAIAGENT::CAgentScript::runInitComponent(), NLAIAGENT::CVolatilMemmory::runMessage(), NLAIAGENT::CAgentOperation::runMethodBase(), NLAISCRIPT::CCompilateur::runMethodConstraint(), NLAILOGIC::CInternalGoal::runMethodeMember(), NLAILOGIC::CGoal::runMethodeMember(), NLAILOGIC::CFact::runMethodeMember(), NLAIAGENT::IObjectIA::runMethodeMember(), NLAISCRIPT::CLdbStackMemberiOpCode::runOpCode(), NLAISCRIPT::CCallStackMethodi::runOpCode(), NLAISCRIPT::CLibHeapMemberMethod::runOpCode(), NLAISCRIPT::CAffOpCode::runOpCode(), NLAISCRIPT::CJFalseOpCode::runOpCode(), NLAISCRIPT::CAffOpCodeDebug::runOpCode(), NLAISCRIPT::CDiffOpCode::runOpCode(), NLAISCRIPT::CInfEqOpCode::runOpCode(), NLAISCRIPT::CSupEqOpCode::runOpCode(), NLAISCRIPT::CEqOpCode::runOpCode(), NLAISCRIPT::CInfOpCode::runOpCode(), NLAISCRIPT::CSupOpCode::runOpCode(), NLAISCRIPT::CMulOpCode::runOpCode(), NLAISCRIPT::CDivOpCode::runOpCode(), NLAISCRIPT::CSubOpCode::runOpCode(), NLAISCRIPT::CAddOpCode::runOpCode(), NLAISCRIPT::CNegOpCode::runOpCode(), NLAIAGENT::CAgentScript::runTellParentNotify(), NLAISCRIPT::CCompilateur::runTypeConstraint(), NLAIAGENT::CHashTimerManager::sendMessage(), NLAIAGENT::CVolatilMemmory::sendMessage(), NLAIAGENT::CLocalMailBox::sendMessage(), NLAIAGENT::IListManager::sendMessage(), NLAIAGENT::CAgentTimerHandle::sendMessage(), NLAIAGENT::CAgentScript::sendMessage(), NLAIAGENT::CAgentScript::sendMethod(), NLAISCRIPT::COperandSimple::serial(), NLAISCRIPT::CObjectUnknown::setBaseType(), NLAISCRIPT::CCompilateur::setChaineVar(), NLAISCRIPT::CClassInterpretFactory::setClass(), NLAIC::CSelfClassFactory::setClass(), NLAISCRIPT::IClassInterpret::setClassName(), NLAISCRIPT::CObjectUnknown::setClassType(), NLAIAGENT::IMessageBase::setContinuation(), NLAILOGIC::IBaseOperator::setGoal(), NLAISCRIPT::COperatorClass::setGoal(), NLAISCRIPT::CCompilateur::setImediateVar(), NLAISCRIPT::CCompilateur::setImediateVarNill(), NLAISCRIPT::CParam::setInfo(), NLAISCRIPT::CAgentClass::setInheritanceName(), NLAISCRIPT::CCompilateur::setListVar(), NLAIAGENT::IMessageBase::setMessageGroup(), NLAISCRIPT::CCompilateur::setMethodVar(), NLAILOGIC::IBaseVar::setName(), NLAIAGENT::CAgentOperation::setName(), NLAISCRIPT::CMethodeName::setName(), NLAIAGENT::IRefrence::setNumRef(), NLAISCRIPT::CConstraintFindRun::setOpCode(), NLAISCRIPT::CConstraintMethode::setOpCode(), NLAISCRIPT::CCompilateur::setPerformative(), NLAILOGIC::CInternalGoal::setProperty(), NLAIAGENT::IMessageBase::setReceiver(), NLAIAGENT::IMessageBase::setSender(), setSize(), NLAISCRIPT::CCompilateur::setStackVar(), NLAIAGENT::CMessageScript::setStaticMember(), NLAIAGENT::CAgentScript::setStaticMember(), NLAISCRIPT::IClassInterpret::setType(), NLAISCRIPT::CFunctionTag::setTypeObject(), NLAISCRIPT::CMethodeName::setTypeOfMethode(), NLAILOGIC::CVar::setValue(), NLAIAGENT::CAgentOperation::setValue(), NLAIAGENT::IAgentInput::setValue(), unify(), NLAISCRIPT::COperatorClass::unifyBackward(), NLAILOGIC::CFirstOrderOperator::unifyBackward(), NLAISCRIPT::COperatorClass::unifyForward(), NLAILOGIC::CFirstOrderOperator::unifyForward(), NLAILOGIC::CRule::unifyLiaisonBack(), NLAISCRIPT::CAddParamNameDebug::~CAddParamNameDebug(), NLAISCRIPT::CAgentClass::~CAgentClass(), NLAIAGENT::CAgentOperation::~CAgentOperation(), NLAIAGENT::CAgentScript::~CAgentScript(), NLAIAGENT::CAgentTimerHandle::~CAgentTimerHandle(), NLAIAGENT::CAgentWatchTimer::~CAgentWatchTimer(), NLAISCRIPT::CClassInterpretFactory::~CClassInterpretFactory(), NLAISCRIPT::CCodeBrancheRunDebug::~CCodeBrancheRunDebug(), NLAISCRIPT::CCompilateur::~CCompilateur(), NLAIAGENT::CComponentHandle::~CComponentHandle(), NLAISCRIPT::CConstraintChkMethodeType::~CConstraintChkMethodeType(), NLAISCRIPT::CConstraintMethode::~CConstraintMethode(), NLAISCRIPT::CConstraintStackComp::~CConstraintStackComp(), NLAILOGIC::CFact::~CFact(), NLAISCRIPT::CFindRunMsg::~CFindRunMsg(), NLAILOGIC::CFirstOrderAssert::~CFirstOrderAssert(), NLAISCRIPT::CFunctionTag::~CFunctionTag(), NLAIC::CIdentType::~CIdentType(), NLAIAGENT::CIdMethod::~CIdMethod(), NLAILOGIC::CInternalGoal::~CInternalGoal(), NLAIAGENT::CKeyObject::~CKeyObject(), NLAISCRIPT::CLdbNewOpCode::~CLdbNewOpCode(), NLAISCRIPT::CLdbOpCode::~CLdbOpCode(), NLAISCRIPT::CLibCallInheritedMethod::~CLibCallInheritedMethod(), NLAISCRIPT::CLibCallMethod::~CLibCallMethod(), NLAISCRIPT::CLibCallMethodi::~CLibCallMethodi(), NLAIAGENT::CLocalMailBox::~CLocalMailBox(), NLAIAGENT::CMainAgentScript::~CMainAgentScript(), NLAISCRIPT::CLibTest::CMethodCall::~CMethodCall(), NLAIAGENT::CAgentScript::CMethodCall::~CMethodCall(), NLAISCRIPT::CMethodeName::~CMethodeName(), NLAISCRIPT::CAgentClass::CMethodType::~CMethodType(), NLAISCRIPT::CObjectUnknown::~CObjectUnknown(), NLAISCRIPT::COperandSimple::~COperandSimple(), NLAISCRIPT::COperandUnknown::~COperandUnknown(), NLAISCRIPT::COperationType::~COperationType(), NLAISCRIPT::COperationTypeGD::~COperationTypeGD(), NLAISCRIPT::COperatorClass::~COperatorClass(), NLAIAGENT::CPairType::~CPairType(), NLAIC::CSelfClassFactory::~CSelfClassFactory(), NLAIAGENT::CStringType::~CStringType(), ~CValueSet(), NLAILOGIC::CVar::~CVar(), NLAIAGENT::CVolatilMemmory::~CVolatilMemmory(), NLAIAGENT::IAgentInput::~IAgentInput(), NLAILOGIC::IBaseAssert::~IBaseAssert(), NLAILOGIC::IBaseOperator::~IBaseOperator(), NLAILOGIC::IBaseVar::~IBaseVar(), NLAIAGENT::IBasicAgent::~IBasicAgent(), NLAISCRIPT::IBlock::~IBlock(), NLAISCRIPT::IClassInterpret::~IClassInterpret(), NLAILOGIC::IGoal::~IGoal(), NLAIAGENT::IListBasicManager::~IListBasicManager(), NLAIAGENT::IMessageBase::~IMessageBase(), NLAIAGENT::IRefrence::~IRefrence(), and NLAICHARACTER::IZone::~IZone().

00087                 {
00088                         if(decRef() == 0) 
00089                                         delete this;
00090                 }

const IObjectIA::CProcessResult & NLAILOGIC::CValueSet::run  )  [virtual]
 

Some where Run method define the process of the agen.

Implements NLAIAGENT::IObjectIA.

Definition at line 527 of file valueset.cpp.

00528         {
00529                 return IObjectIA::ProcessRun;
00530         }

IObjectIA::CProcessResult NLAIAGENT::IObjectIA::runMethodeMember sint32  index,
IObjectIA
[virtual, inherited]
 

The methode runMethodeMember(sint32 index,IObjectIA *param) allow us to run a own member method.

index: is the method id return by the isMember(const IVarName *,const IVarName *,const IObjectIA &) const method. param: is the parametre for the method.

Reimplemented in NLAIAGENT::CActor, NLAIAGENT::IBasicAgent, NLAIAGENT::IVector, NLAIAGENT::CLocalAgentMail, NLAIAGENT::INombre< tNombre >, NLAIAGENT::CPairType, NLAIAGENT::IBaseGroupType, NLAIAGENT::CVectorGroupType, NLAIAGENT::CProxyAgentMail, NLAIAGENT::CAgentScript, NLAIAGENT::CLibTimerManager, NLAIAGENT::CAgentWatchTimer, NLAIAGENT::CAgentTimerHandle, NLAILOGIC::CGoalStack, NLAIAGENT::IListBasicManager, NLAIAGENT::CMessageScript, NLAIAGENT::IMessageBase, NLAIAGENT::CSuccessMsg, NLAIAGENT::CFailureMsg, NLAIAGENT::CFactMsg, NLAIAGENT::CGetValueMsg, NLAIAGENT::CGoalMsg, NLAIAGENT::CCancelGoalMsg, NLAIAGENT::CSetValueMsg, NLAIFUZZY::IFuzzySet, NLAIFUZZY::CFuzzyVar, NLAILOGIC::CFact, NLAILOGIC::CGoal, NLAILOGIC::CInternalGoal, NLAILOGIC::CGoalStack, NLAILOGIC::IBaseVar, NLAISCRIPT::CCallPrint, NLAISCRIPT::CLibTest, NLAIAGENT::INombre< double >, NLAIAGENT::INombre< uint16 >, NLAIAGENT::INombre< float >, NLAIAGENT::INombre< sint8 >, NLAIAGENT::INombre< uint64 >, NLAIAGENT::INombre< sint16 >, NLAIAGENT::INombre< uint8 >, NLAIAGENT::INombre< uint32 >, and NLAIAGENT::INombre< sint32 >.

Definition at line 266 of file baseai.cpp.

References NLAIAGENT::IDigital< sint32 >::getNumber(), NLAIAGENT::IObjectIA::getStaticMember(), NLAIAGENT::CStringType::getStr(), param, NLAIAGENT::IListBasicManager::pop(), r, NLAIC::IPointerGestion::release(), NLAIAGENT::IObjectIA::run(), NLAIAGENT::IObjectIA::sendMessage(), NLAIAGENT::IMessageBase::setPerformatif(), NLAIAGENT::IMessageBase::setReceiver(), sint, and sint32.

00267         {
00268                 
00269                 switch(id)
00270                 {
00271                 case 0:
00272                         {
00273                                 IMessageBase *msg;
00274 
00275                                 IPerformative *p;
00276                                 msg = (IMessageBase *)((IBaseGroupType *)a)->pop();
00277                                 //this->incRef();
00278                                 msg->setReceiver(this);
00279                                 p = (IPerformative *)((IBaseGroupType *)a)->pop();
00280                                 msg->setPerformatif((IMessageBase::TPerformatif)(sint)p->getNumber());
00281                                 p->release();
00282                                 if(((IBaseGroupType *)a)->size())
00283                                 {                                       
00284                                         CStringType *name = (CStringType *)((IBaseGroupType *)a)->pop();
00285                                         IObjectIA::CProcessResult r = sendMessage(name->getStr(),msg);
00286                                         name->release();
00287                                         return r;
00288                                         
00289                                 }                               
00290                                 return sendMessage(msg);
00291                         }                       
00292                         break;
00293                 case 1:                 
00294                         break;
00295                 case 2:
00296                         return run();
00297                         break;
00298 
00299                 case 3:
00300                         {
00301                                 CProcessResult r;
00302                                 NLAIAGENT::IBaseGroupType *param = (NLAIAGENT::IBaseGroupType *)a;
00303                                 r.Result =      (IObjectIA *)getStaticMember((sint)((NLAIAGENT::INombreDefine *)param->get())->getNumber());
00304                                 r.Result->incRef();
00305                                 return r;
00306                         }
00307                 }
00308                 return CProcessResult();
00309         }

IObjectIA::CProcessResult NLAIAGENT::IObjectIA::runMethodeMember sint32  ,
sint32  ,
IObjectIA
[virtual, inherited]
 

The methode runMethodeMember(sint32 heritance, sint32 index, IObjectIA *param) allow us to run a member method.

heritance: is the id returned by the methodisClassInheritedFrom(const IVarName &). index: is the method id return by the isMember(const IVarName *,const IVarName *,const IObjectIA &) const method. param: is the parametre for the method.

Reimplemented in NLAIAGENT::IBasicAgent, NLAIAGENT::IVector, NLAIAGENT::CLocalAgentMail, NLAIAGENT::INombre< tNombre >, NLAIAGENT::CPairType, NLAIAGENT::IBaseGroupType, NLAIAGENT::CVectorGroupType, NLAIAGENT::CProxyAgentMail, NLAIAGENT::CAgentScript, NLAIAGENT::CAgentTimerHandle, NLAILOGIC::CGoalStack, NLAIAGENT::IListBasicManager, NLAIAGENT::CMessageScript, NLAIAGENT::IMessageBase, NLAIAGENT::CSuccessMsg, NLAIAGENT::CFailureMsg, NLAIAGENT::CFactMsg, NLAIAGENT::CGetValueMsg, NLAIAGENT::CGoalMsg, NLAIAGENT::CCancelGoalMsg, NLAIAGENT::CSetValueMsg, NLAIFUZZY::CFuzzyVar, NLAILOGIC::CFact, NLAILOGIC::CGoal, NLAILOGIC::CInternalGoal, NLAILOGIC::CGoalStack, NLAISCRIPT::CCallPrint, NLAISCRIPT::CLibTest, NLAIAGENT::INombre< double >, NLAIAGENT::INombre< uint16 >, NLAIAGENT::INombre< float >, NLAIAGENT::INombre< sint8 >, NLAIAGENT::INombre< uint64 >, NLAIAGENT::INombre< sint16 >, NLAIAGENT::INombre< uint8 >, NLAIAGENT::INombre< uint32 >, and NLAIAGENT::INombre< sint32 >.

Definition at line 257 of file baseai.cpp.

References sint32.

Referenced by NLAISCRIPT::CLibHeapMemberMethod::runOpCode(), NLAISCRIPT::CLibStackNewMemberMethod::runOpCode(), NLAISCRIPT::CLibStackMemberMethod::runOpCode(), NLAISCRIPT::CLibCallMethodi::runOpCode(), NLAISCRIPT::CLibCallInheritedMethod::runOpCode(), NLAISCRIPT::CLibCallMethod::runOpCode(), and NLAISCRIPT::CLibMemberMethodi::runOpCode().

00258         {
00259                 /*char text[2048*8];
00260                 sprintf(text,"method  runMethodeMember(sint32 h, sint32 id,const IObjectIA &) not implemented for the '%s' interface",(const char *)getType());
00261                 throw NLAIE::CExceptionNotImplemented(text);
00262                 return CProcessResult();*/
00263                 return IObjectIA::runMethodeMember(id,a);
00264         }

const IObjectIA::CProcessResult & NLAIAGENT::IObjectIA::runStep  )  [virtual, inherited]
 

Some where Run method define the process of the agen.

Reimplemented in NLAIAGENT::IAgent, and NLAIAGENT::CAgentScript.

Definition at line 163 of file baseai.cpp.

References NLAIC::IBasicType::getType(), and NLAIC::stringGetBuild().

Referenced by NLAIAGENT::IAgent::runChildrenStepByStep().

00164         {
00165                 std::string text;
00166                 text = NLAIC::stringGetBuild("const CProcessResult &IObjectIA::runStep() note implementaited for the '%s' interface",(const char *)getType());
00167                 throw NLAIE::CExceptionNotImplemented(text.c_str());
00168                 return IObjectIA::ProcessNotComplit;
00169         }

void NLAILOGIC::CValueSet::save NLMISC::IStream os  )  [virtual]
 

Save the class in a stream.

Implements NLAIC::IBasicInterface.

Definition at line 369 of file valueset.cpp.

References NLMISC::IStream::serial(), sint32, and size.

00370         {
00371                 sint32 nb_Values = (sint32) _NbValues;
00372                 os.serial( nb_Values );
00373                 std::list<IObjectIA *> values;
00374                 std::vector<sint32> pos;
00375 
00376                 for ( sint32 i = 0; i < _NbValues; i++ )
00377                 {
00378                         if ( _Values[i] )
00379                         {
00380                                 values.push_back( _Values[i] );
00381                                 pos.push_back( i );
00382                         }
00383                 }
00384                 sint32 size = (sint32) values.size();
00385                 os.serial( size );
00386 
00387                 std::list<IObjectIA *>::iterator it_val = values.begin();
00388                 std::vector<sint32>::iterator it_pos = pos.begin();
00389 
00390                 while ( it_val != values.end() )
00391                 {
00392                         os.serial( (NLAIC::CIdentType &) ( *it_val )->getType() );
00393                         ( *it_val )->save( os );
00394                         sint32 ip = (sint32) *it_pos;
00395                         os.serial( ip );
00396                 }
00397         }

IObjectIA::CProcessResult NLAIAGENT::IObjectIA::sendMessage const IVarName ,
IObjectIA
[virtual, inherited]
 

This method allow to send a message to an compoment given by an string IVarName.

Reimplemented in NLAIAGENT::CProxyAgentMail, NLAIAGENT::CAgentScript, and NLAIAGENT::IMessageBase.

Definition at line 334 of file baseai.cpp.

References NLAIAGENT::IVarName::getString(), NLAIC::IBasicType::getType(), and NLAIC::stringGetBuild().

00335         {
00336                 std::string text;
00337                 text = NLAIC::stringGetBuild("method 'sendMessage(%s,const IObjectIA &)' '%s' interface",name.getString(), (const char *)getType());
00338                 throw NLAIE::CExceptionNotImplemented(text.c_str());
00339                 return CProcessResult();
00340         }

IObjectIA::CProcessResult NLAIAGENT::IObjectIA::sendMessage IObjectIA  )  [virtual, inherited]
 

The method sendMessage(const IObjectIA &msg) allow us to achive a message defined in msg.

Reimplemented in NLAIAGENT::CActorScript, NLAIAGENT::CLocalAgentMail, NLAIAGENT::CProxyAgentMail, NLAIAGENT::CAgentScript, NLAIAGENT::CAgentTimerHandle, NLAIAGENT::IConnectIA, NLAIAGENT::IListManager, NLAIAGENT::CMainAgentScript, and NLAIAGENT::IMessageBase.

Definition at line 342 of file baseai.cpp.

References NLAIC::IBasicType::getType(), and NLAIC::stringGetBuild().

Referenced by NLAIAGENT::IObjectIA::runMethodeMember(), NLAIAGENT::CAgentScript::sendBroadCast(), NLAIAGENT::IMessageBase::sendMessage(), NLAIAGENT::IListManager::sendMessage(), and NLAIAGENT::CAgentScript::sendMessage().

00343         {
00344                 std::string text;
00345                 text = NLAIC::stringGetBuild("method 'sendMessage(const IObjectIA &)' '%s' interface", (const char *)getType());
00346                 throw NLAIE::CExceptionNotImplemented(text.c_str());
00347                 return CProcessResult();
00348         }

virtual void NLAIC::IBasicInterface::serial NLMISC::IStream f  )  throw (NLMISC::EStream) [inline, virtual, inherited]
 

Reimplemented from NLAIC::IPointerGestion.

Definition at line 328 of file abstract_interface.h.

References NLAIC::IBasicInterface::load(), and NLAIC::IBasicInterface::save().

00329                 {
00330                         if ( f.isReading() )
00331                                 load( f );
00332                         else
00333                                 save( f );
00334                 }

void NLAILOGIC::CValueSet::setSize sint32   )  [virtual]
 

Definition at line 550 of file valueset.cpp.

References NLAIC::IPointerGestion::release(), sint32, and size.

00551         {
00552                 _NbValues = size;
00553                 sint32 i;
00554 
00555                 if ( _Values != NULL )
00556                 {
00557                         for ( i = 0; i < _NbValues; i++ );
00558                         _Values[i]->release();
00559                         delete _Values;
00560                 }
00561 
00562                 _Values = new IObjectIA *[ _NbValues ];
00563 
00564                 for ( i = 0; i < _NbValues; i++ )
00565                 {
00566                         _Values[ i ] = NULL;
00567                 }
00568         }

bool NLAIAGENT::IObjectIA::setStaticMember sint32  ,
IObjectIA
[virtual, inherited]
 

to cahnge a given components given by a string.

Reimplemented in NLAIAGENT::CLocalAgentMail, NLAIAGENT::CAgentScript, NLAIAGENT::CMessageScript, and NLAISCRIPT::CAgentClass.

Definition at line 198 of file baseai.cpp.

References NLAIC::IBasicType::getType(), sint32, and NLAIC::stringGetBuild().

00199         {
00200                 std::string text;
00201                 text = NLAIC::stringGetBuild("Function void IObjectIA::setStaticMember(sint32,IObjectIA *) note implementaited for the '%s' interface",(const char *)getType());
00202                 throw NLAIE::CExceptionNotImplemented(text.c_str());
00203                 return false;
00204         }

bool NLAIAGENT::IObjectIA::setStaticMember const IVarName compName,
IObjectIA change
[inline, inherited]
 

to cahnge a given components given by an index.

Definition at line 268 of file baseai.h.

References NLAIAGENT::IObjectIA::getStaticMemberIndex().

Referenced by NLAISCRIPT::CAffHeapMemberiOpCode::runOpCode(), NLAISCRIPT::CAffMemberiOpCode::runOpCode(), and NLAIAGENT::CLocalAgentMail::setStaticMember().

00269                 {
00270                         return setStaticMember(getStaticMemberIndex(compName),change);
00271                 }

void NLAILOGIC::CValueSet::setValue sint32  ,
NLAIAGENT::IObjectIA
 

Definition at line 140 of file valueset.cpp.

References NLAIC::IPointerGestion::incRef(), and sint32.

Referenced by NLAILOGIC::CFact::asValueSet(), NLAIAGENT::COperatorScript::buildFromVars(), NLAISCRIPT::COperatorClass::buildFromVars(), NLAILOGIC::CFirstOrderOperator::buildFromVars(), and NLAILOGIC::CRule::unifyBack().

00141         {
00142                 _Values[pos] = obj;
00143                 if ( obj )
00144                         obj->incRef();
00145         }

sint32 NLAILOGIC::CValueSet::size  ) 
 

Definition at line 335 of file valueset.cpp.

References sint32.

Referenced by NLAILOGIC::CFactBase::addFact(), and NLAILOGIC::CVarSet::unify().

00336         {
00337                 return _NbValues;
00338         }

sint32 NLAILOGIC::CValueSet::undefined  )  const
 

Returns the number of NULL values (considered as undefined).

Definition at line 326 of file valueset.cpp.

References sint32.

Referenced by NLAILOGIC::CFirstOrderAssert::backward(), isTrue(), NLAIAGENT::COperatorScript::propagate(), NLAILOGIC::CFirstOrderOperator::propagate(), and NLAILOGIC::CClause::propagate().

00327         {
00328                 sint32 nb_undef = _NbValues;
00329                 for ( sint32 i = 0; i < _NbValues; i++ )
00330                         if ( _Values[i] != NULL )
00331                                 nb_undef--;
00332                 return nb_undef;
00333         }

CValueSet * NLAILOGIC::CValueSet::unify CValueSet vals,
std::vector< sint32 > &  pos_vals
const
 

Definition at line 256 of file valueset.cpp.

References _Values, CValueSet(), NLAIC::IPointerGestion::incRef(), NLAIC::IPointerGestion::release(), and sint32.

00257         {
00258                 CValueSet *result = new CValueSet( _NbValues );
00259                 int i;
00260                 for ( i = 0; i < _NbValues; i++ )
00261                 {
00262                         result->_Values[i] = _Values[i];
00263                         if ( _Values[i] )
00264                                 _Values[i]->incRef();
00265 
00266                 }
00267 
00268                 for (i = 0; i < (sint32) pos_vals.size(); i++ )
00269                 {
00270                         sint32 pos = pos_vals[i];
00271                         IObjectIA *l_val = _Values[ pos ];
00272                         IObjectIA *r_val = (*vals)[i];
00273 //                      IObjectIA *test = NULL;
00274 //                      if (  !l_val || !( test = (*l_val) != ( *r_val ) )->isTrue() )
00275                         if (  !l_val || ( (*l_val) == ( *r_val ) ) )
00276                         {
00277 //                              if ( test )
00278 //                                      test->release();
00279                                 if ( !l_val )
00280                                 {
00281                                         result->_Values[ pos ] = r_val;
00282                                         if ( (*vals)[i] )
00283                                                 result->_Values[ pos ]->incRef();
00284                                 }
00285                         }
00286                         else
00287                         {
00288 //                              if ( test )
00289 //                                      test->release();
00290                                 result->release();
00291                                 return NULL;
00292                         }
00293                 }
00294                 return result;
00295         }

CValueSet * NLAILOGIC::CValueSet::unify std::list< NLAIAGENT::IObjectIA * > *  vals,
std::vector< sint32 > &  pos_vals
const
 

Tries to unify a CValueSet with a list of values and their positions.

Definition at line 202 of file valueset.cpp.

References _Values, CValueSet(), getDebugString(), NLAIC::IPointerGestion::incRef(), and sint32.

00203         {
00204                 CValueSet *result = new CValueSet( _NbValues );
00205                 for (sint32 i = 0; i < _NbValues; i++ )
00206                 {
00207                         result->_Values[i] = _Values[i];
00208                         if ( _Values[i] )
00209                                 _Values[i]->incRef();
00210 
00211                 }
00212 
00213                 std::list<IObjectIA *>::iterator it_val = vals->begin();
00214                 std::vector<sint32>::iterator it_pos = pos_vals.begin();
00215 
00216                 // -----------------
00217 
00218 #ifdef NL_DEBUG
00219                 std::string buf;
00220                 this->getDebugString(buf);
00221                 std::string buf2;
00222                 CValueSet tmp(_NbValues, vals, pos_vals);
00223                 tmp.getDebugString(buf2);
00224 #endif
00225                 //TRACE(" \nUNIFICATION:\n VS = %s\n VP = %s \n", buf, buf2);
00226                 
00227                 // -----------------
00228 
00229                 while ( it_val != vals->end()  && it_pos != pos_vals.end() )
00230                 {
00231                         sint32 pos = *it_pos;
00232                         IObjectIA *l_val = _Values[ pos ];
00233 //                      IObjectIA *test = NULL;
00234                         if (  !l_val || (  (*l_val) == ( **it_val ) ) )
00235                         {
00236 //                              if ( test )
00237 //                                      test->release();
00238                                 result->_Values[ pos ] = *it_val;
00239                                 result->_Values[ pos ]->incRef();
00240                         }
00241                         else
00242                         {
00243 //                              if ( test )
00244 //                                      test->release();
00245                                 delete result;
00246                                 return NULL;
00247                         }
00248                         it_val++;
00249                         it_pos++;
00250 
00251                 }
00252 
00253                 return result;
00254         }

CValueSet * NLAILOGIC::CValueSet::unify const CValueSet un  )  const
 

Tries tu unify two CValueSets Returns NULL if the unification fails. Returns a new unified CValueSet if it succeeds.

Definition at line 155 of file valueset.cpp.

References _Values, CValueSet(), NLAIC::IPointerGestion::incRef(), and NLAIC::IPointerGestion::release().

Referenced by NLAILOGIC::CFirstOrderAssert::backward(), NLAIAGENT::COperatorScript::unifyLiaison(), NLAISCRIPT::COperatorClass::unifyLiaison(), NLAILOGIC::CFirstOrderOperator::unifyLiaison(), and NLAILOGIC::CClause::unifyLiaison().

00156         {
00157                 CValueSet *result = new CValueSet( _NbValues );
00158                 int i;
00159                 for( i = 0; i < _NbValues; i++ )
00160                 {
00161                         result->_Values[i] = _Values[i];
00162                         if ( _Values[i] )
00163                                 _Values[i]->incRef();
00164 
00165                 }
00166                 
00167                 for (i = 0; i < _NbValues ; i++ )
00168                 {
00169                         IObjectIA *x_val = result->_Values[ i ];
00170                         IObjectIA *y_val = un->_Values[ i ];
00171         
00172 /*                      if ( !x_val && !y_val )
00173                                 result->_Values[i] = NULL ;
00174 */
00175                         if ( x_val && y_val )
00176                         {
00177 //                              IObjectIA *test;
00178                                 if ( (*x_val) == ( *y_val )  )
00179                                 {
00180                                         // Nothing to do 
00181                                 }                                               
00182                                 else
00183                                 {
00184                                         result->release();
00185                                         return NULL;
00186                                 }
00187 //                              test->release();
00188                         }
00189                         else
00190                         {
00191                                 if ( y_val )
00192                                 {
00193                                         result->_Values[i] = y_val;
00194                                         result->_Values[i]->incRef();
00195                                 }
00196                         }
00197                 }
00198                 return result;
00199         }


Field Documentation

sint32 NLAILOGIC::CValueSet::_NbValues [protected]
 

Definition at line 40 of file valueset.h.

Referenced by CValueSet(), and operator==().

NLAIAGENT::IObjectIA** NLAILOGIC::CValueSet::_Values [protected]
 

Definition at line 39 of file valueset.h.

Referenced by CValueSet(), forward(), operator==(), and unify().

const NLAIC::CIdentType CValueSet::IdValueSet [static]
 

Initial value:

 NLAIC::CIdentType( "ValueSet", NLAIC::CSelfClassFactory( CValueSet(0) ),
                NLAIC::CTypeOfObject::tLogic |
                NLAIC::CTypeOfObject::tList,
                NLAIC::CTypeOfOperator::opEq |
                NLAIC::CTypeOfOperator::opNot |
                NLAIC::CTypeOfOperator::opDiff )

Definition at line 445 of file static_def_init.cpp.

Referenced by getType().

TProcessStatement NLAIAGENT::IObjectIA::ProcessBuzzy = processBuzzy [static, inherited]
 

Define the an buzzy state for an agent all time in this state.

Definition at line 147 of file baseai.cpp.

TProcessStatement NLAIAGENT::IObjectIA::ProcessEnd = processEnd [static, inherited]
 

Define the an end state for an agent all time in this state.

Definition at line 148 of file baseai.cpp.

TProcessStatement NLAIAGENT::IObjectIA::ProcessError = processError [static, inherited]
 

Define the an error state for an agent all time in this state.

Definition at line 149 of file baseai.cpp.

TProcessStatement NLAIAGENT::IObjectIA::ProcessIdle = processIdle [static, inherited]
 

Define the an idle state for an agent all time in this state.

Definition at line 145 of file baseai.cpp.

TProcessStatement NLAIAGENT::IObjectIA::ProcessLocked = processLocked [static, inherited]
 

Define the an locked state for an agent all time in this state.

Definition at line 146 of file baseai.cpp.

IObjectIA::CProcessResult NLAIAGENT::IObjectIA::ProcessNotComplit = IObjectIA::CProcessResult(processNotComplete) [static, inherited]
 

Definition at line 144 of file baseai.cpp.

IObjectIA::CProcessResult NLAIAGENT::IObjectIA::ProcessRun = IObjectIA::CProcessResult() [static, inherited]
 

Definition at line 143 of file baseai.cpp.

const TProcessStatement NLAILOGIC::CValueSet::state = processIdle [static]
 

Definition at line 30 of file valueset.cpp.


The documentation for this class was generated from the following files:
Generated on Tue Mar 16 10:58:37 2004 for NeL by doxygen 1.3.6