regal::AbstractAutomaton< StateLabel_t, Sigma > Class Template Reference

#include <AbstractAutomaton.hpp>

Inheritance diagram for regal::AbstractAutomaton< StateLabel_t, Sigma >:

regal::DFAAutomaton< StateLabel_t, Sigma > List of all members.

Public Member Functions

 AbstractAutomaton (const Alphabet< Sigma > &a)
virtual StateLabel_t addState (const StateLabel_t &value=0)
virtual void addTransition (const StateLabel_t &start, const StateLabel_t &end, const Sigma &value)=0
virtual Alphabet< Sigma > getAlphabet () const
virtual int getAlphabetSize ()
int getIntegerValue (const StateLabel_t &s)
StateLabel_t getRealValue (const int &ind)
virtual int getSize ()=0
virtual bool isFinal (const StateLabel_t &sl)=0
virtual bool isInitial (const StateLabel_t &sl)=0
virtual void setStateAsFinal (const StateLabel_t &sl, const bool &value)=0
virtual void setStateAsInitial (const StateLabel_t &sl, const bool &value)=0
virtual StateLabel_t undefinedTransition () const=0
virtual ~AbstractAutomaton ()

Protected Member Functions

void undefineLastState ()

Protected Attributes

Alphabet< Sigma > alphabet
int stateNumber

template<typename StateLabel_t, typename Sigma>
class regal::AbstractAutomaton< StateLabel_t, Sigma >


Constructor & Destructor Documentation

template<typename StateLabel_t, typename Sigma>
regal::AbstractAutomaton< StateLabel_t, Sigma >::AbstractAutomaton ( const Alphabet< Sigma > &  a  )  [inline]

Creates an Abstract Automaton

template<typename StateLabel_t, typename Sigma>
virtual regal::AbstractAutomaton< StateLabel_t, Sigma >::~AbstractAutomaton (  )  [inline, virtual]

Destroy the current Abstract Automaton


Member Function Documentation

template<typename StateLabel_t, typename Sigma>
virtual StateLabel_t regal::AbstractAutomaton< StateLabel_t, Sigma >::addState ( const StateLabel_t &  value = 0  )  [inline, virtual]

Adds a State in the Automaton and associate it to a numerical value

Returns:
the created state

template<typename StateLabel_t, typename Sigma>
virtual void regal::AbstractAutomaton< StateLabel_t, Sigma >::addTransition ( const StateLabel_t &  start,
const StateLabel_t &  end,
const Sigma &  value 
) [pure virtual]

Adds a Transition in the Automaton

Parameters:
start is the label of the state where the new transition starts
end is the label of the state where the new transition ends
value is the value of the transition

Implemented in regal::DFAAutomaton< StateLabel_t, Sigma >.

template<typename StateLabel_t, typename Sigma>
virtual Alphabet<Sigma> regal::AbstractAutomaton< StateLabel_t, Sigma >::getAlphabet (  )  const [inline, virtual]

template<typename StateLabel_t, typename Sigma>
virtual int regal::AbstractAutomaton< StateLabel_t, Sigma >::getAlphabetSize (  )  [inline, virtual]

template<typename StateLabel_t, typename Sigma>
int regal::AbstractAutomaton< StateLabel_t, Sigma >::getIntegerValue ( const StateLabel_t &  s  )  [inline]

Returns an integer value associated with the template parameter is the template parameter

Returns:
an integer value associated with the template parameter

template<typename StateLabel_t, typename Sigma>
StateLabel_t regal::AbstractAutomaton< StateLabel_t, Sigma >::getRealValue ( const int &  ind  )  [inline]

Returns an template parameter associated with the integer value is the integer value

Returns:
an template parameter associated with the integer value

template<typename StateLabel_t, typename Sigma>
virtual int regal::AbstractAutomaton< StateLabel_t, Sigma >::getSize (  )  [pure virtual]

Implemented in regal::DFAAutomaton< StateLabel_t, Sigma >.

template<typename StateLabel_t, typename Sigma>
virtual bool regal::AbstractAutomaton< StateLabel_t, Sigma >::isFinal ( const StateLabel_t &  sl  )  [pure virtual]

Tells if a state is final

Parameters:
sl is the label of the state
Returns:
True if the state is final, False otherwise

Implemented in regal::DFAAutomaton< StateLabel_t, Sigma >.

template<typename StateLabel_t, typename Sigma>
virtual bool regal::AbstractAutomaton< StateLabel_t, Sigma >::isInitial ( const StateLabel_t &  sl  )  [pure virtual]

Tells if a state is initial

Parameters:
sl is the label of the state
Returns:
True if the state is initial, False otherwise

Implemented in regal::DFAAutomaton< StateLabel_t, Sigma >.

template<typename StateLabel_t, typename Sigma>
virtual void regal::AbstractAutomaton< StateLabel_t, Sigma >::setStateAsFinal ( const StateLabel_t &  sl,
const bool &  value 
) [pure virtual]

Set a state as final

Parameters:
sl is the label of the state
value,: if true, s1 is final.

Implemented in regal::DFAAutomaton< StateLabel_t, Sigma >.

template<typename StateLabel_t, typename Sigma>
virtual void regal::AbstractAutomaton< StateLabel_t, Sigma >::setStateAsInitial ( const StateLabel_t &  sl,
const bool &  value 
) [pure virtual]

Set a state as initial

Parameters:
sl is the label of the state
value,if true, s1 is initial.

Implemented in regal::DFAAutomaton< StateLabel_t, Sigma >.

template<typename StateLabel_t, typename Sigma>
virtual StateLabel_t regal::AbstractAutomaton< StateLabel_t, Sigma >::undefinedTransition (  )  const [pure virtual]

Implemented in regal::DFAAutomaton< StateLabel_t, Sigma >.

template<typename StateLabel_t, typename Sigma>
void regal::AbstractAutomaton< StateLabel_t, Sigma >::undefineLastState (  )  [inline, protected]


Member Data Documentation

template<typename StateLabel_t, typename Sigma>
Alphabet<Sigma> regal::AbstractAutomaton< StateLabel_t, Sigma >::alphabet [protected]

template<typename StateLabel_t, typename Sigma>
int regal::AbstractAutomaton< StateLabel_t, Sigma >::stateNumber [protected]

actual number of states in the automaton


The documentation for this class was generated from the following file:
Generated on Mon Sep 29 16:33:58 2008 for REGAL by  doxygen 1.5.1