X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FAIModel%2FAIManager.hxx;h=d08bf17f0a4eebb5dc2f003345edd0f6e771000d;hb=38226af24ec01e8f0a20d7fd73ef838a69f6ef25;hp=a327421ef365082f88f636746c52397d3c410587;hpb=5a73a46cd05f02c8c739aee9b148c8b258049303;p=flightgear.git diff --git a/src/AIModel/AIManager.hxx b/src/AIModel/AIManager.hxx index a327421ef..d08bf17f0 100644 --- a/src/AIModel/AIManager.hxx +++ b/src/AIModel/AIManager.hxx @@ -36,7 +36,7 @@ #include #include -SG_USING_STD(list); +using std::list; class FGAIThermal; @@ -52,7 +52,7 @@ public: ai_list_type ai_list; - inline const list >& get_ai_list() const { + inline const ai_list_type& get_ai_list() const { SG_LOG(SG_GENERAL, SG_DEBUG, "AI Manager: AI model return list size " << ai_list.size()); return ai_list; } @@ -66,7 +66,7 @@ public: void bind(); void unbind(); void update(double dt); - void attach(SGSharedPtr model); + void attach(FGAIBase *model); void destroyObject( int ID ); const FGAIBase *calcCollision(double alt, double lat, double lon, double fuse_range); @@ -80,15 +80,17 @@ public: 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; void processScenario( const string &filename ); - static SGPropertyNode_ptr loadScenarioFile(const std::string& filename); + static SGPropertyNode_ptr loadScenarioFile(const std::string& filename); - static bool getStartPosition(const string& id, const string& pid, - SGGeod& geodPos, double& hdng, SGVec3d& uvw); + static bool getStartPosition(const string& id, const string& pid, + SGGeod& geodPos, double& hdng, SGVec3d& uvw); private: @@ -99,26 +101,29 @@ private: double calcRange(double lat, double lon, double lat2, double lon2)const; SGPropertyNode_ptr root; - SGPropertyNode_ptr wind_from_down_node; + SGPropertyNode_ptr thermal_lift_node; SGPropertyNode_ptr user_latitude_node; SGPropertyNode_ptr user_longitude_node; SGPropertyNode_ptr user_altitude_node; + SGPropertyNode_ptr user_altitude_agl_node; SGPropertyNode_ptr user_heading_node; SGPropertyNode_ptr user_pitch_node; SGPropertyNode_ptr user_yaw_node; + SGPropertyNode_ptr user_roll_node; SGPropertyNode_ptr user_speed_node; SGPropertyNode_ptr wind_from_east_node; SGPropertyNode_ptr wind_from_north_node; - string scenario_filename; - double user_latitude; double user_longitude; double user_altitude; + double user_altitude_agl; double user_heading; double user_pitch; double user_yaw; + double user_roll; double user_speed; + double user_agl; double wind_from_east; double wind_from_north; double _dt;