71 if (type ==
"TABULAR") {
89 cerr << endl <<
fgred <<
highint <<
"ERROR: unable to open the file "
91 <<
fgred <<
highint <<
" => Output to this file is disabled."
92 <<
reset << endl << endl;
98 streambuf* buffer =
datafile.rdbuf();
99 ostream outstream(buffer);
101 outstream.precision(10);
109 outstream <<
"Aileron Command (norm)" +
delimeter;
110 outstream <<
"Elevator Command (norm)" +
delimeter;
111 outstream <<
"Rudder Command (norm)" +
delimeter;
112 outstream <<
"Flap Command (norm)" +
delimeter;
113 outstream <<
"Left Aileron Position (deg)" +
delimeter;
114 outstream <<
"Right Aileron Position (deg)" +
delimeter;
115 outstream <<
"Elevator Position (deg)" +
delimeter;
116 outstream <<
"Rudder Position (deg)" +
delimeter;
117 outstream <<
"Flap Position (deg)";
123 outstream <<
"P_{inertial} (deg/s)" +
delimeter +
"Q_{inertial} (deg/s)" +
delimeter +
"R_{inertial} (deg/s)";
128 outstream <<
"Reynolds Number" +
delimeter;
129 outstream <<
"V_{Total} (ft/s)" +
delimeter;
130 outstream <<
"V_{Inertial} (ft/s)" +
delimeter;
136 outstream <<
"V_{X_{inertial}} (ft/s)" +
delimeter +
"V_{Y_{inertial}} (ft/s)" +
delimeter +
"V_{Z_{inertial}} (ft/s)" +
delimeter;
138 outstream <<
"V_{North} (ft/s)" +
delimeter +
"V_{East} (ft/s)" +
delimeter +
"V_{Down} (ft/s)";
150 outstream <<
"F_{Total x} (lbs)" +
delimeter +
"F_{Total y} (lbs)" +
delimeter +
"F_{Total z} (lbs)";
160 outstream <<
"L_{Total} (ft-lbs)" +
delimeter +
"M_{Total} (ft-lbs)" +
delimeter +
"N_{Total} (ft-lbs)";
164 outstream <<
"Rho (slugs/ft^3)" +
delimeter;
165 outstream <<
"Absolute Viscosity" +
delimeter;
166 outstream <<
"Kinematic Viscosity" +
delimeter;
167 outstream <<
"Temperature (R)" +
delimeter;
169 outstream <<
"P_{Ambient} (psf)" +
delimeter;
170 outstream <<
"Turbulence Magnitude (ft/sec)" +
delimeter;
171 outstream <<
"Turbulence X Direction (deg)" +
delimeter;
173 outstream <<
"Roll Turbulence (deg/sec)" +
delimeter +
"Pitch Turbulence (deg/sec)" +
delimeter +
"Yaw Turbulence (deg/sec)";
192 outstream <<
"Altitude ASL (ft)" +
delimeter;
193 outstream <<
"Altitude AGL (ft)" +
delimeter;
200 outstream <<
"Latitude (deg)" +
delimeter;
201 outstream <<
"Latitude Geodetic (deg)" +
delimeter;
202 outstream <<
"Longitude (deg)" +
delimeter;
205 outstream <<
"Earth Position Angle (deg)" +
delimeter;
206 outstream <<
"Distance AGL (ft)" +
delimeter;
207 outstream <<
"Terrain Elevation (ft)";
211 if (scratch.length() != 0) outstream <<
delimeter << scratch;
215 if (scratch.length() != 0) outstream <<
delimeter << scratch;
250 string scratch =
Filename.utf8Str();
253 buffer = cout.rdbuf();
258 ostream outstream(buffer);
260 outstream.precision(10);
262 outstream <<
FDMExec->GetSimTime();
297 outstream.precision(10);
342 outstream.precision(14);
356 outstream.precision(18);
359 outstream.precision(14);
362 outstream <<
Propagate->GetTerrainElevation();
363 outstream.precision(10);
367 if (scratch.length() != 0) outstream <<
delimeter << scratch;
371 if (scratch.length() != 0) outstream <<
delimeter << scratch;
382 outstream.precision(18);
389 outstream.precision(10);
std::string GetAttributeValue(const std::string &key)
Retrieves an attribute.
This class implements a 3 element column vector.
static constexpr double radtodeg
static char highint[5]
highlights text
static char reset[5]
resets text properties
static char fgred[6]
red text
std::vector< FGFunction * > PreFunctions
bool Load(Element *el) override
Init the output directives from an XML file.
bool OpenFile(void) override
Opens the file.
void Print(void) override
Generates the output to the text file.
bool Load(Element *el) override
Init the output directives from an XML file.
void SetDelimiter(const std::string &delim)
Set the delimiter.
@ ssGroundReactions
Subsystem: Ground Reactions (= 1024)
@ ssMoments
Subsystem: Moments (= 32)
@ ssPropagate
Subsystem: Propagate (= 512)
@ ssPropulsion
Subsystem: Propulsion (= 4096)
@ ssSimulation
Subsystem: Simulation (= 1)
@ ssForces
Subsystem: Forces (= 16)
@ ssAerosurfaces
Subsystem: Aerosurfaces (= 2)
@ ssMassProps
Subsystem: Mass Properties (= 128)
@ ssFCS
Subsystem: FCS (= 2048)
@ ssRates
Subsystem: Body rates (= 4)
@ ssAtmosphere
Subsystem: Atmosphere (= 64)
@ ssAeroFunctions
Subsystem: Coefficients (= 256)
@ ssVelocities
Subsystem: Velocities (= 8)
FGGroundReactions * GroundReactions
std::vector< FGPropertyValue * > OutputParameters
void Disable(void)
Disables the output generation.
FGAccelerations * Accelerations
FGPropulsion * Propulsion
FGExternalReactions * ExternalReactions
FGAtmosphere * Atmosphere
FGMassBalance * MassBalance
std::vector< std::string > OutputCaptions
FGAerodynamics * Aerodynamics
FGBuoyantForces * BuoyantForces
Models the Quaternion representation of rotations.
std::string Dump(const std::string &delimiter) const
std::string & to_upper(std::string &str)