Detailed Description

Operator on state sets

Light weight base class to be used in fixpoint iterations. See faudes::CtrlPfxOperator for an example of a derived class.

Definition at line 39 of file syn_ctrlpfx.h.

#include <syn_ctrlpfx.h>

Public Member Functions

 StateSetOperator (void)
 
 StateSetOperator (const StateSetOperator &)=delete
 
 ~StateSetOperator (void)
 
virtual const StateSetDomain (void) const
 
void Evaluate (StateSetVector &rArgs, StateSet &rRes) const
 
void Evaluate (StateSet &rArg, StateSet &rRes) const
 
void Evaluate (StateSet &rRes) const
 
StateSetVector::Position ArgCount (void) const
 
const std::string & ArgName (StateSetVector::Position pos) const
 
std::string ArgStatistics (const StateSetVector &rArgs) const
 
virtual const std::string & Indent (void) const
 
virtual void Indent (const std::string &indent) const
 
- Public Member Functions inherited from faudes::ExtType
 ExtType (void)
 
 ExtType (const ExtType &rType)
 
virtual ~ExtType (void)
 
const std::string & Name (void) const
 
void Name (const std::string &rName)
 
virtual const std::string & TypeName (void) const
 
virtual void TypeName (const std::string &rType)
 
virtual const std::string & ElementTag (void) const
 
virtual void ElementTag (const std::string &rTag)
 
virtual const std::string & ElementType (void) const
 
virtual const TypeDefinitionTypeDefinitionp (void) const
 
Typeoperator= (const Type &rSrc)
 
bool operator== (const Type &rOther) const
 
bool operator!= (const Type &rOther) const
 
- Public Member Functions inherited from faudes::AttrType
 AttrType (void)
 
 AttrType (const AttrType &rSrc)
 
virtual ~AttrType (void)
 
virtual bool IsDefault (void) const
 
Typeoperator= (const Type &rSrc)
 
bool operator== (const Type &rOther) const
 
bool operator!= (const Type &rOther) const
 
- Public Member Functions inherited from faudes::Type
 Type (void)
 
 Type (const Type &rType)
 
virtual ~Type (void)
 
virtual TypeNew (void) const
 
virtual TypeCopy (void) const
 
virtual const TypeCast (const Type *pOther) const
 
virtual void Clear (void)
 
virtual TypeAssign (const Type &rSrc)
 
Typeoperator= (const Type &rSrc)
 
virtual bool Equal (const Type &rOther) const
 
bool operator== (const Type &rOther) const
 
bool operator!= (const Type &rOther) const
 
void Write (const Type *pContext=0) const
 
void Write (const std::string &pFileName, const std::string &rLabel="", const Type *pContext=0, std::ios::openmode openmode=std::ios::out|std::ios::trunc) const
 
void Write (const std::string &pFileName, std::ios::openmode openmode) const
 
void Write (TokenWriter &rTw, const std::string &rLabel="", const Type *pContext=0) const
 
virtual void XWrite (const std::string &pFileName, const std::string &rLabel="", const Type *pContext=0) const
 
void XWrite (const Type *pContext=0) const
 
void XWrite (TokenWriter &rTw, const std::string &rLabel="", const Type *pContext=0) const
 
std::string ToString (const std::string &rLabel="", const Type *pContext=0) const
 
std::string ToText (const std::string &rLabel="", const Type *pContext=0) const
 
void DWrite (const Type *pContext=0) const
 
void DWrite (const std::string &pFileName, const std::string &rLabel="", const Type *pContext=0, std::ios::openmode openmode=std::ios::out|std::ios::trunc) const
 
void DWrite (TokenWriter &rTw, const std::string &rLabel="", const Type *pContext=0) const
 
void SWrite (TokenWriter &rTw) const
 
void SWrite (void) const
 
std::string ToSText (void) const
 
void Read (const std::string &rFileName, const std::string &rLabel="", const Type *pContext=0)
 
void FromString (const std::string &rString, const std::string &rLabel="", const Type *pContext=0)
 
void Read (TokenReader &rTr, const std::string &rLabel="", const Type *pContext=0)
 

Static Public Member Functions

static void LogMuNu (bool on)
 
- Static Public Member Functions inherited from faudes::AttrType
static void Skip (TokenReader &rTr)
 

Protected Member Functions

virtual void DoEvaluate (StateSetVector &rArgs, StateSet &rRes) const =0
 
- Protected Member Functions inherited from faudes::AttrType
void DoAssign (const AttrType &rSrc)
 
bool DoEqual (const AttrType &rOther) const
 
- Protected Member Functions inherited from faudes::Type
void DoAssign (const Type &rSrc)
 
bool DoEqual (const Type &rOther) const
 
virtual void DoRead (TokenReader &rTr, const std::string &rLabel="", const Type *pContext=0)
 
virtual void DoWrite (TokenWriter &rTw, const std::string &rLabel="", const Type *pContext=0) const
 
virtual void DoXWrite (TokenWriter &rTw, const std::string &rLabel="", const Type *pContext=0) const
 
virtual void DoDWrite (TokenWriter &rTw, const std::string &rLabel="", const Type *pContext=0) const
 
virtual void DoSWrite (TokenWriter &rTw) const
 
virtual Token XBeginTag (const std::string &rLabel="", const std::string &rFallbackLabel="") const
 

Protected Attributes

StateSetVector::Position mArgCount
 
std::vector< std::string > mArgNames
 
std::string mIndent
 
- Protected Attributes inherited from faudes::ExtType
std::string mElementType
 
std::string mElementTagDef
 
std::string mObjectName
 

Static Protected Attributes

static bool mLogMuNu
 

Constructor & Destructor Documentation

◆ StateSetOperator() [1/2]

faudes::StateSetOperator::StateSetOperator ( void  )
inline

construct

Definition at line 44 of file syn_ctrlpfx.h.

◆ StateSetOperator() [2/2]

faudes::StateSetOperator::StateSetOperator ( const StateSetOperator )
delete

disable copy construct

◆ ~StateSetOperator()

faudes::StateSetOperator::~StateSetOperator ( void  )
inline

destruct

Definition at line 50 of file syn_ctrlpfx.h.

Member Function Documentation

◆ ArgCount()

StateSetVector::Position faudes::StateSetOperator::ArgCount ( void  ) const

signature, i.e., the number of arguments we expect

Definition at line 82 of file syn_ctrlpfx.cpp.

◆ ArgName()

const std::string & faudes::StateSetOperator::ArgName ( StateSetVector::Position  pos) const

signature, i.e., argument names (cosmetic)

Definition at line 87 of file syn_ctrlpfx.cpp.

◆ ArgStatistics()

std::string faudes::StateSetOperator::ArgStatistics ( const StateSetVector rArgs) const

argument stats (debugging/development)

Definition at line 94 of file syn_ctrlpfx.cpp.

◆ DoEvaluate()

virtual void faudes::StateSetOperator::DoEvaluate ( StateSetVector rArgs,
StateSet rRes 
) const
protectedpure virtual

Evaluate opertor on arguments (protected virtual)

The arguments are given as a vector of state sets. For fixpoint iterations, the last entry in the vector becomes the iteration variable, while the remaining entries are constant parameters. Re-implement this function for the oparater you want to iterate on. See faudes::CtrlPfxOperator for a derived class.

Parameters
rAggsState-set valued arguments the operator performs on
rResResulting state set

Implemented in faudes::NuIteration, faudes::MuIteration, faudes::CtrlPfxOperator, faudes::RabinInvDynCtrl, faudes::RabinInvDynCtrlCore, faudes::RabinInvDynPReach, faudes::RabinInvDynPReachCore, faudes::RabinInvDynThetaTilde, faudes::RabinInvDynThetaTildeCore, and faudes::RabinInvDynTheta.

◆ Domain()

const StateSet & faudes::StateSetOperator::Domain ( void  ) const
virtual

Domain

Some operations need to take complements and thus refer to the full state set. The base class returns the empty set as a dummy. Reimplement this function if you need that extra functionality. See faudes::CtrlPfxOperator for a derived class.

Returns
Full state set.

Reimplemented in faudes::NuIteration, faudes::MuIteration, faudes::CtrlPfxOperator, and faudes::RabinInvDynOperator.

Definition at line 40 of file syn_ctrlpfx.cpp.

◆ Evaluate() [1/3]

void faudes::StateSetOperator::Evaluate ( StateSet rArg,
StateSet rRes 
) const

Evaluate opertor on arguments

This is a convenience wrapper for the protected method DoEvaluate for operator with orny one argument.

Parameters
rArgState-set valued argument
rResResulting state set

Definition at line 57 of file syn_ctrlpfx.cpp.

◆ Evaluate() [2/3]

void faudes::StateSetOperator::Evaluate ( StateSet rRes) const

Evaluate opertor on arguments

This is a convenience wrapper for the protected method DoEvaluate for operators with no arguments.

Parameters
rResResulting state set

Definition at line 70 of file syn_ctrlpfx.cpp.

◆ Evaluate() [3/3]

void faudes::StateSetOperator::Evaluate ( StateSetVector rArgs,
StateSet rRes 
) const

Evaluate opertor on arguments

This is a wrapper for the protected method DoEvaluate. The latter should be re-implemented by derived classes to encode the actual operator.

Parameters
rArgsState-set valued arguments the operator performs on
rResResulting state set

Definition at line 46 of file syn_ctrlpfx.cpp.

◆ Indent() [1/2]

void faudes::StateSetOperator::Indent ( const std::string &  indent) const
virtual

indent (cosmetic)

Reimplemented in faudes::NuIteration, and faudes::MuIteration.

Definition at line 108 of file syn_ctrlpfx.cpp.

◆ Indent() [2/2]

const std::string & faudes::StateSetOperator::Indent ( void  ) const
virtual

indent (cosmetic)

Reimplemented in faudes::NuIteration, faudes::MuIteration, faudes::NuIteration, and faudes::MuIteration.

Definition at line 103 of file syn_ctrlpfx.cpp.

◆ LogMuNu()

void faudes::StateSetOperator::LogMuNu ( bool  on)
static

logging progress (cosmetic)

Definition at line 114 of file syn_ctrlpfx.cpp.

Member Data Documentation

◆ mArgCount

StateSetVector::Position faudes::StateSetOperator::mArgCount
protected

signature

Definition at line 123 of file syn_ctrlpfx.h.

◆ mArgNames

std::vector<std::string> faudes::StateSetOperator::mArgNames
protected

support cosmetic siganture

Definition at line 126 of file syn_ctrlpfx.h.

◆ mIndent

std::string faudes::StateSetOperator::mIndent
protected

support cosmetic

Definition at line 129 of file syn_ctrlpfx.h.

◆ mLogMuNu

bool faudes::StateSetOperator::mLogMuNu
staticprotected

support cosmetic

Definition at line 132 of file syn_ctrlpfx.h.


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

libFAUDES 2.33h --- 2025.06.18 --- c++ api documentaion by doxygen