Data Structures | |
class | CLogicComparisonBlock |
class | CLogicCondition |
class | CLogicConditionLogicBlock |
class | CLogicConditionNode |
class | CLogicCounter |
class | CLogicEvent |
class | CLogicEventAction |
class | CLogicEventMessage |
class | CLogicState |
class | CLogicStateMachine |
class | CLogicVariable |
Typedefs | |
typedef std::map< std::string, NLMISC::CEntityId > | TSIdMap |
map destination names to destination sid | |
Functions | |
std::string | getXMLProp (xmlNodePtr node, const char *propName) |
bool | testNameWithFilter (sint8 filter, string motif, string varName) |
void | xmlCheckNodeName (xmlNodePtr &node, const char *nodeName) |
|
map destination names to destination sid
Definition at line 47 of file logic_state.h. Referenced by NLLOGIC::CLogicStateMachine::addSIdMap(), and NLLOGIC::CLogicState::addSIdMap(). |
|
Definition at line 72 of file logic_state_machine.cpp. References nlinfo, and NLMISC::smprintf(). Referenced by NLLOGIC::CLogicCounter::read(), NLLOGIC::CLogicVariable::read(), NLLOGIC::CLogicStateMachine::read(), NLLOGIC::CLogicState::read(), NLLOGIC::CLogicEvent::read(), NLLOGIC::CLogicEventAction::read(), NLLOGIC::CLogicEventMessage::read(), NLLOGIC::CLogicCondition::read(), NLLOGIC::CLogicConditionNode::read(), NLLOGIC::CLogicConditionLogicBlock::read(), and NLLOGIC::CLogicComparisonBlock::read().
00073 { 00074 const char *name = (const char*)xmlGetProp (node, (xmlChar*)propName); 00075 if (name) 00076 { 00077 nlinfo ("get prop %s = %s", propName, name); 00078 string n = name; 00079 xmlFree ((void*)name); 00080 return n; 00081 } 00082 else 00083 { 00084 // Make an error message 00085 char tmp[512]; 00086 smprintf (tmp, 512, "LogicStateMachine XML Syntax error in block %s line %d, aguments Name not found", 00087 node->name, (int)node->content); 00088 throw EXmlParsingError (tmp); 00089 return ""; 00090 } 00091 } |
|
Definition at line 497 of file logic_state_machine.cpp. Referenced by NLLOGIC::CLogicStateMachine::setVerbose().
00498 { 00499 if( varName.size() > motif.size() ) 00500 { 00501 switch( filter ) 00502 { 00503 // *xxx* 00504 case 0 : 00505 { 00506 if(varName.find(motif) != -1) 00507 { 00508 return true; 00509 } 00510 } 00511 break; 00512 00513 // *xxx 00514 case 1 : 00515 { 00516 sint beginIndex = varName.size() - motif.size() - 1; 00517 string endOfVarName = varName.substr(beginIndex,motif.size()); 00518 if( endOfVarName == motif ) 00519 { 00520 return true; 00521 } 00522 } 00523 break; 00524 00525 // xxx* 00526 case 2 : 00527 { 00528 string beginOfVarName = varName.substr(0,motif.size()); 00529 if( beginOfVarName == motif ) 00530 { 00531 return true; 00532 } 00533 } 00534 break; 00535 } 00536 } 00537 00538 return false; 00539 00540 } // testNameWithFilter // |
|
Definition at line 42 of file logic_state_machine.cpp. References nlinfo, nlstop, and NLMISC::smprintf(). Referenced by NLLOGIC::CLogicCounter::read(), NLLOGIC::CLogicVariable::read(), NLLOGIC::CLogicStateMachine::read(), NLLOGIC::CLogicState::read(), NLLOGIC::CLogicEvent::read(), NLLOGIC::CLogicEventAction::read(), NLLOGIC::CLogicEventMessage::read(), NLLOGIC::CLogicCondition::read(), NLLOGIC::CLogicConditionNode::read(), NLLOGIC::CLogicConditionLogicBlock::read(), and NLLOGIC::CLogicComparisonBlock::read().
00043 { 00044 // Check node name 00045 if ( node == NULL || ((const char*)node->name == NULL) || (strcmp ((const char*)node->name, nodeName) != 0) ) 00046 { 00047 00048 // try to find a child 00049 if (node != NULL) 00050 { 00051 node = CIXml::getFirstChildNode (node, nodeName); 00052 if ( node != NULL && ((const char*)node->name != NULL) && (strcmp ((const char*)node->name, nodeName) == 0) ) 00053 { 00054 nlinfo ("check node %s ok in the child", nodeName); 00055 return; 00056 } 00057 } 00058 00059 // Make an error message 00060 char tmp[512]; 00061 smprintf (tmp, 512, "LogicStateMachine STATE_MACHINE XML Syntax error in block line %d, node %s should be %s", 00062 (int)node->content, node->name, nodeName); 00063 00064 nlinfo (tmp); 00065 nlstop; 00066 throw EXmlParsingError (tmp); 00067 } 00068 00069 nlinfo ("check node %s ok", nodeName); 00070 } |