Marine systems simulation
CTrigonometric.h
1#ifndef CTrigonometric_H
2#define CTrigonometric_H
3
75#include "SimObject.h"
76
77#include <string>
78
79class CTrigonometric : public SimObject
80{
81 public:
83 {
84 TrigoType_Sin = 1000,
85 TrigoType_Arcsin,
86 TrigoType_Cos,
87 TrigoType_Arccos,
88 TrigoType_Tan,
89 TrigoType_Arctan,
90 TrigoType_Arctan2,
91 TrigoType_Repro,
92 };
94 CTrigonometric(std::string sSimObjectName, ISimObjectCreator* pCreator);
96
98 void OdeFcn(const double dT, const double* const adX, double* const adXDot, const bool bIsMajorTimeStep) { }
99
100 const double* Output(const double T, const double* const X);
101
102
103#ifdef FH_VISUALIZATION
105 virtual void RenderInit(Ogre::Root* const ogreRoot, ISimObjectCreator* const creator) { }
106
108 virtual void RenderUpdate(const double T, const double* const X) { }
109#endif
110
111
112 protected:
115
116 ISignalPort* m_Input1;
117 ISignalPort* m_Input2;
118
119 double* m_Signal;
120
122 void CheckValue(const double m_iInfHandling, double* out, int i);
123
125};
126
127
128#endif
Definition: CTrigonometric.h:80
void CheckValue(const double m_iInfHandling, double *out, int i)
Writes the output message.
ETrigoFunc
< Enumerator for the kind of trigonometric function.
Definition: CTrigonometric.h:83
int m_iPortWidth
The width of the sum object input and output ports.
Definition: CTrigonometric.h:124
ISignalPort * m_Input1
performed.
Definition: CTrigonometric.h:116
CTrigonometric(std::string sSimObjectName, ISimObjectCreator *pCreator)
Constructor.
void OdeFcn(const double dT, const double *const adX, double *const adXDot, const bool bIsMajorTimeStep)
Calculates the state Trigonometrics.
Definition: CTrigonometric.h:98
ETrigoFunc m_ETrigoFunc
Definition: CTrigonometric.h:113