X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FNetwork%2Fopengc.hxx;h=6371e1d0ae98bf91f3e4a2ac0fe313c22cdff95b;hb=5f2fff4ec45a0c20bca076d5b09c433370288f4d;hp=ec4d393c2fabe9b229b1c7787d537eb77cacc4ea;hpb=c19a3369358724761b78182ed043c00b00c15e81;p=flightgear.git diff --git a/src/Network/opengc.hxx b/src/Network/opengc.hxx index ec4d393c2..6371e1d0a 100644 --- a/src/Network/opengc.hxx +++ b/src/Network/opengc.hxx @@ -19,7 +19,7 @@ // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software -// Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. // @@ -28,17 +28,120 @@ #include -#include STL_STRING +#include -#include +#include
#include "protocol.hxx" #include "opengc_data.hxx" -class FGOpenGC : public FGProtocol, public FGInterface { +class FlightProperties; + +class FGOpenGC : public FGProtocol +{ ogcFGData buf; - int length; + FlightProperties* fdm; + + // Environment + 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_ptr p_latitude; + SGPropertyNode_ptr p_longitude; + SGPropertyNode_ptr p_elev_node; + //SGPropertyNode_ptr p_altitude; + SGPropertyNode_ptr p_altitude_agl; + + // Orientation + SGPropertyNode_ptr p_pitch; + SGPropertyNode_ptr p_bank; + SGPropertyNode_ptr p_heading; + SGPropertyNode_ptr p_yaw; + SGPropertyNode_ptr p_yaw_rate; + + // Flight Parameters + SGPropertyNode_ptr vel_kcas; + SGPropertyNode_ptr p_vvi; + SGPropertyNode_ptr p_mach; + + // Control surfaces + 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_ptr p_park_brake; + + // Engines + SGPropertyNode_ptr egt0_node; + SGPropertyNode_ptr egt1_node; + SGPropertyNode_ptr egt2_node; + SGPropertyNode_ptr egt3_node; + + SGPropertyNode_ptr epr0_node; + SGPropertyNode_ptr epr1_node; + SGPropertyNode_ptr epr2_node; + SGPropertyNode_ptr epr3_node; + + SGPropertyNode_ptr n10_node; + SGPropertyNode_ptr n11_node; + SGPropertyNode_ptr n12_node; + SGPropertyNode_ptr n13_node; + + SGPropertyNode_ptr n20_node; + SGPropertyNode_ptr n21_node; + SGPropertyNode_ptr n22_node; + SGPropertyNode_ptr n23_node; + + SGPropertyNode_ptr oil_temp0; + SGPropertyNode_ptr oil_temp1; + SGPropertyNode_ptr oil_temp2; + SGPropertyNode_ptr oil_temp3; + + // Fuel System + 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_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_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_ptr x_feed0_node; +// SGPropertyNode_ptr x_feed1_node; +// SGPropertyNode_ptr x_feed2_node; +// SGPropertyNode_ptr x_feed3_node; + + // Aero numbers + SGPropertyNode_ptr p_alphadot; + SGPropertyNode_ptr p_betadot; public: @@ -54,7 +157,7 @@ public: // close the channel bool close(); - + void collect_data(ogcFGData *data ); }; #endif // _FG_OPENGC_HXX