Marine systems simulation
CRMCable.h
1#pragma once
56#include <SimObject.h>
57
58#ifdef FH_VISUALIZATION
59#include "sfh/ogre/C3DLine.h"
60#endif
61
62namespace RbCable
63{
64 class CRMCable : public SimObject
65 {
66 public:
67 CRMCable(const string& simObjectName, ISimObjectCreator* const creator);
68 ~CRMCable();
69 void OdeFcn(const double T, const double* const X, double* const XDot, const bool bIsMajorTimeStep);
70
71
72 const double* totalLength(const double T, const double* const X);
73 const double* kineticEnergy(const double T, const double* const X);
74
75#ifdef FH_VISUALIZATION
76 void RenderInit(Ogre::Root* const ogreRoot, ISimObjectCreator* const creator);
77 void RenderUpdate( const double T, const double* const X);
78#endif
79
80 protected:
81 int m_numElements;
82 int* m_pos;
83 int* m_vel;
84
85 double m_alpha;
86 double m_beta;
87 int counter;
88
89 ISignalPort* m_posA;
90 ISignalPort* m_posB;
91
92 double m_totalLength;
93 double m_kineticEnergy;
94
95#ifdef FH_VISUALIZATION
96 C3DLine* m_line;
97#endif
98 };
99
100}
Definition: CRMCable.h:65
CRMCable(const string &simObjectName, ISimObjectCreator *const creator)
reads parameters, registers states, output and intput ports.