84 TrawlReporter(
const std::string& simObjectName, ISimObjectCreator*
const creator);
86 void OdeFcn(
const double T,
const double*
const X,
double*
const XDot)
const override { }
87 void AcceptedStep(
const double T,
const double*
const X)
override;
89#ifdef FH_VISUALIZATION
90 void RenderInit(Ogre::Root*
const ogreRoot, ISimObjectCreator*
const creator);
91 void RenderUpdate(
const double T,
const double*
const X);
96 std::vector<double>
Measure(
const double T,
const double*
const X)
const;
99 const double*
Filtered(
int offset) {
return m_filter.GetValue() + offset; }
101 const double* OutWarpTensions(
const double T,
const double*
const X) {
return Filtered(m_indWarpTensions); }
102 const double* OutOuterDoorSpread(
const double T,
const double*
const X) {
return Filtered(m_indOuterDoorSpread); }
103 const double* OutDoorSpreads(
const double T,
const double*
const X) {
return Filtered(m_indDoorSpreads); }
104 const double* OutNetHeightsCenter(
const double T,
const double*
const X) {
return Filtered(m_indNetHeightsCenter); }
105 const double* OutNetHeightsPWing(
const double T,
const double*
const X) {
return Filtered(m_indNetHeightsPWing); }
106 const double* OutNetHeightsSWing(
const double T,
const double*
const X) {
return Filtered(m_indNetHeightsSWing); }
107 const double* OutNetWidthTop(
const double T,
const double*
const X) {
return Filtered(m_indNetWidthTop); }
108 const double* OutNetWidthBottom(
const double T,
const double*
const X) {
return Filtered(m_indNetWidthBottom); }
109 const double* OutNetSeafloorPressure(
const double T,
const double*
const X) {
return Filtered(m_indNetSeafloorPressure); }
110 const double* OutNetSeafloorFriction(
const double T,
const double*
const X) {
return Filtered(m_indNetSeafloorFriction); }
113 sfh::filters::FIR m_filter;
114 std::vector<ISignalPort*> m_inWarpForces;
115 std::vector<ISignalPort*> m_inDoorPos;
116 std::vector<ISignalPort*> m_inNetUpperPort;
117 std::vector<ISignalPort*> m_inNetLowerPort;
118 std::vector<ISignalPort*> m_inNetUpperStb;
119 std::vector<ISignalPort*> m_inNetLowerStb;
120 std::vector<ISignalPort*> m_inNetUpperCenter;
121 std::vector<ISignalPort*> m_inNetLowerCenter;
122 std::vector<ISignalPort*> m_inNetBottomContact;
125 int m_indWarpTensions;
126 int m_indOuterDoorSpread;
127 int m_indDoorSpreads;
128 int m_indNetHeightsCenter;
129 int m_indNetWidthTop;
130 int m_indNetSeafloorPressure;
131 int m_indNetSeafloorFriction;
132 int m_indNetHeightsPWing;
133 int m_indNetHeightsSWing;
134 int m_indNetWidthBottom;
137#ifdef FH_VISUALIZATION
138 std::unique_ptr<ValuesDisplayBase> m_formatter;
139 fhsim::HudCorner m_corner;
140 std::vector<fhsim::HudLine> m_hudLines;
std::vector< double > Measure(const double T, const double *const X) const
The unfiltered values at (T, X), in the layout of the Ind* offsets.
static constexpr double kNewtonToTonneForce
Multiplier that shows a force in N as tonnes-force (t) on the HUD: 1 t is 1000 kg at standard gravity...
Definition TrawlReporter.h:82