Marmote Core
The project aims at realizing the prototype of a software environment dedicated to modeling with Markov chains.
 All Classes Functions Variables
Public Member Functions | Protected Attributes | List of all members
marmoteSet Class Referenceabstract

The mother class representing abstract sets. More...

#include <marmoteSet.h>

Inheritance diagram for marmoteSet:
marmoteBox marmoteInterval

Public Member Functions

 marmoteSet (marmoteSet **list, int nb, opType t)
 Constructor for composite sets, from smaller sets. More...
 
virtual ~marmoteSet ()
 
virtual long int cardinal ()
 Cardinal of the set. More...
 
virtual bool isFinite ()=0
 Test if the set is finite. More...
 
bool isSimple ()
 Test if the set is a simple, elementary set. More...
 
bool isUnion ()
 Test if the set is a composite, product set. More...
 
bool isProduct ()
 Test if the set is a composite, product set. More...
 
int totNbDims ()
 Read accessor to the total number of dimensions. More...
 
virtual void enumerate ()
 Enumerates the set: lists all elements of the set. PROBLEM: enumerate where? in a file? to be specified more precisely. More...
 
virtual void firstState (int *buffer)
 
virtual void nextState (int *buffer)
 Procedure to compute the state following a given state in the set order. The new state is computed in place: the original state is erased. By convention, the state following the last state is the first state. More...
 
virtual void decodeState (int index, int *buffer)
 
virtual bool isZero (int *buffer)
 
virtual void printState (FILE *out, int *buffer)
 
virtual void printState (FILE *out, int index)
 

Protected Attributes

bool _isSimple
 
bool _isUnion
 
bool _isProduct
 
int _nbDimensions
 
int _nbZones
 
long int _cardinal
 
marmoteSet ** _zone
 
marmoteSet ** _dimension
 
int * _zeroState
 

Detailed Description

The mother class representing abstract sets.

Constructor & Destructor Documentation

marmoteSet::marmoteSet ( marmoteSet **  list,
int  nb,
opType  t 
)

Constructor for composite sets, from smaller sets.

Parameters
listthe list of elements in the composite
nbthe number of elements in the composite
tthe type of composite: UNION or PRODUCT
marmoteSet::~marmoteSet ( )
virtual

Destructor for general sets. Essentially for composite structures.

Member Function Documentation

long int marmoteSet::cardinal ( )
virtual

Cardinal of the set.

Returns
an integer, the cardinal of the set, or INFINITE_STATE_SPACE_SIZE
void marmoteSet::enumerate ( )
virtual

Enumerates the set: lists all elements of the set. PROBLEM: enumerate where? in a file? to be specified more precisely.

Reimplemented in marmoteInterval.

virtual bool marmoteSet::isFinite ( )
pure virtual

Test if the set is finite.

Returns
true if the set is finite, false if not.

Implemented in marmoteInterval, and marmoteBox.

bool marmoteSet::isProduct ( )
inline

Test if the set is a composite, product set.

Returns
true if the set is a product, false otherwise.
bool marmoteSet::isSimple ( )
inline

Test if the set is a simple, elementary set.

Returns
true if the set is elementary, false otherwise.
bool marmoteSet::isUnion ( )
inline

Test if the set is a composite, product set.

Returns
true if the set is a product, false otherwise.
void marmoteSet::nextState ( int *  buffer)
virtual

Procedure to compute the state following a given state in the set order. The new state is computed in place: the original state is erased. By convention, the state following the last state is the first state.

Parameters
bufferthe reference state

Reimplemented in marmoteBox, and marmoteInterval.

int marmoteSet::totNbDims ( )
inline

Read accessor to the total number of dimensions.

Returns
The total number of dimensions of a vector representation.

Member Data Documentation

long int marmoteSet::_cardinal
protected

cardinal of the set

marmoteSet** marmoteSet::_dimension
protected

array of dimensions, in case of a product

bool marmoteSet::_isProduct
protected

indicator that the set is a cartesian product of other sets

bool marmoteSet::_isSimple
protected

indicator that the set is simple (elementary)

bool marmoteSet::_isUnion
protected

indicator that the set is a union of other sets

int marmoteSet::_nbDimensions
protected

number of dimensions if this is a product

int marmoteSet::_nbZones
protected

number of subsets if this is a union

int* marmoteSet::_zeroState
protected

the representation of the initial state (static)

marmoteSet** marmoteSet::_zone
protected

array of zones, in case of a union


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