// 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; };
struct PropOut { SGPropertyNode* prop; int handle, type; bool left;
float min, max; };
- void setOutputProperties();
+ void setOutputProperties(float dt);
Rotor* parseRotor(XMLAttributes* a, const char* name);
Wing* parseWing(XMLAttributes* a, const char* name);
int parseAxis(const char* name);
int parseOutput(const char* name);
void parseWeight(XMLAttributes* a);
+ void parseTurbineEngine(XMLAttributes* a);
+ void parsePistonEngine(XMLAttributes* a);
void parsePropeller(XMLAttributes* a);
bool eq(const char* a, const char* b);
bool caseeq(const char* a, const char* b);
// Output properties for the ControlMap
Vector _controlProps;
+ // Radius of the vehicle, for intersection testing.
+ float _vehicle_radius;
+
// Parsing temporaries
void* _currObj;
bool _cruiseCurr;