COPASI API  4.40.278
CMathDelay Class Reference

#include <CMathDelay.h>

Public Member Functions

void addValueObject (CMath::DelayValueData::iterator &itValueData, const size_t &index, CMathObject *pValueObject)
 
void calculateDelayValues (const bool &useMoieties)
 
 CMathDelay ()
 
void copy (const CMathDelay &src, CMathContainer &container)
 
void create (CMath::DelayData::iterator &itDelayData, const size_t &delayValueCount, CMathContainer &container, CMathObject *pLagObject)
 
void createUpdateSequences ()
 
void modifyMathObject (CMath::DelayValueData::iterator &itValueData, const size_t &index)
 
void relocate (const CMathContainer *pContainer, const std::vector< CMath::sRelocate > &relocations)
 
virtual ~CMathDelay ()
 

Private Attributes

CMathContainermpContainer
 
CMathObjectmpLagObject
 
CVector< CMathObject * > mValueObjects
 
CCore::CUpdateSequence mValueSequence
 
CCore::CUpdateSequence mValueSequenceReduced
 

Constructor & Destructor Documentation

◆ CMathDelay()

CMathDelay::CMathDelay ( )

Default Constructor

◆ ~CMathDelay()

CMathDelay::~CMathDelay ( )
virtual

Destructor

Member Function Documentation

◆ addValueObject()

void CMathDelay::addValueObject ( CMath::DelayValueData::iterator &  itValueData,
const size_t &  index,
CMathObject pValueObject 
)

Add a value object to the delay

Parameters
CMath::DelayValueData::iterator& itValueData
constsize_t & index
CMathObject* pValueObject

References mpContainer, mValueObjects, CMathObject::setExpression(), and CVectorCore< CType >::size().

Referenced by CMathContainer::createDelays().

◆ calculateDelayValues()

void CMathDelay::calculateDelayValues ( const bool &  useMoieties)

Calculate the delay values.

Parameters
constbool & useMoieties

References CMathContainer::applyUpdateSequence(), mpContainer, mValueSequence, and mValueSequenceReduced.

Referenced by CMathContainer::updateHistoryValues().

◆ copy()

void CMathDelay::copy ( const CMathDelay src,
CMathContainer container 
)

Copy an existing object

Parameters
constCMathDelay & src
CMathContainer& container

◆ create()

void CMathDelay::create ( CMath::DelayData::iterator &  itDelayData,
const size_t &  delayValueCount,
CMathContainer container,
CMathObject pLagObject 
)

Create and compile the delay

Parameters
CMath::DelayData::iterator& itDelayData
constsize_t & delayValueCount
CMathContainer& container
CMathObject* pLagObject

References mpContainer, mpLagObject, mValueObjects, CVector< CType >::resize(), and CMathObject::setExpression().

Referenced by CMathContainer::createDelays().

◆ createUpdateSequences()

◆ modifyMathObject()

void CMathDelay::modifyMathObject ( CMath::DelayValueData::iterator &  itValueData,
const size_t &  index 
)

Update the expression containing the delay

Parameters
CMath::DelayValueData::iterator& itValueData
constsize_t & index

References CEvaluationTree::getInfix(), CMathObject::getValuePointer(), CEvaluationTree::isBoolean(), mpContainer, mpLagObject, mValueObjects, and pointerToString().

Referenced by CMathContainer::createDelays().

◆ relocate()

void CMathDelay::relocate ( const CMathContainer pContainer,
const std::vector< CMath::sRelocate > &  relocations 
)

The objects and values are relocated

Parameters
constCMathContainer * pContainer
conststd::vector< CMath::sRelocate > & relocations

References CVectorCore< CType >::array(), mpLagObject, mValueObjects, CMathContainer::relocateObject(), and CVectorCore< CType >::size().

Member Data Documentation

◆ mpContainer

CMathContainer* CMathDelay::mpContainer
private

A pointer to the container the delay belongs to

Referenced by addValueObject(), calculateDelayValues(), create(), createUpdateSequences(), and modifyMathObject().

◆ mpLagObject

CMathObject* CMathDelay::mpLagObject
private

The object the lag of the delay

Referenced by create(), modifyMathObject(), and relocate().

◆ mValueObjects

CVector< CMathObject * > CMathDelay::mValueObjects
private

The object for the delayed value

Referenced by addValueObject(), create(), createUpdateSequences(), modifyMathObject(), and relocate().

◆ mValueSequence

CCore::CUpdateSequence CMathDelay::mValueSequence
private

The sequence of calculations required to determine the delayed value

Referenced by calculateDelayValues(), and createUpdateSequences().

◆ mValueSequenceReduced

CCore::CUpdateSequence CMathDelay::mValueSequenceReduced
private

The sequence of calculations required to determine the delayed value based on the reduced state

Referenced by calculateDelayValues(), and createUpdateSequences().


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