FSMSADF::MPExploreStateSpace::State Class Reference
#include <statespace.h>
Public Member Functions | |
State (State *previousState,::FSM::Abstract::State *newFsmState, Matrix *m) | |
~State () | |
size_t | hashValue () const |
bool | equals (const State *s) const |
int | compare (const State *s) const |
void | executeIteration () |
void | normalize () |
bool | addReachableState (State *state, MPDelay d) |
void | print (ostream &out) const |
Public Attributes | |
MaxPlus::Vector * | mpvector |
::FSM::Abstract::State * | fsmState |
Matrix * | mat |
MPDelay | delay |
map< State *, MPDelay > | reachableStates |
State * | previousState |
Detailed Description
class State State represents a MaxPlus vector and a state in the FSM of the graph.
Constructor & Destructor Documentation
FSMSADF::MPExploreStateSpace::State::State | ( | State * | prevState, | |
::FSM::Abstract::State * | newFsmState, | |||
Matrix * | m | |||
) |
State() Constructor.
References fsmState, mat, mpvector, and previousState.
FSMSADF::MPExploreStateSpace::State::~State | ( | ) |
~State() Destructor
Member Function Documentation
bool FSMSADF::MPExploreStateSpace::State::addReachableState | ( | State * | state, | |
MPDelay | d | |||
) |
addReachableState() Add the state to the set of reachable states.
References delay, fsmState, MaxPlus::Vector::getSize(), mpvector, print(), reachableStates, and v.
Referenced by FSMSADF::MPExploreStateSpace::StateSpaceExploration::exploreThroughput(), and FSMSADF::MPExploreStateSpace::StateSpaceExploration::exploreThroughputMax().
int FSMSADF::MPExploreStateSpace::State::compare | ( | const State * | s | ) | const |
compare() The function implements a comparison to generate a total order for MS hash_set return -1 if receiver smaller than s, 0 if equal, otherwise 1 performs a lexicographical order on fsm state and initial tokens.
References fsmState, MaxPlus::Vector::get(), MaxPlus::Vector::getSize(), MaxPlus::MP_EPSILON, and mpvector.
bool FSMSADF::MPExploreStateSpace::State::equals | ( | const State * | s | ) | const |
equals() Compare the states for equality on all their token timestamps and equality of the FSM state.
References fsmState, MaxPlus::Vector::get(), MaxPlus::Vector::getSize(), MaxPlus::MP_EPSILON, and mpvector.
Referenced by FSMSADF::MPExploreStateSpace::StateComparator::operator()().
void FSMSADF::MPExploreStateSpace::State::executeIteration | ( | ) |
executeIteration() Execute one iteration of the scenario graph associated with this state.
References mat, mpvector, and print().
Referenced by FSMSADF::MPExploreStateSpace::StateSpaceExploration::exploreThroughput(), and FSMSADF::MPExploreStateSpace::StateSpaceExploration::exploreThroughputMax().
size_t FSMSADF::MPExploreStateSpace::State::hashValue | ( | ) | const |
hashValue() Compute hash value of the state.
References fsmState, MaxPlus::Vector::get(), MaxPlus::Vector::getSize(), and mpvector.
Referenced by FSMSADF::MPExploreStateSpace::StateHasher::operator()().
void FSMSADF::MPExploreStateSpace::State::normalize | ( | ) |
normalize() Normalize the production time of the tokens in all FIFOs.
References delay, mpvector, and MaxPlus::Vector::normalize().
Referenced by FSMSADF::MPExploreStateSpace::StateSpaceExploration::exploreThroughput(), and FSMSADF::MPExploreStateSpace::StateSpaceExploration::exploreThroughputMax().
void FSMSADF::MPExploreStateSpace::State::print | ( | ostream & | out | ) | const |
print() Print the state.
References fsmState, MaxPlus::Vector::get(), MaxPlus::Vector::getSize(), and mpvector.
Referenced by addReachableState(), executeIteration(), FSMSADF::MPExploreStateSpace::StateSpaceExploration::exploreThroughput(), and FSMSADF::MPExploreStateSpace::StateSpaceExploration::exploreThroughputMax().
Member Data Documentation
Referenced by addReachableState(), compare(), equals(), FSMSADF::MPExploreStateSpace::StateSpaceExploration::exploreThroughput(), FSMSADF::MPExploreStateSpace::StateSpaceExploration::exploreThroughputMax(), hashValue(), print(), FSMSADF::MPExploreStateSpace::StateSpaceExploration::printStateSpace(), and State().
Referenced by executeIteration(), and State().
map<State*,MPDelay> FSMSADF::MPExploreStateSpace::State::reachableStates |
The documentation for this class was generated from the following files: