From e48967cb1de18922fb148f05fe56966af917688f Mon Sep 17 00:00:00 2001 From: mfranz Date: Sun, 11 Jun 2006 10:21:10 +0000 Subject: [PATCH] fix another crash on exit by finally converting the rest of unguarded SGPropertyNode to guarded ones. This is also done for JSBSim/JSBSim.hxx, for which JSB had given explicit permission a while ago. I postponed that back then, but now is the time. --- src/AIModel/AIManager.hxx | 22 ++-- src/AIModel/AIMultiplayer.hxx | 2 +- src/AIModel/AIStorm.hxx | 8 +- src/AIModel/submodel.hxx | 40 +++---- src/ATC/AIGAVFRTraffic.hxx | 4 +- src/ATC/AILocalTraffic.hxx | 4 +- src/ATC/AIMgr.hxx | 6 +- src/ATC/ATCmgr.hxx | 8 +- src/ATC/approach.hxx | 40 +++---- src/ATC/atis.hxx | 6 +- src/ATC/tower.hxx | 12 +-- src/Aircraft/controls.hxx | 2 +- src/Autopilot/xmlauto.hxx | 12 +-- src/Environment/environment_ctrl.hxx | 12 +-- src/FDM/ExternalPipe/ExternalPipe.hxx | 2 +- src/FDM/JSBSim/JSBSim.hxx | 68 ++++++------ src/FDM/LaRCsim/LaRCsim.hxx | 6 +- src/FDM/SP/ACMS.hxx | 8 +- src/GUI/layout.hxx | 5 +- src/Input/input.hxx | 4 +- src/Instrumentation/annunciator.hxx | 26 ++--- src/Instrumentation/gps.hxx | 6 +- src/Instrumentation/kr_87.hxx | 10 +- src/Instrumentation/kt_70.hxx | 10 +- src/Instrumentation/marker_beacon.hxx | 16 +-- src/Instrumentation/mk_viii.cxx | 2 +- src/Instrumentation/mk_viii.hxx | 54 +++++----- src/Instrumentation/navradio.hxx | 90 ++++++++-------- src/Main/logger.hxx | 2 +- src/Network/ATC-Inputs.hxx | 10 +- src/Network/ATC-Outputs.hxx | 6 +- src/Network/generic.hxx | 2 +- src/Network/jsclient.hxx | 2 +- src/Network/lfsglass.hxx | 148 +++++++++++++------------- src/Network/opengc.hxx | 148 +++++++++++++------------- src/Scripting/NasalSys.hxx | 2 +- src/Sound/fg_fx.hxx | 4 +- src/Systems/electrical.hxx | 6 +- 38 files changed, 408 insertions(+), 407 deletions(-) diff --git a/src/AIModel/AIManager.hxx b/src/AIModel/AIManager.hxx index 2153111c7..5eaaf464f 100644 --- a/src/AIModel/AIManager.hxx +++ b/src/AIModel/AIManager.hxx @@ -113,17 +113,17 @@ private: int mNumAiTypeModels[FGAIBase::MAX_OBJECTS]; int mNumAiModels; - SGPropertyNode* root; - SGPropertyNode* wind_from_down_node; - SGPropertyNode* user_latitude_node; - SGPropertyNode* user_longitude_node; - SGPropertyNode* user_altitude_node; - SGPropertyNode* user_heading_node; - SGPropertyNode* user_pitch_node; - SGPropertyNode* user_yaw_node; - SGPropertyNode* user_speed_node; - SGPropertyNode* wind_from_east_node ; - SGPropertyNode* wind_from_north_node ; + SGPropertyNode_ptr root; + SGPropertyNode_ptr wind_from_down_node; + SGPropertyNode_ptr user_latitude_node; + SGPropertyNode_ptr user_longitude_node; + SGPropertyNode_ptr user_altitude_node; + SGPropertyNode_ptr user_heading_node; + SGPropertyNode_ptr user_pitch_node; + SGPropertyNode_ptr user_yaw_node; + SGPropertyNode_ptr user_speed_node; + SGPropertyNode_ptr wind_from_east_node ; + SGPropertyNode_ptr wind_from_north_node ; string scenario_filename; diff --git a/src/AIModel/AIMultiplayer.hxx b/src/AIModel/AIMultiplayer.hxx index 3e10f8723..7fec2d057 100755 --- a/src/AIModel/AIMultiplayer.hxx +++ b/src/AIModel/AIMultiplayer.hxx @@ -89,7 +89,7 @@ private: long mLastTimestamp; // Propertiies for tankers - SGPropertyNode* refuel_node; + SGPropertyNode_ptr refuel_node; bool isTanker; bool contact; // set if this tanker is within fuelling range }; diff --git a/src/AIModel/AIStorm.hxx b/src/AIModel/AIStorm.hxx index 9a7409aa0..8d2df2f09 100644 --- a/src/AIModel/AIStorm.hxx +++ b/src/AIModel/AIStorm.hxx @@ -61,16 +61,16 @@ private: double delay; // average time (sec) between lightning flashes int subflashes; // number of subflashes per flash double random_delay; // delay +/- random number - double timer; - SGPropertyNode* flash_node; + double timer; + SGPropertyNode_ptr flash_node; int flashed; // number of subflashes already done this flash bool flashing; // true if currently flashing; int subflash_array[8]; int subflash_index; // turbulence stuff - SGPropertyNode* turb_mag_node; - SGPropertyNode* turb_rate_node; + SGPropertyNode_ptr turb_mag_node; + SGPropertyNode_ptr turb_rate_node; }; diff --git a/src/AIModel/submodel.hxx b/src/AIModel/submodel.hxx index 143f8b74e..c2ca0522a 100644 --- a/src/AIModel/submodel.hxx +++ b/src/AIModel/submodel.hxx @@ -27,9 +27,9 @@ public: typedef struct { - SGPropertyNode* trigger; - SGPropertyNode* prop; - SGPropertyNode* contents_node; + SGPropertyNode_ptr trigger; + SGPropertyNode_ptr prop; + SGPropertyNode_ptr contents_node; string name; string model; @@ -116,23 +116,23 @@ private: double contrail_altitude; - SGPropertyNode* _serviceable_node; - SGPropertyNode* _user_lat_node; - SGPropertyNode* _user_lon_node; - SGPropertyNode* _user_heading_node; - SGPropertyNode* _user_alt_node; - SGPropertyNode* _user_pitch_node; - SGPropertyNode* _user_roll_node; - SGPropertyNode* _user_yaw_node; - SGPropertyNode* _user_alpha_node; - SGPropertyNode* _user_speed_node; - SGPropertyNode* _user_wind_from_east_node; - SGPropertyNode* _user_wind_from_north_node; - SGPropertyNode* _user_speed_down_fps_node; - SGPropertyNode* _user_speed_east_fps_node; - SGPropertyNode* _user_speed_north_fps_node; - SGPropertyNode* _contrail_altitude_node; - SGPropertyNode* _contrail_trigger; + SGPropertyNode_ptr _serviceable_node; + SGPropertyNode_ptr _user_lat_node; + SGPropertyNode_ptr _user_lon_node; + SGPropertyNode_ptr _user_heading_node; + SGPropertyNode_ptr _user_alt_node; + SGPropertyNode_ptr _user_pitch_node; + SGPropertyNode_ptr _user_roll_node; + SGPropertyNode_ptr _user_yaw_node; + SGPropertyNode_ptr _user_alpha_node; + SGPropertyNode_ptr _user_speed_node; + SGPropertyNode_ptr _user_wind_from_east_node; + SGPropertyNode_ptr _user_wind_from_north_node; + SGPropertyNode_ptr _user_speed_down_fps_node; + SGPropertyNode_ptr _user_speed_east_fps_node; + SGPropertyNode_ptr _user_speed_north_fps_node; + SGPropertyNode_ptr _contrail_altitude_node; + SGPropertyNode_ptr _contrail_trigger; FGAIManager* ai; IC_struct IC; diff --git a/src/ATC/AIGAVFRTraffic.hxx b/src/ATC/AIGAVFRTraffic.hxx index 56b296534..9aabd8746 100644 --- a/src/ATC/AIGAVFRTraffic.hxx +++ b/src/ATC/AIGAVFRTraffic.hxx @@ -83,8 +83,8 @@ private: double stall_speed_landing_config; // environment - some of this might get moved into FGAIPlane - SGPropertyNode* wind_from_hdg; //degrees - SGPropertyNode* wind_speed_knots; //knots + SGPropertyNode_ptr wind_from_hdg; //degrees + SGPropertyNode_ptr wind_speed_knots; //knots atc_type changeFreqType; // the service we need to change to diff --git a/src/ATC/AILocalTraffic.hxx b/src/ATC/AILocalTraffic.hxx index d3a5c4cf1..a4e1505f6 100644 --- a/src/ATC/AILocalTraffic.hxx +++ b/src/ATC/AILocalTraffic.hxx @@ -160,8 +160,8 @@ private: bool inAir; // True when off the ground // environment - some of this might get moved into FGAIPlane - SGPropertyNode* wind_from_hdg; //degrees - SGPropertyNode* wind_speed_knots; //knots + SGPropertyNode_ptr wind_from_hdg; //degrees + SGPropertyNode_ptr wind_speed_knots; //knots // Pattern details that (may) change int numInPattern; // Number of planes in the pattern (this might get more complicated if high performance GA aircraft fly a higher pattern eventually) diff --git a/src/ATC/AIMgr.hxx b/src/ATC/AIMgr.hxx index 5dcdba70c..a1e3e6115 100644 --- a/src/ATC/AIMgr.hxx +++ b/src/ATC/AIMgr.hxx @@ -87,9 +87,9 @@ private: double lat; double elev; // Pointers to current users position - SGPropertyNode *lon_node; - SGPropertyNode *lat_node; - SGPropertyNode *elev_node; + SGPropertyNode_ptr lon_node; + SGPropertyNode_ptr lat_node; + SGPropertyNode_ptr elev_node; public: diff --git a/src/ATC/ATCmgr.hxx b/src/ATC/ATCmgr.hxx index 04d53e062..9e8e1f837 100644 --- a/src/ATC/ATCmgr.hxx +++ b/src/ATC/ATCmgr.hxx @@ -110,12 +110,12 @@ private: double comm_freq[2]; // Pointers to users current communication frequencies. - SGPropertyNode* comm_node[2]; + SGPropertyNode_ptr comm_node[2]; // Pointers to current users position - SGPropertyNode* lon_node; - SGPropertyNode* lat_node; - SGPropertyNode* elev_node; + SGPropertyNode_ptr lon_node; + SGPropertyNode_ptr lat_node; + SGPropertyNode_ptr elev_node; // Position of the ATC that the comm radios are tuned to in order to decide // whether transmission will be received. diff --git a/src/ATC/approach.hxx b/src/ATC/approach.hxx index 68317f676..9aec71d01 100644 --- a/src/ATC/approach.hxx +++ b/src/ATC/approach.hxx @@ -122,20 +122,20 @@ class FGApproach : public FGATC { string transmission; bool first; - SGPropertyNode *comm1_node; - SGPropertyNode *comm2_node; - - SGPropertyNode *atcmenu_node; - SGPropertyNode *atcopt0_node; - SGPropertyNode *atcopt1_node; - SGPropertyNode *atcopt2_node; - SGPropertyNode *atcopt3_node; - SGPropertyNode *atcopt4_node; - SGPropertyNode *atcopt5_node; - SGPropertyNode *atcopt6_node; - SGPropertyNode *atcopt7_node; - SGPropertyNode *atcopt8_node; - SGPropertyNode *atcopt9_node; + SGPropertyNode_ptr comm1_node; + SGPropertyNode_ptr comm2_node; + + SGPropertyNode_ptr atcmenu_node; + SGPropertyNode_ptr atcopt0_node; + SGPropertyNode_ptr atcopt1_node; + SGPropertyNode_ptr atcopt2_node; + SGPropertyNode_ptr atcopt3_node; + SGPropertyNode_ptr atcopt4_node; + SGPropertyNode_ptr atcopt5_node; + SGPropertyNode_ptr atcopt6_node; + SGPropertyNode_ptr atcopt7_node; + SGPropertyNode_ptr atcopt8_node; + SGPropertyNode_ptr atcopt9_node; // for failure modeling string trans_ident; // transmitted ident @@ -215,12 +215,12 @@ private: const double &h3); // Pointers to current users position - SGPropertyNode *lon_node; - SGPropertyNode *lat_node; - SGPropertyNode *elev_node; - SGPropertyNode *hdg_node; - SGPropertyNode *speed_node; - SGPropertyNode *etime_node; + SGPropertyNode_ptr lon_node; + SGPropertyNode_ptr lat_node; + SGPropertyNode_ptr elev_node; + SGPropertyNode_ptr hdg_node; + SGPropertyNode_ptr speed_node; + SGPropertyNode_ptr etime_node; //Update the transmission string void UpdateTransmission(void); diff --git a/src/ATC/atis.hxx b/src/ATC/atis.hxx index 3bcf2343a..05835d4a7 100644 --- a/src/ATC/atis.hxx +++ b/src/ATC/atis.hxx @@ -66,9 +66,9 @@ class FGATIS : public FGATC { // or the whereabouts of the aircraft it is transmitting to. However, to ensure consistancy of // operation with the other ATC classes the ATIS class must calculate range to the aircraft in order // to decide whether to render the transmission - hence the users plane details must be stored. - //SGPropertyNode *airplane_lon_node; - //SGPropertyNode *airplane_lat_node; - //SGPropertyNode *airplane_elev_node; + //SGPropertyNode_ptr airplane_lon_node; + //SGPropertyNode_ptr airplane_lat_node; + //SGPropertyNode_ptr airplane_elev_node; public: diff --git a/src/ATC/tower.hxx b/src/ATC/tower.hxx index a1ed67892..562f08ed5 100644 --- a/src/ATC/tower.hxx +++ b/src/ATC/tower.hxx @@ -247,8 +247,8 @@ private: bool departed; // set true when the above needs incrementing with time, false when it doesn't. // environment - need to make sure we're getting the surface winds and not winds aloft. - SGPropertyNode* wind_from_hdg; //degrees - SGPropertyNode* wind_speed_knots; //knots + SGPropertyNode_ptr wind_from_hdg; //degrees + SGPropertyNode_ptr wind_speed_knots; //knots double aptElev; // Airport elevation string activeRwy; // Active runway number - For now we'll disregard multiple / alternate runway operation. @@ -334,10 +334,10 @@ private: bool tower_failed; // tower failed? // Pointers to current users position and orientation - SGPropertyNode* user_lon_node; - SGPropertyNode* user_lat_node; - SGPropertyNode* user_elev_node; - SGPropertyNode* user_hdg_node; + SGPropertyNode_ptr user_lon_node; + SGPropertyNode_ptr user_lat_node; + SGPropertyNode_ptr user_elev_node; + SGPropertyNode_ptr user_hdg_node; // Details of the general traffic flow etc in the circuit double crosswind_leg_pos; // Distance from threshold crosswind leg is being turned to in meters (actual operation - *not* ideal circuit) diff --git a/src/Aircraft/controls.hxx b/src/Aircraft/controls.hxx index e9e5562c7..e53155be2 100644 --- a/src/Aircraft/controls.hxx +++ b/src/Aircraft/controls.hxx @@ -258,7 +258,7 @@ private: int lateral_mode; - SGPropertyNode * auto_coordination; + SGPropertyNode_ptr auto_coordination; public: diff --git a/src/Autopilot/xmlauto.hxx b/src/Autopilot/xmlauto.hxx index d87dc6a65..b4cfdbce4 100644 --- a/src/Autopilot/xmlauto.hxx +++ b/src/Autopilot/xmlauto.hxx @@ -56,14 +56,14 @@ protected: string name; - SGPropertyNode *enable_prop; + SGPropertyNode_ptr enable_prop; string enable_value; bool enabled; - SGPropertyNode *input_prop; - SGPropertyNode *r_n_prop; + SGPropertyNode_ptr input_prop; + SGPropertyNode_ptr r_n_prop; double r_n_value; - vector output_list; + vector output_list; public: @@ -152,7 +152,7 @@ private: // proportional component data bool proportional; double Kp; - SGPropertyNode *offset_prop; + SGPropertyNode_ptr offset_prop; double offset_value; // integral component data @@ -274,7 +274,7 @@ protected: private: bool serviceable; - SGPropertyNode *config_props; + SGPropertyNode_ptr config_props; comp_list components; }; diff --git a/src/Environment/environment_ctrl.hxx b/src/Environment/environment_ctrl.hxx index 29107ed58..ffede337c 100644 --- a/src/Environment/environment_ctrl.hxx +++ b/src/Environment/environment_ctrl.hxx @@ -105,8 +105,8 @@ public: private: - SGPropertyNode * _base_wind_speed_node; - SGPropertyNode * _gust_wind_speed_node; + SGPropertyNode_ptr _base_wind_speed_node; + SGPropertyNode_ptr _gust_wind_speed_node; double _current_wind_speed_kt; double _delta_wind_speed_kt; @@ -179,10 +179,10 @@ private: float search_elapsed; float fetch_elapsed; const FGAirport *last_apt; - SGPropertyNode *proxy_host; - SGPropertyNode *proxy_port; - SGPropertyNode *proxy_auth; - SGPropertyNode *metar_max_age; + SGPropertyNode_ptr proxy_host; + SGPropertyNode_ptr proxy_port; + SGPropertyNode_ptr proxy_auth; + SGPropertyNode_ptr metar_max_age; FGMetarResult fetch_data( const string &icao ); virtual void update_metar_properties( const FGMetar *m ); diff --git a/src/FDM/ExternalPipe/ExternalPipe.hxx b/src/FDM/ExternalPipe/ExternalPipe.hxx index 825066948..d5e03967b 100644 --- a/src/FDM/ExternalPipe/ExternalPipe.hxx +++ b/src/FDM/ExternalPipe/ExternalPipe.hxx @@ -52,7 +52,7 @@ private: double last_cg_offset; vector property_names; - vector nodes; + vector nodes; // Protocol specific init routines void init_binary(); diff --git a/src/FDM/JSBSim/JSBSim.hxx b/src/FDM/JSBSim/JSBSim.hxx index 5bd13816b..3f4d33465 100644 --- a/src/FDM/JSBSim/JSBSim.hxx +++ b/src/FDM/JSBSim/JSBSim.hxx @@ -226,40 +226,40 @@ private: double trim_elev; double trim_throttle; - SGPropertyNode *startup_trim; - SGPropertyNode *trimmed; - SGPropertyNode *pitch_trim; - SGPropertyNode *throttle_trim; - SGPropertyNode *aileron_trim; - SGPropertyNode *rudder_trim; - SGPropertyNode *stall_warning; - - /* SGPropertyNode *elevator_pos_deg; - SGPropertyNode *left_aileron_pos_deg; - SGPropertyNode *right_aileron_pos_deg; - SGPropertyNode *rudder_pos_deg; - SGPropertyNode *flap_pos_deg; */ - - - SGPropertyNode *elevator_pos_pct; - SGPropertyNode *left_aileron_pos_pct; - SGPropertyNode *right_aileron_pos_pct; - SGPropertyNode *rudder_pos_pct; - SGPropertyNode *flap_pos_pct; - SGPropertyNode *speedbrake_pos_pct; - SGPropertyNode *spoilers_pos_pct; - - SGPropertyNode *gear_pos_pct; - - SGPropertyNode *temperature; - SGPropertyNode *pressure; - SGPropertyNode *density; - SGPropertyNode *turbulence_gain; - SGPropertyNode *turbulence_rate; - - SGPropertyNode *wind_from_north; - SGPropertyNode *wind_from_east; - SGPropertyNode *wind_from_down; + SGPropertyNode_ptr startup_trim; + SGPropertyNode_ptr trimmed; + SGPropertyNode_ptr pitch_trim; + SGPropertyNode_ptr throttle_trim; + SGPropertyNode_ptr aileron_trim; + SGPropertyNode_ptr rudder_trim; + SGPropertyNode_ptr stall_warning; + + /* SGPropertyNode_ptr elevator_pos_deg; + SGPropertyNode_ptr left_aileron_pos_deg; + SGPropertyNode_ptr right_aileron_pos_deg; + SGPropertyNode_ptr rudder_pos_deg; + SGPropertyNode_ptr flap_pos_deg; */ + + + SGPropertyNode_ptr elevator_pos_pct; + SGPropertyNode_ptr left_aileron_pos_pct; + SGPropertyNode_ptr right_aileron_pos_pct; + SGPropertyNode_ptr rudder_pos_pct; + SGPropertyNode_ptr flap_pos_pct; + SGPropertyNode_ptr speedbrake_pos_pct; + SGPropertyNode_ptr spoilers_pos_pct; + + SGPropertyNode_ptr gear_pos_pct; + + SGPropertyNode_ptr temperature; + SGPropertyNode_ptr pressure; + SGPropertyNode_ptr density; + SGPropertyNode_ptr turbulence_gain; + SGPropertyNode_ptr turbulence_rate; + + SGPropertyNode_ptr wind_from_north; + SGPropertyNode_ptr wind_from_east; + SGPropertyNode_ptr wind_from_down; void init_gear(void); void update_gear(void); diff --git a/src/FDM/LaRCsim/LaRCsim.hxx b/src/FDM/LaRCsim/LaRCsim.hxx index 45bdd703e..6870d479c 100644 --- a/src/FDM/LaRCsim/LaRCsim.hxx +++ b/src/FDM/LaRCsim/LaRCsim.hxx @@ -41,9 +41,9 @@ private: void set_ls(void); void snap_shot(void); double time_step; - SGPropertyNode *speed_up; - SGPropertyNode *aero; - SGPropertyNode *uiuc_type; + SGPropertyNode_ptr speed_up; + SGPropertyNode_ptr aero; + SGPropertyNode_ptr uiuc_type; public: diff --git a/src/FDM/SP/ACMS.hxx b/src/FDM/SP/ACMS.hxx index 8b538b2fe..e34c9795c 100644 --- a/src/FDM/SP/ACMS.hxx +++ b/src/FDM/SP/ACMS.hxx @@ -42,10 +42,10 @@ public: private: - SGPropertyNode *_alt, *_speed, *_climb_rate; - SGPropertyNode *_pitch, *_roll, *_heading; - SGPropertyNode *_acc_lat, *_acc_lon, *_acc_down; - SGPropertyNode *_temp, *_wow; + SGPropertyNode_ptr _alt, _speed, _climb_rate; + SGPropertyNode_ptr _pitch, _roll, _heading; + SGPropertyNode_ptr _acc_lat, _acc_lon, _acc_down; + SGPropertyNode_ptr _temp, _wow; }; diff --git a/src/GUI/layout.hxx b/src/GUI/layout.hxx index 1819d8b4e..924b4c27f 100644 --- a/src/GUI/layout.hxx +++ b/src/GUI/layout.hxx @@ -1,7 +1,8 @@ #ifndef __LAYOUT_HXX #define __LAYOUT_HXX -class SGPropertyNode; +#include + class puFont; // For the purposes of doing layout management, widgets have a type, @@ -50,7 +51,7 @@ private: void doHVBox(bool doLayout, bool vertical, int* w=0, int* h=0); void doTable(bool doLayout, int* w=0, int* h=0); - SGPropertyNode* _prop; + SGPropertyNode_ptr _prop; }; #endif // __LAYOUT_HXX diff --git a/src/Input/input.hxx b/src/Input/input.hxx index e57bbd776..c8dcec3ac 100644 --- a/src/Input/input.hxx +++ b/src/Input/input.hxx @@ -340,8 +340,8 @@ private: virtual ~mouse (); int x; int y; - SGPropertyNode * mode_node; - SGPropertyNode * mouse_button_nodes[MAX_MOUSE_BUTTONS]; + SGPropertyNode_ptr mode_node; + SGPropertyNode_ptr mouse_button_nodes[MAX_MOUSE_BUTTONS]; int nModes; int current_mode; double timeout; diff --git a/src/Instrumentation/annunciator.hxx b/src/Instrumentation/annunciator.hxx index 2834f8c25..6da4fcc53 100644 --- a/src/Instrumentation/annunciator.hxx +++ b/src/Instrumentation/annunciator.hxx @@ -38,21 +38,21 @@ class Annunciator : public SGSubsystem double timer4; // inputs - SGPropertyNode *_volts; - SGPropertyNode *_vac_l; - SGPropertyNode *_vac_r; - SGPropertyNode *_fuel_l; - SGPropertyNode *_fuel_r; - SGPropertyNode *_oil_px; - SGPropertyNode *_elec_serv; + SGPropertyNode_ptr _volts; + SGPropertyNode_ptr _vac_l; + SGPropertyNode_ptr _vac_r; + SGPropertyNode_ptr _fuel_l; + SGPropertyNode_ptr _fuel_r; + SGPropertyNode_ptr _oil_px; + SGPropertyNode_ptr _elec_serv; // outputs - SGPropertyNode *_ann_volts; // VOLTS (red) - SGPropertyNode *_ann_vac_l; // L VAC (amber) - SGPropertyNode *_ann_vac_r; // VAC R (amber - SGPropertyNode *_ann_fuel_l; // L LOW FUEL (amber) - SGPropertyNode *_ann_fuel_r; // LOW FUEL R (amber) - SGPropertyNode *_ann_oil_px; // OIL PRESS (red) + SGPropertyNode_ptr _ann_volts; // VOLTS (red) + SGPropertyNode_ptr _ann_vac_l; // L VAC (amber) + SGPropertyNode_ptr _ann_vac_r; // VAC R (amber + SGPropertyNode_ptr _ann_fuel_l; // L LOW FUEL (amber) + SGPropertyNode_ptr _ann_fuel_r; // LOW FUEL R (amber) + SGPropertyNode_ptr _ann_oil_px; // OIL PRESS (red) public: diff --git a/src/Instrumentation/gps.hxx b/src/Instrumentation/gps.hxx index fabf4e776..fb068ac7b 100644 --- a/src/Instrumentation/gps.hxx +++ b/src/Instrumentation/gps.hxx @@ -141,9 +141,9 @@ private: SGPropertyNode_ptr _leg_to_flag_node; SGPropertyNode_ptr _alt_deviation_node; - SGPropertyNode *_route; - SGPropertyNode *addWp; - SGPropertyNode *popWp; + SGPropertyNode_ptr _route; + SGPropertyNode_ptr addWp; + SGPropertyNode_ptr popWp; SGRoute *route; diff --git a/src/Instrumentation/kr_87.hxx b/src/Instrumentation/kr_87.hxx index 2be8abc77..1664352ab 100644 --- a/src/Instrumentation/kr_87.hxx +++ b/src/Instrumentation/kr_87.hxx @@ -39,11 +39,11 @@ class FGKR_87 : public SGSubsystem { FGMorse morse; - SGPropertyNode *lon_node; - SGPropertyNode *lat_node; - SGPropertyNode *alt_node; - SGPropertyNode *bus_power; - SGPropertyNode *serviceable; + SGPropertyNode_ptr lon_node; + SGPropertyNode_ptr lat_node; + SGPropertyNode_ptr alt_node; + SGPropertyNode_ptr bus_power; + SGPropertyNode_ptr serviceable; bool need_update; diff --git a/src/Instrumentation/kt_70.hxx b/src/Instrumentation/kt_70.hxx index 7d50a5eee..69d534831 100644 --- a/src/Instrumentation/kt_70.hxx +++ b/src/Instrumentation/kt_70.hxx @@ -39,11 +39,11 @@ class FGKT_70 : public SGSubsystem { - SGPropertyNode *lon_node; - SGPropertyNode *lat_node; - SGPropertyNode *alt_node; - SGPropertyNode *bus_power; - SGPropertyNode *serviceable_node; + SGPropertyNode_ptr lon_node; + SGPropertyNode_ptr lat_node; + SGPropertyNode_ptr alt_node; + SGPropertyNode_ptr bus_power; + SGPropertyNode_ptr serviceable_node; // internal values double r_flash_time; diff --git a/src/Instrumentation/marker_beacon.hxx b/src/Instrumentation/marker_beacon.hxx index c7e95909c..357728237 100644 --- a/src/Instrumentation/marker_beacon.hxx +++ b/src/Instrumentation/marker_beacon.hxx @@ -46,14 +46,14 @@ class FGMarkerBeacon : public SGSubsystem SGInterpTable *high_tbl; // Inputs - SGPropertyNode *lon_node; - SGPropertyNode *lat_node; - SGPropertyNode *alt_node; - SGPropertyNode *bus_power; - SGPropertyNode *power_btn; - SGPropertyNode *audio_btn; - SGPropertyNode *serviceable; - SGPropertyNode *sound_pause; + SGPropertyNode_ptr lon_node; + SGPropertyNode_ptr lat_node; + SGPropertyNode_ptr alt_node; + SGPropertyNode_ptr bus_power; + SGPropertyNode_ptr power_btn; + SGPropertyNode_ptr audio_btn; + SGPropertyNode_ptr serviceable; + SGPropertyNode_ptr sound_pause; bool need_update; diff --git a/src/Instrumentation/mk_viii.cxx b/src/Instrumentation/mk_viii.cxx index 08f6833d4..118d740b7 100755 --- a/src/Instrumentation/mk_viii.cxx +++ b/src/Instrumentation/mk_viii.cxx @@ -235,7 +235,7 @@ MK_VIII::PropertiesHandler::init () void MK_VIII::PropertiesHandler::unbind () { - vector::iterator iter; + vector::iterator iter; for (iter = tied_properties.begin(); iter != tied_properties.end(); iter++) (*iter)->untie(); diff --git a/src/Instrumentation/mk_viii.hxx b/src/Instrumentation/mk_viii.hxx index 763f2d69e..60a3f9458 100755 --- a/src/Instrumentation/mk_viii.hxx +++ b/src/Instrumentation/mk_viii.hxx @@ -181,37 +181,37 @@ class MK_VIII : public SGSubsystem { MK_VIII *mk; - vector tied_properties; + vector tied_properties; public: struct { - SGPropertyNode *ai_caged; - SGPropertyNode *ai_roll; - SGPropertyNode *ai_serviceable; - SGPropertyNode *altimeter_altitude; - SGPropertyNode *altimeter_serviceable; - SGPropertyNode *altitude; - SGPropertyNode *altitude_agl; - SGPropertyNode *asi_serviceable; - SGPropertyNode *asi_speed; - SGPropertyNode *autopilot_heading_lock; - SGPropertyNode *flaps; - SGPropertyNode *gear_down; - SGPropertyNode *latitude; - SGPropertyNode *longitude; - SGPropertyNode *nav0_cdi_serviceable; - SGPropertyNode *nav0_gs_distance; - SGPropertyNode *nav0_gs_needle_deflection; - SGPropertyNode *nav0_gs_serviceable; - SGPropertyNode *nav0_has_gs; - SGPropertyNode *nav0_heading_needle_deflection; - SGPropertyNode *nav0_in_range; - SGPropertyNode *nav0_nav_loc; - SGPropertyNode *nav0_serviceable; - SGPropertyNode *power; - SGPropertyNode *replay_state; - SGPropertyNode *vs; + SGPropertyNode_ptr ai_caged; + SGPropertyNode_ptr ai_roll; + SGPropertyNode_ptr ai_serviceable; + SGPropertyNode_ptr altimeter_altitude; + SGPropertyNode_ptr altimeter_serviceable; + SGPropertyNode_ptr altitude; + SGPropertyNode_ptr altitude_agl; + SGPropertyNode_ptr asi_serviceable; + SGPropertyNode_ptr asi_speed; + SGPropertyNode_ptr autopilot_heading_lock; + SGPropertyNode_ptr flaps; + SGPropertyNode_ptr gear_down; + SGPropertyNode_ptr latitude; + SGPropertyNode_ptr longitude; + SGPropertyNode_ptr nav0_cdi_serviceable; + SGPropertyNode_ptr nav0_gs_distance; + SGPropertyNode_ptr nav0_gs_needle_deflection; + SGPropertyNode_ptr nav0_gs_serviceable; + SGPropertyNode_ptr nav0_has_gs; + SGPropertyNode_ptr nav0_heading_needle_deflection; + SGPropertyNode_ptr nav0_in_range; + SGPropertyNode_ptr nav0_nav_loc; + SGPropertyNode_ptr nav0_serviceable; + SGPropertyNode_ptr power; + SGPropertyNode_ptr replay_state; + SGPropertyNode_ptr vs; } external_properties; inline PropertiesHandler (MK_VIII *device) diff --git a/src/Instrumentation/navradio.hxx b/src/Instrumentation/navradio.hxx index 7eb2817f5..6a07913ab 100644 --- a/src/Instrumentation/navradio.hxx +++ b/src/Instrumentation/navradio.hxx @@ -43,67 +43,67 @@ class FGNavRadio : public SGSubsystem SGInterpTable *low_tbl; SGInterpTable *high_tbl; - SGPropertyNode *lon_node; - SGPropertyNode *lat_node; - SGPropertyNode *alt_node; - SGPropertyNode *bus_power_node; + SGPropertyNode_ptr lon_node; + SGPropertyNode_ptr lat_node; + SGPropertyNode_ptr alt_node; + SGPropertyNode_ptr bus_power_node; // property inputs - SGPropertyNode *is_valid_node; // is station data valid (may be way out + SGPropertyNode_ptr is_valid_node; // is station data valid (may be way out // of range.) - SGPropertyNode *power_btn_node; - SGPropertyNode *freq_node; // primary freq - SGPropertyNode *alt_freq_node; // standby freq - SGPropertyNode *sel_radial_node; // selected radial - SGPropertyNode *vol_btn_node; - SGPropertyNode *ident_btn_node; - SGPropertyNode *audio_btn_node; - SGPropertyNode *nav_serviceable_node; - SGPropertyNode *cdi_serviceable_node; - SGPropertyNode *gs_serviceable_node; - SGPropertyNode *tofrom_serviceable_node; + SGPropertyNode_ptr power_btn_node; + SGPropertyNode_ptr freq_node; // primary freq + SGPropertyNode_ptr alt_freq_node; // standby freq + SGPropertyNode_ptr sel_radial_node; // selected radial + SGPropertyNode_ptr vol_btn_node; + SGPropertyNode_ptr ident_btn_node; + SGPropertyNode_ptr audio_btn_node; + SGPropertyNode_ptr nav_serviceable_node; + SGPropertyNode_ptr cdi_serviceable_node; + SGPropertyNode_ptr gs_serviceable_node; + SGPropertyNode_ptr tofrom_serviceable_node; // property outputs - SGPropertyNode *fmt_freq_node; // formated frequency - SGPropertyNode *fmt_alt_freq_node; // formated alternate frequency - SGPropertyNode *heading_node; // true heading to nav station - SGPropertyNode *radial_node; // current radial we are on (taking + SGPropertyNode_ptr fmt_freq_node; // formated frequency + SGPropertyNode_ptr fmt_alt_freq_node; // formated alternate frequency + SGPropertyNode_ptr heading_node; // true heading to nav station + SGPropertyNode_ptr radial_node; // current radial we are on (taking // into consideration the vor station // alignment which likely doesn't // match the magnetic alignment // exactly.) - SGPropertyNode *recip_radial_node; // radial_node(val) + 180 (for + SGPropertyNode_ptr recip_radial_node; // radial_node(val) + 180 (for // convenience) - SGPropertyNode *target_radial_true_node; + SGPropertyNode_ptr target_radial_true_node; // true heading of selected radial - SGPropertyNode *target_auto_hdg_node; + SGPropertyNode_ptr target_auto_hdg_node; // suggested autopilot heading // to intercept selected radial - SGPropertyNode *time_to_intercept; // estimated time to intecept selected + SGPropertyNode_ptr time_to_intercept; // estimated time to intecept selected // radial at current speed and heading - SGPropertyNode *to_flag_node; - SGPropertyNode *from_flag_node; - SGPropertyNode *inrange_node; - SGPropertyNode *cdi_deflection_node; - SGPropertyNode *cdi_xtrack_error_node; - SGPropertyNode *cdi_xtrack_hdg_err_node; - SGPropertyNode *has_gs_node; - SGPropertyNode *loc_node; - SGPropertyNode *loc_dist_node; - SGPropertyNode *gs_deflection_node; - SGPropertyNode *gs_rate_of_climb_node; - SGPropertyNode *gs_dist_node; - SGPropertyNode *nav_id_node; - SGPropertyNode *id_c1_node; - SGPropertyNode *id_c2_node; - SGPropertyNode *id_c3_node; - SGPropertyNode *id_c4_node; + SGPropertyNode_ptr to_flag_node; + SGPropertyNode_ptr from_flag_node; + SGPropertyNode_ptr inrange_node; + SGPropertyNode_ptr cdi_deflection_node; + SGPropertyNode_ptr cdi_xtrack_error_node; + SGPropertyNode_ptr cdi_xtrack_hdg_err_node; + SGPropertyNode_ptr has_gs_node; + SGPropertyNode_ptr loc_node; + SGPropertyNode_ptr loc_dist_node; + SGPropertyNode_ptr gs_deflection_node; + SGPropertyNode_ptr gs_rate_of_climb_node; + SGPropertyNode_ptr gs_dist_node; + SGPropertyNode_ptr nav_id_node; + SGPropertyNode_ptr id_c1_node; + SGPropertyNode_ptr id_c2_node; + SGPropertyNode_ptr id_c3_node; + SGPropertyNode_ptr id_c4_node; // gps slaving support - SGPropertyNode *nav_slaved_to_gps_node; - SGPropertyNode *gps_cdi_deflection_node; - SGPropertyNode *gps_to_flag_node; - SGPropertyNode *gps_from_flag_node; + SGPropertyNode_ptr nav_slaved_to_gps_node; + SGPropertyNode_ptr gps_cdi_deflection_node; + SGPropertyNode_ptr gps_to_flag_node; + SGPropertyNode_ptr gps_from_flag_node; // internal (private) values diff --git a/src/Main/logger.hxx b/src/Main/logger.hxx index f1098d679..273ccd6b0 100644 --- a/src/Main/logger.hxx +++ b/src/Main/logger.hxx @@ -52,7 +52,7 @@ private: struct Log { Log (); virtual ~Log (); - vector nodes; + vector nodes; ostream * output; long interval_ms; double last_time_ms; diff --git a/src/Network/ATC-Inputs.hxx b/src/Network/ATC-Inputs.hxx index f19923139..ff9d4d29f 100644 --- a/src/Network/ATC-Inputs.hxx +++ b/src/Network/ATC-Inputs.hxx @@ -57,12 +57,12 @@ class FGATCInput { unsigned char radio_switch_data[ATC_RADIO_SWITCH_BYTES]; unsigned char switch_data[ATC_SWITCH_BYTES]; - SGPropertyNode *ignore_flight_controls; - SGPropertyNode *ignore_pedal_controls; + SGPropertyNode_ptr ignore_flight_controls; + SGPropertyNode_ptr ignore_pedal_controls; - SGPropertyNode *analog_in_node; - SGPropertyNode *radio_in_node; - SGPropertyNode *switches_node; + SGPropertyNode_ptr analog_in_node; + SGPropertyNode_ptr radio_in_node; + SGPropertyNode_ptr switches_node; void init_config(); bool do_analog_in(); diff --git a/src/Network/ATC-Outputs.hxx b/src/Network/ATC-Outputs.hxx index 34ab3bcc7..c1572c4e7 100644 --- a/src/Network/ATC-Outputs.hxx +++ b/src/Network/ATC-Outputs.hxx @@ -53,9 +53,9 @@ class FGATCOutput { unsigned char radio_display_data[ATC_RADIO_DISPLAY_BYTES]; - SGPropertyNode *lamps_out_node; - SGPropertyNode *radio_display_node; - SGPropertyNode *steppers_node; + SGPropertyNode_ptr lamps_out_node; + SGPropertyNode_ptr radio_display_node; + SGPropertyNode_ptr steppers_node; void init_config(); bool do_lamps(); diff --git a/src/Network/generic.hxx b/src/Network/generic.hxx index f9eaccf36..d0acb1e98 100644 --- a/src/Network/generic.hxx +++ b/src/Network/generic.hxx @@ -63,7 +63,7 @@ protected: e_type type; double offset; double factor; - SGPropertyNode *prop; + SGPropertyNode_ptr prop; } _serial_prot; private: diff --git a/src/Network/jsclient.hxx b/src/Network/jsclient.hxx index fa7a4a39b..49911cffe 100644 --- a/src/Network/jsclient.hxx +++ b/src/Network/jsclient.hxx @@ -42,7 +42,7 @@ class FGJsClient : public FGProtocol { char buf[256]; int length; double axis[4]; - SGPropertyNode *axisdef[4]; + SGPropertyNode_ptr axisdef[4]; string axisdefstr[4]; bool active; diff --git a/src/Network/lfsglass.hxx b/src/Network/lfsglass.hxx index da1abfca2..6a496f984 100644 --- a/src/Network/lfsglass.hxx +++ b/src/Network/lfsglass.hxx @@ -42,104 +42,104 @@ class FGLFSGlass : public FGProtocol, public FGInterface { int length; // Environment - SGPropertyNode *press_node; - SGPropertyNode *temp_node; - SGPropertyNode *wind_dir_node; - SGPropertyNode *wind_speed_node; - SGPropertyNode *magvar_node; + SGPropertyNode_ptr press_node; + SGPropertyNode_ptr temp_node; + SGPropertyNode_ptr wind_dir_node; + SGPropertyNode_ptr wind_speed_node; + SGPropertyNode_ptr magvar_node; // Position on the Geod - SGPropertyNode *p_latitude; - SGPropertyNode *p_longitude; - SGPropertyNode *p_elev_node; - //SGPropertyNode *p_altitude; - SGPropertyNode *p_altitude_agl; + SGPropertyNode_ptr p_latitude; + SGPropertyNode_ptr p_longitude; + SGPropertyNode_ptr p_elev_node; + //SGPropertyNode_ptr p_altitude; + SGPropertyNode_ptr p_altitude_agl; // Orientation - SGPropertyNode *p_pitch; - SGPropertyNode *p_bank; - SGPropertyNode *p_heading; - SGPropertyNode *p_yaw; - SGPropertyNode *p_yaw_rate; + SGPropertyNode_ptr p_pitch; + SGPropertyNode_ptr p_bank; + SGPropertyNode_ptr p_heading; + SGPropertyNode_ptr p_yaw; + SGPropertyNode_ptr p_yaw_rate; // Flight Parameters - SGPropertyNode *vel_kcas; - SGPropertyNode *p_vvi; - SGPropertyNode *p_mach; + SGPropertyNode_ptr vel_kcas; + SGPropertyNode_ptr p_vvi; + SGPropertyNode_ptr p_mach; // Control surfaces - SGPropertyNode *p_left_aileron; - SGPropertyNode *p_right_aileron; - SGPropertyNode *p_elevator; - SGPropertyNode *p_elevator_trim; - SGPropertyNode *p_rudder; - SGPropertyNode *p_flaps; - SGPropertyNode *p_flaps_cmd; + SGPropertyNode_ptr p_left_aileron; + SGPropertyNode_ptr p_right_aileron; + SGPropertyNode_ptr p_elevator; + SGPropertyNode_ptr p_elevator_trim; + SGPropertyNode_ptr p_rudder; + SGPropertyNode_ptr p_flaps; + SGPropertyNode_ptr p_flaps_cmd; // GEAR System - SGPropertyNode *p_park_brake; + SGPropertyNode_ptr p_park_brake; // Engines - SGPropertyNode *egt0_node; - SGPropertyNode *egt1_node; - SGPropertyNode *egt2_node; - SGPropertyNode *egt3_node; + SGPropertyNode_ptr egt0_node; + SGPropertyNode_ptr egt1_node; + SGPropertyNode_ptr egt2_node; + SGPropertyNode_ptr egt3_node; - SGPropertyNode *epr0_node; - SGPropertyNode *epr1_node; - SGPropertyNode *epr2_node; - SGPropertyNode *epr3_node; + SGPropertyNode_ptr epr0_node; + SGPropertyNode_ptr epr1_node; + SGPropertyNode_ptr epr2_node; + SGPropertyNode_ptr epr3_node; - SGPropertyNode *n10_node; - SGPropertyNode *n11_node; - SGPropertyNode *n12_node; - SGPropertyNode *n13_node; + SGPropertyNode_ptr n10_node; + SGPropertyNode_ptr n11_node; + SGPropertyNode_ptr n12_node; + SGPropertyNode_ptr n13_node; - SGPropertyNode *n20_node; - SGPropertyNode *n21_node; - SGPropertyNode *n22_node; - SGPropertyNode *n23_node; + SGPropertyNode_ptr n20_node; + SGPropertyNode_ptr n21_node; + SGPropertyNode_ptr n22_node; + SGPropertyNode_ptr n23_node; - SGPropertyNode *oil_temp0; - SGPropertyNode *oil_temp1; - SGPropertyNode *oil_temp2; - SGPropertyNode *oil_temp3; + SGPropertyNode_ptr oil_temp0; + SGPropertyNode_ptr oil_temp1; + SGPropertyNode_ptr oil_temp2; + SGPropertyNode_ptr oil_temp3; // Fuel System - SGPropertyNode *tank0_node; - SGPropertyNode *tank1_node; - SGPropertyNode *tank2_node; - SGPropertyNode *tank3_node; - SGPropertyNode *tank4_node; - SGPropertyNode *tank5_node; - SGPropertyNode *tank6_node; - SGPropertyNode *tank7_node; + SGPropertyNode_ptr tank0_node; + SGPropertyNode_ptr tank1_node; + SGPropertyNode_ptr tank2_node; + SGPropertyNode_ptr tank3_node; + SGPropertyNode_ptr tank4_node; + SGPropertyNode_ptr tank5_node; + SGPropertyNode_ptr tank6_node; + SGPropertyNode_ptr tank7_node; // Boost pumps; Center tank has only override pumps; boosts are in the // four main wing tanks 1->4 -// SGPropertyNode *boost1_node; -// SGPropertyNode *boost2_node; -// SGPropertyNode *boost3_node; -// SGPropertyNode *boost4_node; -// SGPropertyNode *boost5_node; -// SGPropertyNode *boost6_node; -// SGPropertyNode *boost7_node; -// SGPropertyNode *boost8_node; +// SGPropertyNode_ptr boost1_node; +// SGPropertyNode_ptr boost2_node; +// SGPropertyNode_ptr boost3_node; +// SGPropertyNode_ptr boost4_node; +// SGPropertyNode_ptr boost5_node; +// SGPropertyNode_ptr boost6_node; +// SGPropertyNode_ptr boost7_node; +// SGPropertyNode_ptr boost8_node; // Override pumps -// SGPropertyNode *ovride0_node; -// SGPropertyNode *ovride1_node; -// SGPropertyNode *ovride2_node; -// SGPropertyNode *ovride3_node; -// SGPropertyNode *ovride4_node; -// SGPropertyNode *ovride5_node; +// SGPropertyNode_ptr ovride0_node; +// SGPropertyNode_ptr ovride1_node; +// SGPropertyNode_ptr ovride2_node; +// SGPropertyNode_ptr ovride3_node; +// SGPropertyNode_ptr ovride4_node; +// SGPropertyNode_ptr ovride5_node; // X_Feed valves -// SGPropertyNode *x_feed0_node; -// SGPropertyNode *x_feed1_node; -// SGPropertyNode *x_feed2_node; -// SGPropertyNode *x_feed3_node; +// SGPropertyNode_ptr x_feed0_node; +// SGPropertyNode_ptr x_feed1_node; +// SGPropertyNode_ptr x_feed2_node; +// SGPropertyNode_ptr x_feed3_node; // Aero numbers - SGPropertyNode *p_alphadot; - SGPropertyNode *p_betadot; + SGPropertyNode_ptr p_alphadot; + SGPropertyNode_ptr p_betadot; public: diff --git a/src/Network/opengc.hxx b/src/Network/opengc.hxx index 3194e9dfe..c7d1ac9d5 100644 --- a/src/Network/opengc.hxx +++ b/src/Network/opengc.hxx @@ -42,104 +42,104 @@ class FGOpenGC : public FGProtocol, public FGInterface { int length; // Environment - SGPropertyNode *press_node; - SGPropertyNode *temp_node; - SGPropertyNode *wind_dir_node; - SGPropertyNode *wind_speed_node; - SGPropertyNode *magvar_node; + SGPropertyNode_ptr press_node; + SGPropertyNode_ptr temp_node; + SGPropertyNode_ptr wind_dir_node; + SGPropertyNode_ptr wind_speed_node; + SGPropertyNode_ptr magvar_node; // Position on the Geod - SGPropertyNode *p_latitude; - SGPropertyNode *p_longitude; - SGPropertyNode *p_elev_node; - //SGPropertyNode *p_altitude; - SGPropertyNode *p_altitude_agl; + SGPropertyNode_ptr p_latitude; + SGPropertyNode_ptr p_longitude; + SGPropertyNode_ptr p_elev_node; + //SGPropertyNode_ptr p_altitude; + SGPropertyNode_ptr p_altitude_agl; // Orientation - SGPropertyNode *p_pitch; - SGPropertyNode *p_bank; - SGPropertyNode *p_heading; - SGPropertyNode *p_yaw; - SGPropertyNode *p_yaw_rate; + SGPropertyNode_ptr p_pitch; + SGPropertyNode_ptr p_bank; + SGPropertyNode_ptr p_heading; + SGPropertyNode_ptr p_yaw; + SGPropertyNode_ptr p_yaw_rate; // Flight Parameters - SGPropertyNode *vel_kcas; - SGPropertyNode *p_vvi; - SGPropertyNode *p_mach; + SGPropertyNode_ptr vel_kcas; + SGPropertyNode_ptr p_vvi; + SGPropertyNode_ptr p_mach; // Control surfaces - SGPropertyNode *p_left_aileron; - SGPropertyNode *p_right_aileron; - SGPropertyNode *p_elevator; - SGPropertyNode *p_elevator_trim; - SGPropertyNode *p_rudder; - SGPropertyNode *p_flaps; - SGPropertyNode *p_flaps_cmd; + SGPropertyNode_ptr p_left_aileron; + SGPropertyNode_ptr p_right_aileron; + SGPropertyNode_ptr p_elevator; + SGPropertyNode_ptr p_elevator_trim; + SGPropertyNode_ptr p_rudder; + SGPropertyNode_ptr p_flaps; + SGPropertyNode_ptr p_flaps_cmd; // GEAR System - SGPropertyNode *p_park_brake; + SGPropertyNode_ptr p_park_brake; // Engines - SGPropertyNode *egt0_node; - SGPropertyNode *egt1_node; - SGPropertyNode *egt2_node; - SGPropertyNode *egt3_node; + SGPropertyNode_ptr egt0_node; + SGPropertyNode_ptr egt1_node; + SGPropertyNode_ptr egt2_node; + SGPropertyNode_ptr egt3_node; - SGPropertyNode *epr0_node; - SGPropertyNode *epr1_node; - SGPropertyNode *epr2_node; - SGPropertyNode *epr3_node; + SGPropertyNode_ptr epr0_node; + SGPropertyNode_ptr epr1_node; + SGPropertyNode_ptr epr2_node; + SGPropertyNode_ptr epr3_node; - SGPropertyNode *n10_node; - SGPropertyNode *n11_node; - SGPropertyNode *n12_node; - SGPropertyNode *n13_node; + SGPropertyNode_ptr n10_node; + SGPropertyNode_ptr n11_node; + SGPropertyNode_ptr n12_node; + SGPropertyNode_ptr n13_node; - SGPropertyNode *n20_node; - SGPropertyNode *n21_node; - SGPropertyNode *n22_node; - SGPropertyNode *n23_node; + SGPropertyNode_ptr n20_node; + SGPropertyNode_ptr n21_node; + SGPropertyNode_ptr n22_node; + SGPropertyNode_ptr n23_node; - SGPropertyNode *oil_temp0; - SGPropertyNode *oil_temp1; - SGPropertyNode *oil_temp2; - SGPropertyNode *oil_temp3; + SGPropertyNode_ptr oil_temp0; + SGPropertyNode_ptr oil_temp1; + SGPropertyNode_ptr oil_temp2; + SGPropertyNode_ptr oil_temp3; // Fuel System - SGPropertyNode *tank0_node; - SGPropertyNode *tank1_node; - SGPropertyNode *tank2_node; - SGPropertyNode *tank3_node; - SGPropertyNode *tank4_node; - SGPropertyNode *tank5_node; - SGPropertyNode *tank6_node; - SGPropertyNode *tank7_node; + SGPropertyNode_ptr tank0_node; + SGPropertyNode_ptr tank1_node; + SGPropertyNode_ptr tank2_node; + SGPropertyNode_ptr tank3_node; + SGPropertyNode_ptr tank4_node; + SGPropertyNode_ptr tank5_node; + SGPropertyNode_ptr tank6_node; + SGPropertyNode_ptr tank7_node; // Boost pumps; Center tank has only override pumps; boosts are in the // four main wing tanks 1->4 -// SGPropertyNode *boost1_node; -// SGPropertyNode *boost2_node; -// SGPropertyNode *boost3_node; -// SGPropertyNode *boost4_node; -// SGPropertyNode *boost5_node; -// SGPropertyNode *boost6_node; -// SGPropertyNode *boost7_node; -// SGPropertyNode *boost8_node; +// SGPropertyNode_ptr boost1_node; +// SGPropertyNode_ptr boost2_node; +// SGPropertyNode_ptr boost3_node; +// SGPropertyNode_ptr boost4_node; +// SGPropertyNode_ptr boost5_node; +// SGPropertyNode_ptr boost6_node; +// SGPropertyNode_ptr boost7_node; +// SGPropertyNode_ptr boost8_node; // Override pumps -// SGPropertyNode *ovride0_node; -// SGPropertyNode *ovride1_node; -// SGPropertyNode *ovride2_node; -// SGPropertyNode *ovride3_node; -// SGPropertyNode *ovride4_node; -// SGPropertyNode *ovride5_node; +// SGPropertyNode_ptr ovride0_node; +// SGPropertyNode_ptr ovride1_node; +// SGPropertyNode_ptr ovride2_node; +// SGPropertyNode_ptr ovride3_node; +// SGPropertyNode_ptr ovride4_node; +// SGPropertyNode_ptr ovride5_node; // X_Feed valves -// SGPropertyNode *x_feed0_node; -// SGPropertyNode *x_feed1_node; -// SGPropertyNode *x_feed2_node; -// SGPropertyNode *x_feed3_node; +// SGPropertyNode_ptr x_feed0_node; +// SGPropertyNode_ptr x_feed1_node; +// SGPropertyNode_ptr x_feed2_node; +// SGPropertyNode_ptr x_feed3_node; // Aero numbers - SGPropertyNode *p_alphadot; - SGPropertyNode *p_betadot; + SGPropertyNode_ptr p_alphadot; + SGPropertyNode_ptr p_betadot; public: diff --git a/src/Scripting/NasalSys.hxx b/src/Scripting/NasalSys.hxx index 7324a23b7..ca7d9f2ea 100644 --- a/src/Scripting/NasalSys.hxx +++ b/src/Scripting/NasalSys.hxx @@ -96,7 +96,7 @@ private: naContext _context; naRef _globals; - SGPropertyNode* _cmdArg; + SGPropertyNode_ptr _cmdArg; int _nextGCKey; naRef _gcHash; diff --git a/src/Sound/fg_fx.hxx b/src/Sound/fg_fx.hxx index e80c7d4c6..3bfa58c35 100644 --- a/src/Sound/fg_fx.hxx +++ b/src/Sound/fg_fx.hxx @@ -82,8 +82,8 @@ private: bool last_pause; double last_volume; - SGPropertyNode *_pause; - SGPropertyNode *_volume; + SGPropertyNode_ptr _pause; + SGPropertyNode_ptr _volume; }; diff --git a/src/Systems/electrical.hxx b/src/Systems/electrical.hxx index eaba350cc..613e42268 100644 --- a/src/Systems/electrical.hxx +++ b/src/Systems/electrical.hxx @@ -193,7 +193,7 @@ class FGElectricalSwitch { private: - SGPropertyNode *switch_node; + SGPropertyNode_ptr switch_node; float rating_amps; bool circuit_breaker; @@ -275,8 +275,8 @@ private: comp_list outputs; comp_list connectors; - SGPropertyNode *_volts_out; - SGPropertyNode *_amps_out; + SGPropertyNode_ptr _volts_out; + SGPropertyNode_ptr _amps_out; }; -- 2.39.5