From a251fd35cb3ad3f6b30982f1b74702ca0dec5b67 Mon Sep 17 00:00:00 2001 From: timoore Date: Mon, 2 Jun 2008 21:07:35 +0000 Subject: [PATCH] Include and using declarations as needed. SimGear no longer includes iostream and avoids using declarations in header files, so various fixups are needed. --- src/ATCDCL/ATC.hxx | 50 ++++++++------- src/Autopilot/xmlauto.cxx | 4 ++ src/FDM/ExternalPipe/ExternalPipe.cxx | 3 + .../JSBSim/input_output/FGPropertyManager.h | 25 +++++--- src/FDM/YASim/Rotorpart.cpp | 4 ++ src/GUI/layout-test.cxx | 2 +- src/GUI/new_gui.cxx | 7 +++ src/GUI/new_gui.hxx | 5 +- src/GUI/property_list.cxx | 3 + src/Main/metar_main.cxx | 1 + src/Navaids/awynet.cxx | 4 ++ src/Navaids/awynet.hxx | 62 +++++++++---------- src/Network/ATC-Main.hxx | 1 - src/Network/garmin.cxx | 4 +- src/Network/httpd.cxx | 2 - src/Network/props.cxx | 4 ++ src/Systems/electrical.cxx | 10 ++- 17 files changed, 111 insertions(+), 80 deletions(-) diff --git a/src/ATCDCL/ATC.hxx b/src/ATCDCL/ATC.hxx index 0ea9d9c91..1889a86c2 100644 --- a/src/ATCDCL/ATC.hxx +++ b/src/ATCDCL/ATC.hxx @@ -28,7 +28,9 @@ #include #include -#include STL_IOSTREAM +#include +#include + #include STL_STRING #include "ATCVoice.hxx" @@ -52,7 +54,7 @@ enum plane_type { // This might move or change eventually struct PlaneRec { plane_type type; - string callsign; + std::string callsign; int squawkcode; }; @@ -82,8 +84,8 @@ struct ATCData { unsigned short int freq; //int range; unsigned short int range; - string ident; - string name; + std::string ident; + std::string name; }; // perhaps we could use an FGRunway instead of this. @@ -95,11 +97,11 @@ struct RunwayDetails { double hdg; // true runway heading double length; // In *METERS* double width; // ditto - string rwyID; + std::string rwyID; int patternDirection; // -1 for left, 1 for right }; -ostream& operator << (ostream& os, atc_type atc); +std::ostream& operator << (std::ostream& os, atc_type atc); class FGATC { @@ -117,7 +119,7 @@ public: virtual void ReceiveUserCallback(int code); // Add plane to a stack - virtual void AddPlane(const string& pid); + virtual void AddPlane(const std::string& pid); // Remove plane from stack virtual int RemovePlane(); @@ -129,16 +131,16 @@ public: inline void SetNoDisplay() { _display = false; } // Generate the text of a message from its parameters and the current context. - virtual string GenText(const string& m, int c); + virtual std::string GenText(const std::string& m, int c); // Returns true if OK to transmit on this frequency inline bool GetFreqClear() { return freqClear; } // Indicate that the frequency is in use inline void SetFreqInUse() { freqClear = false; receiving = true; } // Transmission to the ATC is finished and a response is required - void SetResponseReqd(const string& rid); + void SetResponseReqd(const std::string& rid); // Transmission finished - let ATC decide if a response is reqd and clear freq if necessary - void NotifyTransmissionFinished(const string& rid); + void NotifyTransmissionFinished(const std::string& rid); // Transmission finished and no response required inline void ReleaseFreq() { freqClear = true; receiving = false; } // TODO - check that the plane releasing the freq is the right one etc. // The above 3 funcs under development!! @@ -169,10 +171,10 @@ public: inline void set_freq(const int fq) {freq = fq;} inline int get_range() const { return range; } inline void set_range(const int rg) {range = rg;} - inline const string& get_ident() { return ident; } - inline void set_ident(const string& id) { ident = id; } - inline const string& get_name() { return name; } - inline void set_name(const string& nm) { name = nm; } + inline const std::string& get_ident() { return ident; } + inline void set_ident(const std::string& id) { ident = id; } + inline const std::string& get_name() { return name; } + inline void set_name(const std::string& nm) { name = nm; } protected: @@ -180,11 +182,11 @@ protected: // Outputs the transmission either on screen or as audio depending on user preference // The refname is a string to identify this sample to the sound manager // The repeating flag indicates whether the message should be repeated continuously or played once. - void Render(string& msg, const string& refname = "", bool repeating = false); + void Render(std::string& msg, const std::string& refname = "", bool repeating = false); // Cease rendering all transmission from this station. // Requires the sound manager refname if audio, else "". - void NoRender(const string& refname); + void NoRender(const std::string& refname); // Transmit a message when channel becomes free of other dialog void Transmit(int callback_code = 0); @@ -201,8 +203,8 @@ protected: double x, y, z; int freq; int range; - string ident; // Code of the airport its at. - string name; // Name transmitted in the broadcast. + std::string ident; // Code of the airport its at. + std::string name; // Name transmitted in the broadcast. atc_type _type; // Rendering related stuff @@ -211,7 +213,7 @@ protected: bool _voiceOK; // Flag - true if at least one voice has loaded OK FGATCVoice* _vPtr; - string pending_transmission; // derived classes set this string before calling Transmit(...) + std::string pending_transmission; // derived classes set this string before calling Transmit(...) bool freqClear; // Flag to indicate if the frequency is clear of ongoing dialog bool receiving; // Flag to indicate we are receiving a transmission bool responseReqd; // Flag to indicate we should be responding to a request/report @@ -219,7 +221,7 @@ protected: double responseTime; // Time to take from end of request transmission to beginning of response // The idea is that this will be slightly random. double responseCounter; // counter to implement the above - string responseID; // ID of the plane to respond to + std::string responseID; // ID of the plane to respond to bool respond; // Flag to indicate now is the time to respond - ie set following the count down of the response timer. // Derived classes only need monitor this flag, and use the response ID, as long as they call FGATC::Update(...) bool _runReleaseCounter; // A timer for releasing the frequency after giving the message enough time to display @@ -241,8 +243,8 @@ private: double _max_count; }; -inline istream& -operator >> ( istream& fin, ATCData& a ) +inline std::istream& +operator >> ( std::istream& fin, ATCData& a ) { double f; char ch; @@ -280,14 +282,14 @@ operator >> ( istream& fin, ATCData& a ) if(ch != '"') a.name += ch; while(1) { //in >> noskipws - fin.unsetf(ios::skipws); + fin.unsetf(std::ios::skipws); fin >> ch; if((ch == '"') || (ch == 0x0A)) { break; } // we shouldn't need the 0x0A but it makes a nice safely in case someone leaves off the " a.name += ch; } - fin.setf(ios::skipws); + fin.setf(std::ios::skipws); //cout << "Comm name = " << a.name << '\n'; a.freq = (int)(f*100.0 + 0.5); diff --git a/src/Autopilot/xmlauto.cxx b/src/Autopilot/xmlauto.cxx index 7cc108ce2..c18234160 100644 --- a/src/Autopilot/xmlauto.cxx +++ b/src/Autopilot/xmlauto.cxx @@ -24,6 +24,8 @@ # include #endif +#include + #include #include #include @@ -34,6 +36,8 @@ #include "xmlauto.hxx" +using std::cout; +using std::endl; FGPIDController::FGPIDController( SGPropertyNode *node ): debug( false ), diff --git a/src/FDM/ExternalPipe/ExternalPipe.cxx b/src/FDM/ExternalPipe/ExternalPipe.cxx index cba15e622..3ca94de6e 100644 --- a/src/FDM/ExternalPipe/ExternalPipe.cxx +++ b/src/FDM/ExternalPipe/ExternalPipe.cxx @@ -32,6 +32,7 @@ #endif #include // FILE*, fopen(), fread(), fwrite(), et. al. +#include // for cout, endl #include #include // endian tests @@ -44,6 +45,8 @@ #include "ExternalPipe.hxx" +using std::cout; +using std::endl; static const int MAX_BUF = 32768; diff --git a/src/FDM/JSBSim/input_output/FGPropertyManager.h b/src/FDM/JSBSim/input_output/FGPropertyManager.h index 3c5032226..a14501d6e 100644 --- a/src/FDM/JSBSim/input_output/FGPropertyManager.h +++ b/src/FDM/JSBSim/input_output/FGPropertyManager.h @@ -38,8 +38,12 @@ INCLUDES #include #ifdef FGFS # include +# include +# define JSBDEBUG sglog() << loglevel(SG_FLIGHT, SG_ALERT) #else +# include # include "simgear/props/props.hxx" +# define JSBDEBUG std::cout #endif #include "FGJSBBase.h" @@ -54,9 +58,10 @@ DEFINITIONS FORWARD DECLARATIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/ -using namespace std; - namespace JSBSim { + // Yuck - shouldn't be using in header files + using std::string; + using std::endl; /*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% CLASS DOCUMENTATION @@ -513,9 +518,9 @@ class FGPropertyManager : public SGPropertyNode, public FGJSBBase Tie (const string &name, V (*getter)(), void (*setter)(V) = 0, bool useDefault = true) { if (!tie(name.c_str(), SGRawValueFunctions(getter, setter), useDefault)) - cout << "Failed to tie property " << name << " to functions" << endl; + JSBDEBUG << "Failed to tie property " << name << " to functions" << endl; else if (debug_lvl & 0x20) - cout << name << endl; + JSBDEBUG << name << endl; } @@ -541,9 +546,9 @@ class FGPropertyManager : public SGPropertyNode, public FGJSBBase void (*setter)(int, V) = 0, bool useDefault = true) { if (!tie(name.c_str(), SGRawValueFunctionsIndexed(index, getter, setter), useDefault)) - cout << "Failed to tie property " << name << " to indexed functions" << endl; + JSBDEBUG << "Failed to tie property " << name << " to indexed functions" << endl; else if (debug_lvl & 0x20) - cout << name << endl; + JSBDEBUG << name << endl; } @@ -571,9 +576,9 @@ class FGPropertyManager : public SGPropertyNode, public FGJSBBase void (T::*setter)(V) = 0, bool useDefault = true) { if (!tie(name.c_str(), SGRawValueMethods(*obj, getter, setter), useDefault)) - cout << "Failed to tie property " << name << " to object methods" << endl; + JSBDEBUG << "Failed to tie property " << name << " to object methods" << endl; else if (debug_lvl & 0x20) - cout << name << endl; + JSBDEBUG << name << endl; } /** @@ -600,9 +605,9 @@ class FGPropertyManager : public SGPropertyNode, public FGJSBBase void (T::*setter)(int, V) = 0, bool useDefault = true) { if (!tie(name.c_str(), SGRawValueMethodsIndexed(*obj, index, getter, setter), useDefault)) - cout << "Failed to tie property " << name << " to indexed object methods" << endl; + JSBDEBUG << "Failed to tie property " << name << " to indexed object methods" << endl; else if (debug_lvl & 0x20) - cout << name << endl; + JSBDEBUG << name << endl; } }; } diff --git a/src/FDM/YASim/Rotorpart.cpp b/src/FDM/YASim/Rotorpart.cpp index 4114a86e1..873699002 100644 --- a/src/FDM/YASim/Rotorpart.cpp +++ b/src/FDM/YASim/Rotorpart.cpp @@ -1,3 +1,5 @@ +#include + #include #include "Math.hpp" @@ -6,6 +8,8 @@ #include #include namespace yasim { +using std::endl; + const float pi=3.14159; float _help = 0; Rotorpart::Rotorpart() diff --git a/src/GUI/layout-test.cxx b/src/GUI/layout-test.cxx index bbfa45caf..c00634089 100644 --- a/src/GUI/layout-test.cxx +++ b/src/GUI/layout-test.cxx @@ -57,5 +57,5 @@ int main(int argc, char** argv) int pw=0, ph=0; w.calcPrefSize(&pw, &ph); w.layout(0, 0, pw, ph); - writeProperties(cout, &props, true); + writeProperties(std::cout, &props, true); } diff --git a/src/GUI/new_gui.cxx b/src/GUI/new_gui.cxx index ce98f5eb7..9f67a41d3 100644 --- a/src/GUI/new_gui.cxx +++ b/src/GUI/new_gui.cxx @@ -1,4 +1,5 @@ // new_gui.cxx: implementation of XML-configurable GUI support. +#include #include "new_gui.hxx" @@ -352,6 +353,12 @@ NewGUI::setupFont (SGPropertyNode *node) // FGColor class. //////////////////////////////////////////////////////////////////////// +void +FGColor::print() const { + std::cerr << "red=" << _red << ", green=" << _green + << ", blue=" << _blue << ", alpha=" << _alpha << std::endl; +} + bool FGColor::merge(const SGPropertyNode *node) { diff --git a/src/GUI/new_gui.hxx b/src/GUI/new_gui.hxx index 981628af8..674bd73e2 100644 --- a/src/GUI/new_gui.hxx +++ b/src/GUI/new_gui.hxx @@ -264,10 +264,7 @@ public: bool isValid() const { return _red >= 0.0 && _green >= 0.0 && _blue >= 0.0; } - void print() const { - std::cerr << "red=" << _red << ", green=" << _green - << ", blue=" << _blue << ", alpha=" << _alpha << std::endl; - } + void print() const; inline void setRed(float red) { _red = red; } inline void setGreen(float green) { _green = green; } diff --git a/src/GUI/property_list.cxx b/src/GUI/property_list.cxx index 3e1923064..5aa1e3dba 100644 --- a/src/GUI/property_list.cxx +++ b/src/GUI/property_list.cxx @@ -29,8 +29,11 @@ #include #include STL_IOMANIP +#include #include STL_STRING SG_USING_STD(string); +using std::cout; + typedef string stdString; // puObject has a "string" member #include
// fgGetKeyModifiers() diff --git a/src/Main/metar_main.cxx b/src/Main/metar_main.cxx index 40784732e..0857bac5d 100644 --- a/src/Main/metar_main.cxx +++ b/src/Main/metar_main.cxx @@ -22,6 +22,7 @@ #include #include +#include #include #include diff --git a/src/Navaids/awynet.cxx b/src/Navaids/awynet.cxx index 73d3582fc..09a96a883 100755 --- a/src/Navaids/awynet.cxx +++ b/src/Navaids/awynet.cxx @@ -25,6 +25,7 @@ #include #include +#include #include @@ -36,6 +37,9 @@ SG_USING_STD(sort); +using std::cerr; +using std::endl; + /************************************************************************** * FGNode *************************************************************************/ diff --git a/src/Navaids/awynet.hxx b/src/Navaids/awynet.hxx index e0fe2b474..9dd712306 100755 --- a/src/Navaids/awynet.hxx +++ b/src/Navaids/awynet.hxx @@ -25,17 +25,11 @@ #define _AIRWAYNETWORK_HXX_ #include STL_STRING -#include +#include #include #include #include -SG_USING_STD(string); -SG_USING_STD(map); -SG_USING_STD(set); -SG_USING_STD(vector); -SG_USING_STD(fstream); - #include #include @@ -44,10 +38,10 @@ SG_USING_STD(fstream); class FGAirway; // forward reference -typedef vector FGAirwayVector; -typedef vector FGAirwayPointerVector; -typedef vector::iterator FGAirwayVectorIterator; -typedef vector::iterator FGAirwayPointerVectorIterator; +typedef std::vector FGAirwayVector; +typedef std::vector FGAirwayPointerVector; +typedef std::vector::iterator FGAirwayVectorIterator; +typedef std::vector::iterator FGAirwayPointerVectorIterator; /************************************************************************************** * class FGNode @@ -55,7 +49,7 @@ typedef vector::iterator FGAirwayPointerVectorIterator; class FGNode { private: - string ident; + std::string ident; double lat; double lon; int index; @@ -63,32 +57,32 @@ private: public: FGNode(); - FGNode(double lt, double ln, int idx, string id) { lat = lt; lon = ln; index = idx; ident = id;}; + FGNode(double lt, double ln, int idx, std::string id) { lat = lt; lon = ln; index = idx; ident = id;}; void setIndex(int idx) { index = idx;}; void setLatitude (double val) { lat = val;}; void setLongitude(double val) { lon = val;}; - //void setLatitude (const string& val) { lat = processPosition(val); }; - //void setLongitude(const string& val) { lon = processPosition(val); }; + //void setLatitude (const std::string& val) { lat = processPosition(val); }; + //void setLongitude(const std::string& val) { lon = processPosition(val); }; void addAirway(FGAirway *segment) { next.push_back(segment); }; double getLatitude() { return lat;}; double getLongitude(){ return lon;}; int getIndex() { return index; }; - string getIdent() { return ident; }; + std::string getIdent() { return ident; }; FGNode *getAddress() { return this;}; FGAirwayPointerVectorIterator getBeginRoute() { return next.begin(); }; FGAirwayPointerVectorIterator getEndRoute() { return next.end(); }; - bool matches(string ident, double lat, double lon); + bool matches(std::string ident, double lat, double lon); }; -typedef vector FGNodeVector; -typedef vector::iterator FGNodeVectorIterator; +typedef std::vector FGNodeVector; +typedef std::vector::iterator FGNodeVectorIterator; -typedef map < string, FGNode *> node_map; +typedef std::map < std::string, FGNode *> node_map; typedef node_map::iterator node_map_iterator; typedef node_map::const_iterator const_node_map_iterator; @@ -99,8 +93,8 @@ typedef node_map::const_iterator const_node_map_iterator; class FGAirway { private: - string startNode; - string endNode; + std::string startNode; + std::string endNode; double length; FGNode *start; FGNode *end; @@ -108,37 +102,37 @@ private: int type; // 1=low altitude; 2=high altitude airway int base; // base altitude int top; // top altitude - string name; + std::string name; public: FGAirway(); FGAirway(FGNode *, FGNode *, int); void setIndex (int val) { index = val; }; - void setStartNodeRef (string val) { startNode = val; }; - void setEndNodeRef (string val) { endNode = val; }; + void setStartNodeRef (std::string val) { startNode = val; }; + void setEndNodeRef (std::string val) { endNode = val; }; void setStart(node_map *nodes); void setEnd (node_map *nodes); void setType (int tp) { type = tp;}; void setBase (int val) { base = val;}; void setTop (int val) { top = val;}; - void setName (string val) { name = val;}; + void setName (std::string val) { name = val;}; void setTrackDistance(); FGNode * getEnd() { return end;}; double getLength() { if (length == 0) setTrackDistance(); return length; }; int getIndex() { return index; }; - string getName() { return name; }; + std::string getName() { return name; }; }; -typedef vector intVec; -typedef vector::iterator intVecIterator; -typedef vector::const_iterator constIntVecIterator; +typedef std::vector intVec; +typedef std::vector::iterator intVecIterator; +typedef std::vector::const_iterator constIntVecIterator; class FGAirRoute { @@ -158,10 +152,10 @@ public: void add(const FGAirRoute &other); void add(int node) {nodes.push_back(node);}; - friend istream& operator >> (istream& in, FGAirRoute& r); + friend std::istream& operator >> (std::istream& in, FGAirRoute& r); }; -inline istream& operator >> ( istream& in, FGAirRoute& r ) +inline std::istream& operator >> ( std::istream& in, FGAirRoute& r ) { int node; in >> node; @@ -170,8 +164,8 @@ inline istream& operator >> ( istream& in, FGAirRoute& r ) return in; } -typedef vector AirRouteVector; -typedef vector::iterator AirRouteVectorIterator; +typedef std::vector AirRouteVector; +typedef std::vector::iterator AirRouteVectorIterator; /************************************************************************************** * class FGAirwayNetwork diff --git a/src/Network/ATC-Main.hxx b/src/Network/ATC-Main.hxx index 3cb2a05c7..f72bd8da5 100644 --- a/src/Network/ATC-Main.hxx +++ b/src/Network/ATC-Main.hxx @@ -71,7 +71,6 @@ public: { } ~FGATCMain() { - cout << "FGATCMain destructor" << endl; delete input0; delete input1; delete output0; diff --git a/src/Network/garmin.cxx b/src/Network/garmin.cxx index f8fa50a7b..12399b894 100644 --- a/src/Network/garmin.cxx +++ b/src/Network/garmin.cxx @@ -24,6 +24,8 @@ # include "config.h" #endif +#include + #include #include #include @@ -167,7 +169,7 @@ bool FGGarmin::gen_message() { garmin_sentence += gsa; garmin_sentence += "\r\n"; - cout << garmin_sentence; + std::cout << garmin_sentence; length = garmin_sentence.length(); strncpy( buf, garmin_sentence.c_str(), length ); diff --git a/src/Network/httpd.cxx b/src/Network/httpd.cxx index feee746ea..e218c149c 100644 --- a/src/Network/httpd.cxx +++ b/src/Network/httpd.cxx @@ -48,8 +48,6 @@ #include "httpd.hxx" SG_USING_STD(string); -SG_USING_STD(cout); - bool FGHttpd::open() { if ( is_enabled() ) { diff --git a/src/Network/props.cxx b/src/Network/props.cxx index 61ebdcf13..1048a5cc1 100644 --- a/src/Network/props.cxx +++ b/src/Network/props.cxx @@ -35,6 +35,7 @@ #include #include +#include #include
#include
@@ -46,6 +47,9 @@ SG_USING_STD(stringstream); SG_USING_STD(ends); +using std::cout; +using std::endl; + /** * Props connection class. * This class represents a connection to props client. diff --git a/src/Systems/electrical.cxx b/src/Systems/electrical.cxx index 0f0439556..e015487b1 100644 --- a/src/Systems/electrical.cxx +++ b/src/Systems/electrical.cxx @@ -26,6 +26,7 @@ #include #include +#include #include
#include
@@ -453,7 +454,8 @@ void FGElectricalSystem::update (double dt) { " " ); if ( node->apply_load( load, dt ) < 0.0 ) { - cout << "Error drawing more current than available!" << endl; + SG_LOG(SG_ALL, SG_ALERT, + "Error drawing more current than available!"); } } } @@ -472,7 +474,8 @@ void FGElectricalSystem::update (double dt) { " " ); if ( node->apply_load( load, dt ) < 0.0 ) { - cout << "Error drawing more current than available!" << endl; + SG_LOG(SG_ALL, SG_ALERT, + "Error drawing more current than available!"); } } } @@ -492,7 +495,8 @@ void FGElectricalSystem::update (double dt) { // cout << "battery load = " << load << endl; if ( node->apply_load( load, dt ) < 0.0 ) { - cout << "Error drawing more current than available!" << endl; + SG_LOG(SG_ALL, SG_ALERT, + "Error drawing more current than available!"); } } }