FSA Class Reference

#include <FSA.h>

Inheritance diagram for FSA:
ObjectOf< FSARep >

List of all members.

Public Types

typedef FSAState state_type
typedef FSAState::edge_type edge_type

Public Member Functions

 FSA ()
FSA operator* (const FSA &F) const
bool operator== (const FSA &F) const
void fold (const set< int > *candidates=NULL, list< FoldDetails > *details=NULL)
void pinch (int state1, int state2)
void unfold (const list< FoldDetails > &details)
void liftup (const list< FoldDetails > &details, list< FSAEdge > &path, int init_state)
bool isDeterministic () const
FSA deterministic () const
int newState ()
void eraseState (int state)
void newEdge (int state1, int state2, int label)
void eraseEdge (int state1, int state2, int label)
template<class ConstIntIterator >
void addLoop (int vert, ConstIntIterator F, ConstIntIterator L)
template<class ConstIntIterator >
void addRay (int vert, ConstIntIterator F, ConstIntIterator L)
void addFSA (int vert1, int vert2, const FSA &fsa)
const map< int, FSAState > & getStates () const
map< int, FSAState > & getStates ()
void makeInitial (int s)
void makeTerminal (int s)
void makeNonInitial (int s)
void makeNonTerminal (int s)
const set< int > & getInitStates () const
const set< int > & getTermStates () const

Private Member Functions

 FSA (const FSARep &rep)

Detailed Description

Definition at line 21 of file FSA.h.


Member Typedef Documentation

Definition at line 26 of file FSA.h.

Definition at line 25 of file FSA.h.


Constructor & Destructor Documentation

FSA::FSA (  )  [inline]

Definition at line 36 of file FSA.h.

FSA::FSA ( const FSARep rep  )  [inline, private]

Definition at line 42 of file FSA.h.


Member Function Documentation

void FSA::addFSA ( int  vert1,
int  vert2,
const FSA fsa 
) [inline]

Definition at line 91 of file FSA.h.

References FSARep::addFSA(), ObjectOf< FSARep >::change(), and ObjectOf< Rep >::look().

template<class ConstIntIterator >
void FSA::addLoop ( int  vert,
ConstIntIterator  F,
ConstIntIterator  L 
) [inline]

Definition at line 87 of file FSA.h.

References FSARep::addLoop(), and ObjectOf< FSARep >::change().

template<class ConstIntIterator >
void FSA::addRay ( int  vert,
ConstIntIterator  F,
ConstIntIterator  L 
) [inline]

Definition at line 89 of file FSA.h.

References FSARep::addRay(), and ObjectOf< FSARep >::change().

FSA FSA::deterministic (  )  const
void FSA::eraseEdge ( int  state1,
int  state2,
int  label 
) [inline]

Definition at line 85 of file FSA.h.

References ObjectOf< FSARep >::change(), and eraseEdge().

Referenced by eraseEdge().

void FSA::eraseState ( int  state  )  [inline]

Definition at line 83 of file FSA.h.

References ObjectOf< FSARep >::change(), and eraseState().

Referenced by eraseState().

void FSA::fold ( const set< int > *  candidates = NULL,
list< FoldDetails > *  details = NULL 
) [inline]

Definition at line 64 of file FSA.h.

References ObjectOf< FSARep >::change().

const set< int >& FSA::getInitStates (  )  const [inline]

Definition at line 108 of file FSA.h.

References getInitStates(), and ObjectOf< FSARep >::look().

Referenced by getInitStates().

map< int , FSAState >& FSA::getStates (  )  [inline]

Definition at line 94 of file FSA.h.

References ObjectOf< FSARep >::change(), and FSARep::getStates().

const map< int , FSAState >& FSA::getStates (  )  const [inline]

Definition at line 93 of file FSA.h.

References FSARep::getStates(), and ObjectOf< FSARep >::look().

const set< int >& FSA::getTermStates (  )  const [inline]

Definition at line 109 of file FSA.h.

References getTermStates(), and ObjectOf< FSARep >::look().

Referenced by getTermStates().

bool FSA::isDeterministic (  )  const
void FSA::liftup ( const list< FoldDetails > &  details,
list< FSAEdge > &  path,
int  init_state 
) [inline]

Definition at line 70 of file FSA.h.

References ObjectOf< FSARep >::change(), and liftup().

Referenced by liftup().

void FSA::makeInitial ( int  s  )  [inline]

Definition at line 104 of file FSA.h.

References ObjectOf< FSARep >::change(), and makeInitial().

Referenced by makeInitial().

void FSA::makeNonInitial ( int  s  )  [inline]

Definition at line 106 of file FSA.h.

References ObjectOf< FSARep >::change(), and makeNonInitial().

Referenced by makeNonInitial().

void FSA::makeNonTerminal ( int  s  )  [inline]

Definition at line 107 of file FSA.h.

References ObjectOf< FSARep >::change(), and makeNonTerminal().

Referenced by makeNonTerminal().

void FSA::makeTerminal ( int  s  )  [inline]

Definition at line 105 of file FSA.h.

References ObjectOf< FSARep >::change(), and makeTerminal().

Referenced by makeTerminal().

void FSA::newEdge ( int  state1,
int  state2,
int  label 
) [inline]

Definition at line 84 of file FSA.h.

References ObjectOf< FSARep >::change(), and newEdge().

Referenced by newEdge().

int FSA::newState (  )  [inline]

Definition at line 82 of file FSA.h.

References ObjectOf< FSARep >::change(), and newState().

Referenced by newState().

FSA FSA::operator* ( const FSA F  )  const
bool FSA::operator== ( const FSA F  )  const
void FSA::pinch ( int  state1,
int  state2 
) [inline]

Definition at line 67 of file FSA.h.

References ObjectOf< FSARep >::change(), and pinch().

Referenced by pinch().

void FSA::unfold ( const list< FoldDetails > &  details  )  [inline]

Definition at line 69 of file FSA.h.

References ObjectOf< FSARep >::change(), and unfold().

Referenced by unfold().


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on Mon Sep 26 18:43:46 2011 for CRyptography And Groups (CRAG) by  doxygen 1.6.1