32 #ifndef SCXML4CPP_DOMSCXMLREADER_H
33 #define SCXML4CPP_DOMSCXMLREADER_H
36 #error This is a C++ include file and cannot be used from plain C
39 #ifndef SCXML4CPP_SCXMLREADER_H
43 #ifndef SCXML4CPP_REPLACE_RULES_H
52 #include <xercesc/dom/DOM.hpp>
53 #include <xercesc/dom/DOMDocument.hpp>
54 #include <xercesc/dom/DOMDocumentType.hpp>
55 #include <xercesc/dom/DOMElement.hpp>
56 #include <xercesc/dom/DOMImplementation.hpp>
57 #include <xercesc/dom/DOMImplementationLS.hpp>
58 #include <xercesc/dom/DOMNodeIterator.hpp>
59 #include <xercesc/dom/DOMNodeList.hpp>
60 #include <xercesc/dom/DOMText.hpp>
61 #include <xercesc/sax/HandlerBase.hpp>
62 #include <xercesc/parsers/XercesDOMParser.hpp>
63 #include <xercesc/util/XMLUni.hpp>
66 using namespace xercesc;
110 bool read(
const std::string& filename,
111 std::list<Action*>* actions,
112 std::list<Activity*>* activities,
126 bool read(
const std::string& input,
127 const std::string&
id,
128 std::list<Action*>* actions,
129 std::list<Activity*>* activities,
134 const std::string& srcId,
135 const std::string& dstId);
138 void clearReplaceRules();
140 const std::vector<std::string>& getWarnings()
const;
141 void resetWarnings();
146 std::vector<std::string> mWarnings;
148 std::list<DOMElement*> mStates;
149 std::list<Action*>* mActions;
150 std::list<Activity*>* mActivities;
151 std::list<Action*> mTraces;
154 XercesDOMParser* mDomParser;
155 ErrorHandler* mErrHandler;
164 XMLCh* XML_TRANSITION;
169 XMLCh* XML_ATTR_INITIAL;
170 XMLCh* XML_ATTR_NAME;
178 XMLCh* XML_ATTR_EVENT;
179 XMLCh* XML_ATTR_COND;
180 XMLCh* XML_ATTR_TARGET;
181 XMLCh* XML_ATTR_TYPE;
190 XMLCh* XML_ATTR_ACTION_NAME;
191 XMLCh* XML_ATTR_ACTION_PARAM;
194 XMLCh* SCXML_HISTORY_DEEP;
195 XMLCh* SCXML_HISTORY_SHALLOW;
196 XMLCh* USER_DATA_KEY_STATE;
197 XMLCh* DEFAULT_SCXML_NAME;
199 std::string buildWarningMsg(
const std::string& str,
const XMLCh*
id);
200 void addWarning(
const std::string& msg);
202 void addTraces(
State* s);
205 void parseActivities();
206 void parseActions(
const XMLCh*);
208 Action* findAction(
const XMLCh*);
209 Action* findGuard(
const XMLCh*);
210 DOMNodeList* findCustomActionXMLElement(DOMElement* elementList);
211 Activity* findActivity(
const XMLCh*);
212 State* findTargetState(
const XMLCh*);
215 void resolveHistory();
216 bool isStateCompound(DOMElement*);
Definition: Activity.h:52
Definition: DOMSCXMLReader.h:80
Definition: ReplaceRules.h:53
ElementType
Definition: ReplaceRules.h:55
Definition: SCXMLReader.h:50
Definition: StateMachine.h:64