20 #ifndef _NODEPARSERS_HXX_
21 #define _NODEPARSERS_HXX_
52 template <
class T=YACS::ENGINE::InlineNode*>
59 DEBTRACE(
"nodetypeParser::onStart: " << el )
60 std::string element(el);
69 DEBTRACE(
"nodetypeParser::onEnd: " << el )
70 std::string element(el);
78 for (
int i = 0; attr[
i];
i += 2)
80 if(std::string(attr[
i]) ==
"name")
name(attr[
i+1]);
81 if(std::string(attr[
i]) ==
"state")
state(attr[
i+1]);
82 if(std::string(attr[
i]) ==
"type")
type(attr[
i+1]);
119 throw YACS::Exception(
"Node must be completely defined before setting its properties");
137 _node=
n->cloneNode(_name);
143 _node=
n->cloneNode(_name);
149 if(_state ==
"disabled")_node->exDisabledState();
150 DEBTRACE(
"node_post " << _node->getName() )
Class for calculation node (script) inlined (and executed) in the schema.
Base class for all schema objects.
std::map< std::string, InlineNode * > inlineMap
std::vector< std::string > names
YACS::ENGINE::Runtime * theRuntime
YACS::ENGINE::Proc * currentProc
virtual void property(const myprop &prop)
virtual void state(const std::string &name)
virtual void name(const std::string &name)
virtual void onEnd(const char *el, parser *child)
virtual void onStart(const XML_Char *el, const XML_Char **attr)
static nodetypeParser< T > nodeParser
virtual void type(const std::string &name)
virtual void buildAttr(const XML_Char **attr)
virtual void SetUserDataAndPush(parser *pp)
virtual void required(const std::string &name, const XML_Char **attr)
virtual void buildAttr(const XML_Char **attr)
static parser main_parser