Marine systems simulation
CDisk.h
1#pragma once
64#include "CDiskBase.h"
65#include <SimObject.h>
66#include <CEnvironment.h>
67
68class CDisk: public SimObject
69{
70public:
71 CDisk( const std::string& SimObjectName,ISimObjectCreator * const Creator);
72 void FinalSetup(const double T, const double *const X, ISimObjectCreator* const Creator);
73 const double* Position( const double T, const double *const X);
74 const double* Velocity( const double T, const double *const X);
75 void OdeFcn(const double T, const double* const X, double* const XDot, const bool MajorTimeStep);
76private:
77 ISignalPort *m_IForce;
78
79 int m_PosIdx;
80 int m_VelIdx;
81
82 double m_DiskD;
83 double m_DiskT;
84 double m_adCableD;
85 double m_DiskMass;
86 double m_dDragCoeffNormal;
87 double m_dDragCoeffTransverse;
88 double m_Rho;
89 double m_lift;
90
91 CEnvironment *m_Environment;
92
93#ifdef FH_VISUALIZATION
94public:
95 void RenderInit(Ogre::Root* const pOgreRoot, ISimObjectCreator* const pCreator);
96 void RenderUpdate(const double dT, const double* const adX);
97private:
98 Ogre::SceneNode *m_Node;
99 Ogre::Entity *m_Entity;
100 Ogre::String m_Material;
101 std::string m_SphereMesh;
102#endif
103};
Definition: CDisk.h:69
Definition: CEnvironment.h:10