19#include <fhsim/simobject/SimObject.h>
25 CSrcBase(std::string sSimObjectName, ISimObjectCreator* pCreator);
31 virtual void OdeFcn(
const double dT,
const double*
const adX,
double*
const adXDot)
const{};
33#ifdef FH_VISUALIZATION
35 virtual void RenderInit(Ogre::Root*
const ogreRoot, ISimObjectCreator*
const creator) { }
38 virtual void RenderUpdate(
const double T,
const double*
const X) { }
43 void ReadParameter(std::string sTag,
double* adVals,
double dDefault, ISimObjectCreator* pCreator);
46 bool ReadTwinParameters(std::string sTagA,
double dDefaultA, std::string sTagB,
double dDefaultB,
double* adVals, ISimObjectCreator* pCreator);
49 virtual void CalcOutput(
const double dT,
const double*
const adX) = 0;
52 virtual const double*
Signal(
const double dT,
const double*
const adX);
55 virtual const double*
SignalDot(
const double dT,
const double*
const adX);
CSrcBase(std::string sSimObjectName, ISimObjectCreator *pCreator)
The constructor.
virtual const double * SignalDot(const double dT, const double *const adX)
The derivative of the output signal.
virtual void CalcOutput(const double dT, const double *const adX)=0
Calculations of the output signals.
void ReadParameter(std::string sTag, double *adVals, double dDefault, ISimObjectCreator *pCreator)
Utility function to read a parameter.
virtual ~CSrcBase()
The destructor.
double * m_adOutSignal
The output signal.
Definition CSrcBase.h:57
int m_iPortWidth
The width of the output port.
Definition CSrcBase.h:59
bool ReadTwinParameters(std::string sTagA, double dDefaultA, std::string sTagB, double dDefaultB, double *adVals, ISimObjectCreator *pCreator)
Utility function to read a parameter with two possible representations or units.
virtual void OdeFcn(const double dT, const double *const adX, double *const adXDot) const
Calculates the state derivatives.
Definition CSrcBase.h:31
virtual const double * Signal(const double dT, const double *const adX)
The output signal.
double * m_adOutSignalDot
The derivative of the output signal.
Definition CSrcBase.h:58