13 #ifndef mitkStateMachineContainer_h
14 #define mitkStateMachineContainer_h
16 #include <itkObject.h>
18 #include <vtkXMLParser.h>
20 #include <itkObjectFactory.h>
85 void StartElement(
const char *elementName,
const char **atts)
override;
102 std::string ReadXMLStringAttribut(std::string name,
const char **atts);
111 bool ReadXMLBooleanAttribut(std::string name,
const char **atts);
116 void ConnectStates();
118 StateMachineState::Pointer m_StartState;
119 StateMachineState::Pointer m_CurrState;
120 StateMachineTransition::Pointer m_CurrTransition;
123 bool m_StartStateFound;
127 std::string m_Filename;
Parses XML state machine descriptions and builds the state machine structure.
void StartElement(const char *elementName, const char **atts) override
Handle the start of an XML element during parsing.
std::vector< StateMachineState::Pointer > StateMachineCollectionType
Type that holds all states of one state machine.
void EndElement(const char *elementName) override
Handle the end of an XML element during parsing.
bool LoadBehavior(const std::string &fileName, const us::Module *module)
Load a state machine pattern from an XML resource file.
vtkTypeMacro(StateMachineContainer, vtkXMLParser)
friend class InteractionStateMachine
To enable InteractionStateMachine to access states.
static StateMachineContainer * New()
StateMachineState::Pointer GetStartState() const
Return the start state of the state machine.
~StateMachineContainer() override
Represents a CppMicroServices module.
Find image slices visible on a given plane.