 |
JSBSim Flight Dynamics Model
1.1.11 (13 Feb 2022)
An Open Source Flight Dynamics and Control Software Library in C++
|
34 #ifndef FGOUTPUTTYPE_H
35 #define FGOUTPUTTYPE_H
41 #include "models/FGModel.h"
59 class FGAccelerations;
61 class FGGroundReactions;
62 class FGExternalReactions;
63 class FGBuoyantForces;
64 class FGPropertyValue;
104 void SetIdx(
unsigned int idx);
155 virtual void Print(
void) = 0;
172 bool Toggle(
void) {enabled = !enabled;
return enabled;}
175 enum eSubSystems {
ssSimulation = 1,
ssAerosurfaces = 2,
ssRates = 4,
ssVelocities = 8,
ssForces = 16,
ssMoments = 32,
ssAtmosphere = 64,
ssMassProps = 128,
ssAeroFunctions = 256,
ssPropagate = 512,
ssGroundReactions = 1024,
ssFCS = 2048,
ssPropulsion = 4096
192 unsigned int OutputIdx;
194 std::vector <FGPropertyValue*> OutputParameters;
195 std::vector <std::string> OutputCaptions;
212 void Debug(
int from)
override;
@ ssMoments
Subsystem: Moments (= 32)
Encapsulates the JSBSim simulation executive.
Abstract class to provide functions generic to all the output directives.
@ ssAeroFunctions
Subsystem: Coefficients (= 256)
double GetRateHz(void) const
Get the output rate in Hz for this output.
Encapsulates the aerodynamic calculations.
Manages the external and/or arbitrary forces and moments.
void Enable(void)
Enables the output generation.
Base class for all scheduled JSBSim models.
eSubSystems
Subsystem types for specifying which will be output in the FDM data logging.
virtual const std::string & GetOutputName(void) const
Get the name identifier to which the output will be directed.
virtual void Print(void)=0
Generate the output.
Models weight, balance and moment of inertia information.
@ ssAtmosphere
Subsystem: Atmosphere (= 64)
void Disable(void)
Disables the output generation.
bool InitModel(void) override
Init the output model according to its configitation.
FGOutputType(FGFDMExec *fdmex)
Constructor (implement the FGModel interface).
@ ssPropagate
Subsystem: Propagate (= 512)
void SetIdx(unsigned int idx)
Set the idx for this output instance.
void SetSubSystems(int subSystems)
Set the activated subsystems for this output instance.
@ ssMassProps
Subsystem: Mass Properties (= 128)
void SetOutputProperties(std::vector< FGPropertyNode_ptr > &outputProperties)
Set the list of properties that should be output for this output instance.
Models an empty, abstract base atmosphere class.
@ ssRates
Subsystem: Body rates (= 4)
@ ssForces
Subsystem: Forces (= 16)
Models the EOM and integration/propagation of state.
@ ssFCS
Subsystem: FCS (= 2048)
@ ssPropulsion
Subsystem: Propulsion (= 4096)
Manages ground reactions modeling.
~FGOutputType() override
Destructor.
Handles the calculation of accelerations.
@ ssAerosurfaces
Subsystem: Aerosurfaces (= 2)
Encapsulates an Aircraft and its systems.
@ ssGroundReactions
Subsystem: Ground Reactions (= 1024)
Encapsulates the Flight Control System (FCS) functionality.
Propulsion management class.
virtual void SetOutputName(const std::string &name)
Overwrites the name identifier under which the output will be logged.
bool Toggle(void)
Toggles the output generation.
@ ssSimulation
Subsystem: Simulation (= 1)
void SetRateHz(double rtHz)
Set the output rate for this output instances.
bool Run(void)
Executes the output directives (implement the FGModel interface).
Encapsulates various uncategorized scheduled functions.
virtual void SetStartNewOutput(void)
Reset the output prior to a restart of the simulation.
Models atmospheric disturbances: winds, gusts, turbulence, downbursts, etc.
bool Load(Element *el) override
Init the output directives from an XML file (implement the FGModel interface).
Encapsulates the Buoyant forces calculations.
@ ssVelocities
Subsystem: Velocities (= 8)