109 void FinalSetup(
double T,
const double* X, ISimObjectCreator* Creator)
override;
121 void PreOdeFcn(
double T,
const double* X, IStateUpdater* updater)
override;
124 void OdeFcn(
double T,
const double* X,
double* XDot)
const override;
126#ifdef FH_VISUALIZATION
128 void RenderInit(Ogre::Root* ogreRoot, ISimObjectCreator* creator)
override { }
130 void RenderUpdate(
double T,
const double* X)
override { }
139 void WidenAboveMaxThrustCoefficient(ISimObjectCreator* creator,
const std::string& strengthName);
145 void FollowRelativeFlow(
double T);
148 void PublishFixedAxis();
151 void UpdateSeabedImage();
153 environment::EnvironmentProvider* m_pEnvironment =
nullptr;
154 std::shared_ptr<marenv::wake::SourceSetWake> m_pWake;
157 double m_sourceVelocity[3] {};
159 double m_setupTime = 0.0;
160 double m_seabedDepth = 0.0;
161 bool m_followFlow =
true;
162 bool m_seabedChecked =
false;
163 ISimObjectLogger* m_logger =
nullptr;