Homepage | Demos | Overview | Downloads | Tutorials | Reference | Credits |
#include <StateNode.h>
Inheritance diagram for StateNode:
Override setup() to setup your own Transition and StateNode network.
Definition at line 12 of file StateNode.h.
Public Member Functions | |
StateNode () | |
constructor | |
StateNode (const std::string &n, StateNode *p=NULL) | |
constructor, pass a name to use, calls setName(n) | |
virtual | ~StateNode () |
destructor, removes references to its outgoing transitions (be careful of incoming ones - they're still around!), and calls RemoveReference() on subnodes | |
virtual void | addTransition (Transition *trans) |
Adds the specified StateTransition to the transition table. | |
std::vector< Transition * > & | getTransitions () |
Returns the std::vector of transitions so you can modify them yourself if need be. | |
virtual StateNode * | addNode (StateNode *node) |
Adds a StateNode to nodes so it can be automatically dereferenced later, returns what it's passed (for convenience), calls AddReference() on node. | |
std::vector< StateNode * > & | getNodes () |
Returns the std::vector of nodes so you can modify them yourself if need be. | |
void | setRetain (bool f) |
Sets the retain flag - if not retained, will RemoveReference() subnodes upon DoStop() and recreate them on DoStart (by calling setup()) - may be too expensive to be worth saving memory... | |
virtual void | DoStart () |
Transitions should call this when you are entering the state, so it can enable its transitions. | |
virtual void | setup () |
This is called by DoStart() when you should setup the network of subnodes. | |
virtual void | DoStop () |
Transitions should call this when you are leaving the state, so it can disable its transitions. | |
virtual void | teardown () |
This is called by DoStop() when you should destruct subnodes. | |
void | setName (const std::string &n) |
set name to n. Makes a copy of n, so you can throw it away later. | |
virtual std::string | getName () const |
returns name of StateNode | |
virtual std::string | getDescription () const |
returns name again (you should override this for top-level nodes to give users better descriptions) | |
Protected Member Functions | |
virtual void | transitionTo (StateNode *n) |
called by a subnode when it is being DoStart()'ed | |
virtual void | transitionFrom (StateNode *n) |
called by a subnode when it is being DoStop()'ed | |
Protected Attributes | |
StateNode * | parent |
pointer to the machine that contains this node | |
std::vector< Transition * > | transitions |
a vector of outgoing transitions | |
bool | issetup |
this is set to true if the network has been setup but not destroyed (i.e. don't need to call setupSubNodes again) | |
bool | retain |
this is set to true if the network should be retained between activations. Otherwise it's dereferenced upon DoStop(). (or at least RemoveReference() is called on subnodes) | |
std::vector< StateNode * > | nodes |
vector of StateNodes, just so they can be dereferenced again on DoStop() (unless retained) or ~StateNode() | |
std::string | name |
holds the name of the Node/Machine | |
Private Member Functions | |
StateNode (const StateNode &node) | |
don't call this | |
StateNode | operator= (const StateNode &node) |
don't call this |
|
constructor
Definition at line 15 of file StateNode.h. |
|
constructor, pass a name to use, calls setName(n)
Definition at line 18 of file StateNode.h. |
|
destructor, removes references to its outgoing transitions (be careful of incoming ones - they're still around!), and calls RemoveReference() on subnodes
Definition at line 5 of file StateNode.cc. |
|
don't call this
|
|
Adds a StateNode to nodes so it can be automatically dereferenced later, returns what it's passed (for convenience), calls AddReference() on node.
Definition at line 32 of file StateNode.h. Referenced by PaceTargetsMachine::setup(), ExploreMachine::setup(), and BanditMachine::setup(). |
|
Adds the specified StateTransition to the transition table.
Definition at line 15 of file StateNode.cc. Referenced by WalkToTargetMachine::setup(), PaceTargetsMachine::setup(), ExploreMachine::setup(), and BanditMachine::setup(). |
|
Transitions should call this when you are entering the state, so it can enable its transitions.
Reimplemented from BehaviorBase. Reimplemented in BanditMachine, BanditMachine::PressNode, BanditMachine::DecideNode, BanditMachine::WaitNode, ExploreMachine, PaceTargetsMachine, WalkToTargetMachine, GroupNode, OutputNode, PlayMotionSequenceNode< SIZE >, and WalkNode. Definition at line 21 of file StateNode.cc. Referenced by WalkToTargetMachine::DoStart(), WalkNode::DoStart(), PlayMotionSequenceNode< SIZE >::DoStart(), PaceTargetsMachine::DoStart(), OutputNode::DoStart(), GroupNode::DoStart(), ExploreMachine::DoStart(), BanditMachine::WaitNode::DoStart(), BanditMachine::DecideNode::DoStart(), BanditMachine::PressNode::DoStart(), and BanditMachine::DoStart(). |
|
Transitions should call this when you are leaving the state, so it can disable its transitions.
Reimplemented from BehaviorBase. Reimplemented in BanditMachine, BanditMachine::PressNode, BanditMachine::WaitNode, ExploreMachine, WalkToTargetMachine, PlayMotionSequenceNode< SIZE >, and WalkNode. Definition at line 34 of file StateNode.cc. Referenced by OutputNode::DoStart(), BanditMachine::DecideNode::DoStart(), WalkToTargetMachine::DoStop(), WalkNode::DoStop(), PlayMotionSequenceNode< SIZE >::DoStop(), ExploreMachine::DoStop(), BanditMachine::WaitNode::DoStop(), BanditMachine::PressNode::DoStop(), and BanditMachine::DoStop(). |
|
returns name again (you should override this for top-level nodes to give users better descriptions)
Reimplemented from BehaviorBase. Definition at line 59 of file StateNode.h. |
|
returns name of StateNode
Implements BehaviorBase. Definition at line 56 of file StateNode.h. Referenced by DoStart(), DoStop(), PaceTargetsMachine::setup(), and ExploreMachine::setup(). |
|
Returns the std::vector of nodes so you can modify them yourself if need be.
Definition at line 35 of file StateNode.h. |
|
Returns the std::vector of transitions so you can modify them yourself if need be.
Definition at line 29 of file StateNode.h. |
|
don't call this
|
|
set name to n. Makes a copy of n, so you can throw it away later.
Definition at line 54 of file StateNode.cc. Referenced by PaceTargetsMachine::setup(), ExploreMachine::setup(), and StateNode(). |
|
Sets the retain flag - if not retained, will RemoveReference() subnodes upon DoStop() and recreate them on DoStart (by calling setup()) - may be too expensive to be worth saving memory...
Definition at line 38 of file StateNode.h. Referenced by ExploreMachine::ExploreMachine(), and WalkNode::WalkNode(). |
|
This is called by DoStart() when you should setup the network of subnodes.
Reimplemented in BanditMachine, ExploreMachine, PaceTargetsMachine, WalkToTargetMachine, and PlayMotionSequenceNode< SIZE >. Definition at line 44 of file StateNode.h. Referenced by DoStart(), WalkToTargetMachine::setup(), PaceTargetsMachine::setup(), ExploreMachine::setup(), and BanditMachine::setup(). |
|
This is called by DoStop() when you should destruct subnodes.
Reimplemented in ExploreMachine, PaceTargetsMachine, WalkToTargetMachine, PlayMotionSequenceNode< SIZE >, and WalkNode. Definition at line 50 of file StateNode.h. Referenced by DoStop(), and ExploreMachine::teardown(). |
|
called by a subnode when it is being DoStop()'ed
Definition at line 62 of file StateNode.cc. |
|
called by a subnode when it is being DoStart()'ed
Definition at line 58 of file StateNode.cc. Referenced by DoStart(). |
|
this is set to true if the network has been setup but not destroyed (i.e. don't need to call setupSubNodes again)
Definition at line 76 of file StateNode.h. Referenced by DoStart(), DoStop(), setup(), StateNode(), teardown(), and ~StateNode(). |
|
holds the name of the Node/Machine
Definition at line 84 of file StateNode.h. Referenced by getDescription(), getName(), setName(), and StateNode(). |
|
vector of StateNodes, just so they can be dereferenced again on DoStop() (unless retained) or ~StateNode()
Definition at line 80 of file StateNode.h. Referenced by addNode(), GroupNode::DoStart(), DoStop(), getNodes(), StateNode(), and ~StateNode(). |
|
pointer to the machine that contains this node
Definition at line 70 of file StateNode.h. Referenced by DoStart(), and StateNode(). |
|
this is set to true if the network should be retained between activations. Otherwise it's dereferenced upon DoStop(). (or at least RemoveReference() is called on subnodes)
Definition at line 78 of file StateNode.h. Referenced by DoStop(), setRetain(), and StateNode(). |
|
a vector of outgoing transitions
Definition at line 72 of file StateNode.h. Referenced by addTransition(), DoStart(), DoStop(), getTransitions(), StateNode(), and ~StateNode(). |
Tekkotsu v2.0 |
Generated Wed Jan 21 03:23:29 2004 by Doxygen 1.3.4 |