X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FModel%2Facmodel.hxx;h=b774874d233c39119ee4097d8244a0bda04ba586;hb=9ab41ea15809c02ba46bf9e6911fbb1aa808b8b1;hp=22401df6100fd29301f166dd80736fb5adc0be79;hpb=cde90e06d576ec5c563cedcf5a7232df33496c8c;p=flightgear.git diff --git a/src/Model/acmodel.hxx b/src/Model/acmodel.hxx index 22401df61..b774874d2 100644 --- a/src/Model/acmodel.hxx +++ b/src/Model/acmodel.hxx @@ -1,4 +1,4 @@ -// model.hxx - manage a 3D aircraft model. +// acmodel.hxx - manage a 3D aircraft model. // Written by David Megginson, started 2002. // // This file is in the Public Domain, and comes with no warranty. @@ -6,23 +6,18 @@ #ifndef __ACMODEL_HXX #define __ACMODEL_HXX 1 -#ifndef __cplusplus -# error This library requires C++ -#endif +#include +#include +#include -#include +#include // for SGSubsystem -SG_USING_STD(string); -SG_USING_STD(vector); -#include +// Don't pull in the headers, since we don't need them here. +class SGModelPlacement; +class FGFX; -#include
- -#include "model.hxx" - - -class FGAircraftModel : public FGSubsystem +class FGAircraftModel : public SGSubsystem { public: @@ -30,15 +25,29 @@ public: virtual ~FGAircraftModel (); virtual void init (); + virtual void reinit (); virtual void bind (); virtual void unbind (); - virtual void update (int dt); + virtual void update (double dt); + virtual SGModelPlacement * get3DModel() { return _aircraft; } + virtual SGVec3d& getVelocity() { return _velocity; } private: - - FG3DModel * _aircraft; - + void deinit (); + + SGModelPlacement * _aircraft; + SGVec3d _velocity; + SGSharedPtr _fx; + + SGPropertyNode_ptr _lon; + SGPropertyNode_ptr _lat; + SGPropertyNode_ptr _alt; + SGPropertyNode_ptr _pitch; + SGPropertyNode_ptr _roll; + SGPropertyNode_ptr _heading; + SGPropertyNode_ptr _speed_n; + SGPropertyNode_ptr _speed_e; + SGPropertyNode_ptr _speed_d; }; #endif // __ACMODEL_HXX -