93 EIGEN_MAKE_ALIGNED_OPERATOR_NEW;
107 ShipConsoleInput(
const std::string simObjectName, ISimObjectCreator*
const creator);
110 void OdeFcn(
const double T,
const double *
const X,
double *
const XDot)
const{}
112 const double *RudderAngle(
const double T,
const double*
const X);
113 const double *EngineCommand(
const double T,
const double*
const X);
114 const double *EngineCommandPort(
const double T,
const double*
const X);
115 const double *EngineCommandStarboard(
const double T,
const double*
const X);
117 const double *EnginePower(
const double T,
const double*
const X);
118 const double *EnginePowerPort(
const double T,
const double*
const X);
119 const double *EnginePowerStarboard(
const double T,
const double*
const X);
121 const double *ThrusterPower(
const double T,
const double*
const X);
122 const double *Thruster0Power(
const double T,
const double*
const X);
123 const double *Thruster1Power(
const double T,
const double*
const X);
124 const double *Thruster2Power(
const double T,
const double*
const X);
126 const double *ThrusterCommand(
const double T,
const double*
const X);
127 const double *Thruster0Command(
const double T,
const double*
const X);
128 const double *Thruster1Command(
const double T,
const double*
const X);
129 const double *Thruster2Command(
const double T,
const double*
const X);
131#ifdef FH_VISUALIZATION
132 virtual void RenderInit(Ogre::Root*
const ogreRoot, ISimObjectCreator*
const creator);
133 virtual void RenderUpdate(
const double T,
const double*
const X );
134 void RenderRelease()
override;
146#ifdef FH_VISUALIZATION
147 FhCamera* m_cam =
nullptr;
148 std::unique_ptr<joystick::SdlJoystickPoller> m_joystick;
151 ISignalPort *m_inParentOrientation;
152 ISignalPort *m_inParentPosition;
154 bool m_controlCamera;
156 size_t m_activeCamera;
157 Eigen::Vector3d m_cameraPositons[4];
158 double m_cameraRotZ[4];
159 double m_cameraRotY[4];
162 double m_rudderAngle;
164 bool m_engineEnable[NUM_ENGINE];
165 double m_enginePower[NUM_ENGINE];
166 double m_engineCommand[NUM_ENGINE];
168 double m_enginePowerOut[NUM_ENGINE];
170 double m_thrusterPower[NUM_THRUSTER];
171 double m_thrusterPowerOut[NUM_THRUSTER];
172 bool m_thrusterEnable[NUM_THRUSTER];
173 double m_thrusterCommandOut[NUM_THRUSTER];
174 int m_thrusterInput[NUM_THRUSTER];