-
- void* createBallistic( FGAIModelEntity *entity );
- void* createAircraft( FGAIModelEntity *entity, FGAISchedule *ref=0 );
- void* createThermal( FGAIModelEntity *entity );
- void* createStorm( FGAIModelEntity *entity );
- void* createShip( FGAIModelEntity *entity );
- void* createCarrier( FGAIModelEntity *entity );
- void* createStatic( FGAIModelEntity *entity );
-
- void destroyObject( void* ID );
-
- inline double get_user_latitude() { return user_latitude; }
- inline double get_user_longitude() { return user_longitude; }
- inline double get_user_altitude() { return user_altitude; }
- inline double get_user_heading() { return user_heading; }
- inline double get_user_pitch() { return user_pitch; }
- inline double get_user_yaw() { return user_yaw; }
- inline double get_user_speed() {return user_speed; }
-
- inline int getNum( FGAIBase::object_type ot ) {
- return (0 < ot && ot < FGAIBase::MAX_OBJECTS) ? numObjects[ot] : numObjects[0];
- }
+ void updateLOD(SGPropertyNode* node);
+ void attach(FGAIBase *model);
+
+ void destroyObject( int ID );
+ const FGAIBase *calcCollision(double alt, double lat, double lon, double fuse_range);
+
+ inline double get_user_latitude() const { return user_latitude; }
+ inline double get_user_longitude() const { return user_longitude; }
+ inline double get_user_altitude() const { return user_altitude; }
+ inline double get_user_heading() const { return user_heading; }
+ inline double get_user_pitch() const { return user_pitch; }
+ inline double get_user_yaw() const { return user_yaw; }
+ inline double get_user_speed() const {return user_speed; }
+ inline double get_wind_from_east() const {return wind_from_east; }
+ inline double get_wind_from_north() const {return wind_from_north; }
+ inline double get_user_roll() const { return user_roll; }
+ inline double get_user_agl() const { return user_altitude_agl; }
+
+ int getNumAiObjects(void) const;