20 #ifndef FSMTOCPP_H_201672B0
21 #define FSMTOCPP_H_201672B0
27 #include <xercesc/dom/DOM.hpp>
39 void writeTo(std::ostream& stream);
44 void writeIncludes(std::ostream& stream);
45 void writeMacros(std::ostream& stream);
46 void writeTypes(std::ostream& stream);
47 void writeHelpers(std::ostream& stream);
48 void writeExecContent(std::ostream& stream);
49 void writeExecContentFinalize(std::ostream& stream);
50 void writeElementInfoInvocation(std::ostream& stream);
51 void writeForwardDeclarations(std::ostream& stream);
53 void writeElementInfo(std::ostream& stream);
55 void writeMachineInfo(std::ostream& stream);
56 void writeStates(std::ostream& stream);
57 void writeTransitions(std::ostream& stream);
58 void writeFSM(std::ostream& stream);
59 void writeCharArrayInitList(std::ostream& stream,
const std::string& boolString);
61 void writeExecContent(std::ostream& stream,
const XERCESC_NS::DOMNode* node,
size_t indent = 0);
63 void resortStates(XERCESC_NS::DOMNode* node);
64 void setHistoryCompletion();
65 void setStateCompletion();
68 void findNestedMachines();
72 std::vector<XERCESC_NS::DOMElement*> _states;
73 std::vector<XERCESC_NS::DOMElement*> _transitions;
77 std::set<std::string> _hasElement;
79 size_t _transCharArraySize;
80 std::string _transCharArrayInit;
81 std::string _transDataType;
83 size_t _stateCharArraySize;
84 std::string _stateCharArrayInit;
85 std::string _stateDataType;
89 std::list<ChartToC*> _nestedMachines;
90 std::list<ChartToC*> _allMachines;
92 std::list<std::string>* _prefixes;
93 bool _hasNativeDataModel;
Definition: Breakpoint.cpp:26
Central class to interpret and process SCXML documents.
Definition: Interpreter.h:79
Definition: ChartToC.h:33