X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FFDM%2FYASim%2FFGFDM.hpp;h=0d5b43e379e9feee6a1291c4ee9d090bf910dce0;hb=d66903e9ad63b91182ccc25d9bb82f18f8dd98b6;hp=e6503581e0e781af36c1e77c37748cadeb42568d;hpb=91ae7ce82a14de5b999d9630885d0234f2a58b14;p=flightgear.git diff --git a/src/FDM/YASim/FGFDM.hpp b/src/FDM/YASim/FGFDM.hpp index e6503581e..0d5b43e37 100644 --- a/src/FDM/YASim/FGFDM.hpp +++ b/src/FDM/YASim/FGFDM.hpp @@ -27,6 +27,8 @@ public: // XML parsing callback from XMLVisitor virtual void startElement(const char* name, const XMLAttributes &atts); + float getVehicleRadius(void) const { return _vehicle_radius; } + private: struct AxisRec { char* name; int handle; }; struct EngRec { char* prefix; Thruster* eng; }; @@ -47,11 +49,13 @@ private: bool eq(const char* a, const char* b); bool caseeq(const char* a, const char* b); char* dup(const char* s); - int attri(XMLAttributes* atts, char* attr); - int attri(XMLAttributes* atts, char* attr, int def); - float attrf(XMLAttributes* atts, char* attr); - float attrf(XMLAttributes* atts, char* attr, float def); - bool attrb(XMLAttributes* atts, char* attr); + int attri(XMLAttributes* atts, const char* attr); + int attri(XMLAttributes* atts, const char* attr, int def); + float attrf(XMLAttributes* atts, const char* attr); + float attrf(XMLAttributes* atts, const char* attr, float def); + double attrd(XMLAttributes* atts, const char* attr); + double attrd(XMLAttributes* atts, const char* attr, double def); + bool attrb(XMLAttributes* atts, const char* attr); // The core Airplane object we manage. Airplane _airplane; @@ -72,6 +76,9 @@ private: // Output properties for the ControlMap Vector _controlProps; + // Radius of the vehicle, for intersection testing. + float _vehicle_radius; + // Parsing temporaries void* _currObj; bool _cruiseCurr;