FSM Library - C++ version
Public Member Functions | List of all members
PkTable Class Reference

#include <PkTable.h>

Public Member Functions

 PkTable (const int numStates, const int maxInput, const std::shared_ptr< FsmPresentationLayer > presentationLayer)
 
 PkTable (const int numStates, const int maxInput, const std::vector< std::shared_ptr< PkTableRow >> rows, const std::shared_ptr< FsmPresentationLayer > presentationLayer)
 
void setRow (const int s, const std::shared_ptr< PkTableRow > row)
 
void setClass (const int n, const int c)
 
int getClass (const int n) const
 
int maxClassId () const
 
std::shared_ptr< PkTablegetPkPlusOneTable () const
 
Dfsm toFsm (std::string name)
 
std::string getMembers (const int c) const
 

Detailed Description

Class for representing Pk-Tables

Constructor & Destructor Documentation

PkTable::PkTable ( const int  numStates,
const int  maxInput,
const std::shared_ptr< FsmPresentationLayer presentationLayer 
)

Create an empty Pktable, with each row set to nullptr

Parameters
numStatesThe number of rows (1 row = 1 state)
maxInputThe maximal input
presentationLayerThe presentation layer used by the PkTable
PkTable::PkTable ( const int  numStates,
const int  maxInput,
const std::vector< std::shared_ptr< PkTableRow >>  rows,
const std::shared_ptr< FsmPresentationLayer presentationLayer 
)

Create a Pktable

Parameters
numStatesThe number of rows (1 row = 1 state)
maxInputThe maximal input
rowsThe rows used by the PkTable
presentationLayerThe presentation layer used by the PkTable

Member Function Documentation

int PkTable::getClass ( const int  n) const

Get the id of the Pk-equivalence class at the position n

Parameters
nThe position
Returns
The id
std::string PkTable::getMembers ( const int  c) const

Return members of an equivalence class c as set string

Here is the caller graph for this function:

std::shared_ptr< PkTable > PkTable::getPkPlusOneTable ( ) const

Generate the P(k+1) table from this Pk-Table

Returns
null if no new equivalence classes can be generated from this Pk-Table the P(k+1)-Table otherwise

Here is the call graph for this function:

int PkTable::maxClassId ( ) const

Get the maximum id of the Pk-equivalence class

Returns
The id

Here is the caller graph for this function:

void PkTable::setClass ( const int  n,
const int  c 
)

Set the id of the Pk-equivalence class at the position n

Parameters
nThe position
cThe id
void PkTable::setRow ( const int  s,
const std::shared_ptr< PkTableRow row 
)

Set the row of the Pk-equivalence class at the position s

Parameters
sThe position
rowThe row
Dfsm PkTable::toFsm ( std::string  name)

Generate a DFSM form thus pktable

Returns
The DFSM generated

Here is the call graph for this function:


The documentation for this class was generated from the following files: