FSMSADF::FSM Class Reference
#include <fsm.h>
Public Member Functions | |
FSM (GraphComponent c) | |
~FSM () | |
FSM * | create (GraphComponent c) const |
FSM * | createCopy (GraphComponent c) const |
FSM * | clone (GraphComponent c) const |
void | constructFromXML (const CNodePtr fsmNode) |
void | convertToXML (const CNodePtr fsmNode) |
FSMstate * | getState (const CString &name) const |
FSMstates & | getStates () |
FSMstate * | getInitialState () const |
void | setInitialState (FSMstate *s) |
void | addState (FSMstate *s) |
Graph * | getGraph () const |
ostream & | print (ostream &out) |
Private Attributes | |
FSMstate * | initialState |
FSMstates | states |
Friends | |
ostream & | operator<< (ostream &out, FSM &f) |
Detailed Description
FSM FSM in FSM-based SADF graph
Constructor & Destructor Documentation
FSMSADF::FSM::FSM | ( | GraphComponent | c | ) |
FSMSADF::FSM::~FSM | ( | ) |
~FSM () Destrcutor.
References states.
Member Function Documentation
void FSMSADF::FSM::addState | ( | FSMstate * | s | ) | [inline] |
References states.
Referenced by FSMSADF::FSMstate::clone(), constructFromXML(), and FSMSADF::RandomGraph::createFSM().
FSM * FSMSADF::FSM::clone | ( | GraphComponent | c | ) | const |
clone () Create a cloned copy of this object.
References createCopy(), FSMSADF::GraphComponent::getId(), getInitialState(), FSMSADF::GraphComponent::GraphComponent(), and setInitialState().
void FSMSADF::FSM::constructFromXML | ( | const CNodePtr | fsmNode | ) |
constructFromXML () Construct the FSM from the XML node.
References addState(), CGetAttribute(), CGetChildNode(), CHasAttribute(), CNextNode(), FSMSADF::FSMtransition::connect(), getGraph(), FSMSADF::Graph::getScenario(), getState(), getStates(), FSMSADF::GraphComponent::GraphComponent(), FSMSADF::GraphComponent::name, setInitialState(), and FSMSADF::FSMstate::setScenario().
Referenced by FSMSADF::Graph::constructFromXML().
void FSMSADF::FSM::convertToXML | ( | const CNodePtr | fsmNode | ) |
convertToXML () Convert the FSM to an XML node.
References CAddAttribute(), CAddNode(), FSMSADF::FSMtransition::getDstState(), getInitialState(), FSMSADF::GraphComponent::getName(), FSMSADF::FSMstate::getScenario(), FSMSADF::FSMstate::getTransitions(), and states.
Referenced by FSMSADF::Graph::convertToXML().
FSM * FSMSADF::FSM::create | ( | GraphComponent | c | ) | const |
create () Create a new FSM object.
References FSM().
Referenced by createCopy().
FSM * FSMSADF::FSM::createCopy | ( | GraphComponent | c | ) | const |
createCopy () Create a copy of this FSM component.
References create(), FSMSADF::GraphComponent::getName(), and FSMSADF::GraphComponent::setName().
Referenced by clone().
Graph* FSMSADF::FSM::getGraph | ( | ) | const [inline] |
References FSMSADF::GraphComponent::getParent().
Referenced by FSMSADF::FSMstate::clone(), and constructFromXML().
FSMstate* FSMSADF::FSM::getInitialState | ( | ) | const [inline] |
References initialState.
Referenced by clone(), FSMSADF::FSMConverter::convertFSMToEdgeLabeled(), FSMSADF::OutputHTML::convertFSMToPNG(), and convertToXML().
getState() The function returns a pointer to the statewith the supplied name.
References states.
Referenced by constructFromXML().
FSMstates& FSMSADF::FSM::getStates | ( | void | ) | [inline] |
ostream & FSMSADF::FSM::print | ( | ostream & | out | ) |
print () Print the FSM to the supplied output stream.
References FSMSADF::GraphComponent::getName(), FSMSADF::FSMstate::getScenario(), initialState, and states.
Referenced by FSMSADF::Graph::print().
void FSMSADF::FSM::setInitialState | ( | FSMstate * | s | ) | [inline] |
References initialState.
Referenced by clone(), constructFromXML(), and FSMSADF::RandomGraph::createFSM().
Friends And Related Function Documentation
ostream& operator<< | ( | ostream & | out, | |
FSM & | f | |||
) | [friend] |
Member Data Documentation
FSMstate* FSMSADF::FSM::initialState [private] |
Referenced by getInitialState(), print(), and setInitialState().
FSMstates FSMSADF::FSM::states [private] |
Referenced by addState(), convertToXML(), getState(), getStates(), print(), and ~FSM().
The documentation for this class was generated from the following files: