RESPOND 2.4.0
Researching Effective Strategies to Prevent Opioid Death
Loading...
Searching...
No Matches
respond::Transition Class Referenceabstract

Abstract base class representing a state transition operation. Transitions apply transformation matrices to state vectors and update history records. Subclasses define specific types of transitions (e.g., Markov, background death, behavior).

#include <transition.hpp>

Public Member Functions

virtual ~Transition ()=default
 Virtual destructor for proper polymorphic cleanup.
 
virtual Eigen::VectorXd Execute (const Eigen::VectorXd &s, std::map< std::string, History > &h) const =0
 Executes this transition, applying it to a state vector. The input state is not modified; history records are updated with the transition effects.
 
virtual void AddTransitionMatrix (const Eigen::MatrixXd &m)=0
 Adds a transformation matrix to this transition. The matrix is stored for use during Execute() calls.
 
virtual std::string GetTransitionName () const =0
 Retrieves the name/type of this transition.
 
virtual void ClearTransitionMatrices ()=0
 Clears all stored transition matrices.
 
virtual std::string GetLogName () const =0
 Retrieves the logger name used by this transition.
 
 Transition (const Transition &)=delete
 Deleted copy constructor (transitions are non-copyable by public API).
 
Transitionoperator= (const Transition &)=delete
 Deleted copy assignment operator (transitions are non-copyable by public API).
 
virtual std::unique_ptr< Transitionclone () const =0
 Creates a deep copy of this transition.
 

Protected Member Functions

 Transition ()=default
 Protected default constructor for subclass initialization. Not intended for direct public use.
 

Member Function Documentation

◆ AddTransitionMatrix()

virtual void respond::Transition::AddTransitionMatrix ( const Eigen::MatrixXd &  m)
pure virtual
Parameters
mThe transition matrix to add (not modified by this transition).

◆ clone()

virtual std::unique_ptr< Transition > respond::Transition::clone ( ) const
pure virtual
Returns
A unique_ptr to an independent copy of this transition.

◆ Execute()

virtual Eigen::VectorXd respond::Transition::Execute ( const Eigen::VectorXd &  s,
std::map< std::string, History > &  h 
) const
pure virtual
Parameters
sThe current state vector (not modified).
hThe history records to update (may be modified by this transition).
Returns
The resulting state vector after applying this transition.

◆ GetLogName()

virtual std::string respond::Transition::GetLogName ( ) const
pure virtual
Returns
The associated logger's name.

◆ GetTransitionName()

virtual std::string respond::Transition::GetTransitionName ( ) const
pure virtual
Returns
The transition's identifier as a string.

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