34 #ifndef FGOUTPUTTYPE_H 35 #define FGOUTPUTTYPE_H 41 #include "models/FGModel.h" 47 #define ID_OUTPUTTYPE "$Id: FGOutputType.h,v 1.11 2015/08/23 09:43:31 bcoconni Exp $" 65 class FGAccelerations;
67 class FGGroundReactions;
68 class FGExternalReactions;
69 class FGBuoyantForces;
109 void SetIdx(
unsigned int idx);
129 OutputProperties = outputProperties;
163 virtual void Print(
void) = 0;
180 bool Toggle(
void) {enabled = !enabled;
return enabled;}
183 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
200 unsigned int OutputIdx;
202 std::vector <FGPropertyNode_ptr> OutputProperties;
203 std::vector <std::string> OutputCaptions;
220 void Debug(
int from);
Subsystem: Propagate (= 512)
Encapsulates an Aircraft and its systems.
void SetSubSystems(int subSystems)
Set the activated subsystems for this output instance.
Encapsulates the Buoyant forces calculations.
eSubSystems
Subsystem types for specifying which will be output in the FDM data logging.
virtual bool InitModel(void)
Init the output model according to its configitation.
Encapsulates the aerodynamic calculations.
Subsystem: Aerosurfaces (= 2)
Subsystem: Simulation (= 1)
virtual void Print(void)=0
Generate the output.
void SetOutputProperties(std::vector< FGPropertyNode_ptr > &outputProperties)
Set the list of properties that should be output for this output instance.
Subsystem: Velocities (= 8)
bool Toggle(void)
Toggles the output generation.
double GetRateHz(void) const
Get the output rate in Hz for this output.
Models atmospheric disturbances: winds, gusts, turbulence, downbursts, etc.
void SetRateHz(double rtHz)
Set the output rate for this output instances.
void Enable(void)
Enables the output generation.
Models the EOM and integration/propagation of state.
Subsystem: Atmosphere (= 64)
Propulsion management class.
Base class for all scheduled JSBSim models.
virtual bool Load(Element *el)
Init the output directives from an XML file (implement the FGModel interface).
bool Run(void)
Executes the output directives (implement the FGModel interface).
FGOutputType(FGFDMExec *fdmex)
Constructor (implement the FGModel interface).
Subsystem: Moments (= 32)
Models an empty, abstract base atmosphere class.
Abstract class to provide functions generic to all the output directives.
Encapsulates the Flight Control System (FCS) functionality.
virtual void SetOutputName(const std::string &name)
Overwrites the name identifier under which the output will be logged.
Manages ground reactions modeling.
void SetIdx(unsigned int idx)
Set the idx for this output instance.
Handles the calculation of accelerations.
Encapsulates various uncategorized scheduled functions.
Subsystem: Ground Reactions (= 1024)
Subsystem: Mass Properties (= 128)
virtual ~FGOutputType()
Destructor.
Encapsulates the JSBSim simulation executive.
Subsystem: Body rates (= 4)
virtual const std::string & GetOutputName(void) const
Get the name identifier to which the output will be directed.
Subsystem: Coefficients (= 256)
Models weight, balance and moment of inertia information.
Subsystem: Propulsion (= 4096)
virtual void SetStartNewOutput(void)
Reset the output prior to a restart of the simulation.
void Disable(void)
Disables the output generation.
Manages the external and/or arbitrary forces.