27#ifndef ACTIONSTATEMACHINE_H
28#define ACTIONSTATEMACHINE_H
33#include <QStateMachine>
39#include <QtXml/QDomDocument>
40#include <QtXml/QDomNodeList>
146 QVector<camitk::Action::ApplyStatus>
stringToStatus(QString listOfStatus);
This Class describes ActionStateMachine MainWindow extension.
Definition: ActionStateMachine.h:58
virtual ~ActionStateMachine()=default
destructor
void createAllActionStates(QDomNodeList nodeList)
This method may throw an AbortException if a problem occurs.
Definition: ActionStateMachine.cpp:678
QString parseSCXMLTree()
parse the XML file (using Qt DOM API) This method may throw an AbortException if a problem occurs.
Definition: ActionStateMachine.cpp:627
QVector< camitk::Action::ApplyStatus > stringToStatus(QString listOfStatus)
Definition: ActionStateMachine.cpp:837
QDir saveDirectory
Where to save all files.
Definition: ActionStateMachine.h:117
void finished()
finish everything properly when the state machine entered the final state and quit
Definition: ActionStateMachine.cpp:662
QMap< QString, ActionState * > statesMap
Map of action state to build transitions.
Definition: ActionStateMachine.h:111
QStateMachine machine
Actual state machine.
Definition: ActionStateMachine.h:102
QTextStream * logStream
Log stream to write report on logFile.
Definition: ActionStateMachine.h:123
ActionStateMachine(int &argc, char **argv, QString inputFileName="", QString outputDirectory="")
construtor.
Definition: ActionStateMachine.cpp:52
void setCamiTKSaveAction(SaveActionState *actionState, QDomElement actionElement)
This method may throw an AbortException if a problem occurs.
Definition: ActionStateMachine.cpp:951
void checkSCXMLFile(QString filename)
check that the file is a SCXML file (simple checking, no XML Schema validation yet) This method may t...
Definition: ActionStateMachine.cpp:593
void autoNext()
Automatically loop to apply to next state for all states.
Definition: ActionStateMachine.cpp:506
QTime * startTime
To get track of the Action State Machine the duration.
Definition: ActionStateMachine.h:120
void createTransitions(QDomNodeList nodeList)
This method may throw an AbortException if a problem occurs.
Definition: ActionStateMachine.cpp:768
QFile * logFile
Log file.
Definition: ActionStateMachine.h:126
QString getDomNodeLocation(QDomNode)
build a specific error message containing the line and column if available
Definition: ActionStateMachine.cpp:987
QFinalState * finalState
Final State.
Definition: ActionStateMachine.h:114
QDomDocument scxmlDoc
XML tree containing infos.
Definition: ActionStateMachine.h:108
void initMainWindow()
initialized main window
Definition: ActionStateMachine.cpp:558
void setCamiTKAction(ActionState *actionState, QDomElement actionElement)
This method may throw an AbortException if a problem occurs.
Definition: ActionStateMachine.cpp:864
camitk::MainWindow * mainWindow
main window
Definition: ActionStateMachine.h:105
QString name
Application's name.
Definition: ActionStateMachine.h:99
QString getSaveDirectory()
where to save the files
Definition: ActionStateMachine.cpp:982
The state (in a state machine point of view) corresponding to the current processed action.
Definition: ActionState.h:48
The asm application uses a state machine.
Definition: SaveActionState.h:37
The generic/default application.
Definition: Application.h:82
static char ** argv
argv given from command line
Definition: Application.h:433
static int argc
argc given from command line
Definition: Application.h:430
This class is the base class for your application.
Definition: MainWindow.h:66