]> git.mxchange.org Git - simgear.git/commitdiff
Don't include <iostream> and "using" declarations in header files
authortimoore <timoore>
Mon, 2 Jun 2008 20:21:27 +0000 (20:21 +0000)
committertimoore <timoore>
Mon, 2 Jun 2008 20:21:27 +0000 (20:21 +0000)
<iostream> sucks in expensive initialization of the standard streams
and isn't appropriate in a header file. Use <istream> and <ostream>
instead.

using declarations should never appear at global scope in a header
file; source files get to decide what they want to use in their
namespace.

21 files changed:
simgear/bucket/newbucket.hxx
simgear/debug/logstream.cxx
simgear/debug/logstream.hxx
simgear/io/sg_binobj.cxx
simgear/io/tcp_client.cxx
simgear/math/point3d.hxx
simgear/misc/sgstream.cxx
simgear/misc/sgstream.hxx
simgear/misc/zfstream.cxx
simgear/misc/zfstream.hxx
simgear/props/props.cxx
simgear/props/props.hxx
simgear/props/props_io.cxx
simgear/props/props_io.hxx
simgear/props/props_test.cxx
simgear/scene/material/matmodel.hxx
simgear/scene/model/shadanim.cxx
simgear/scene/tgdb/TileEntry.cxx
simgear/sound/xmlsound.cxx
simgear/sound/xmlsound.hxx
simgear/structure/SGSmplhist.hxx

index 9609138c5d6671eae108ae205d1e4253de864efa..6e9bdd24329c5cd3247c45f98e2969ec207231ee 100644 (file)
 #include <simgear/constants.h>
 #include <simgear/math/SGMath.hxx>
 
-#ifdef SG_HAVE_STD_INCLUDES
-#  include <cmath>
-#  include <cstdio> // sprintf()
-#else
-#  include <math.h>
-#  include <stdio.h> // sprintf()
-#endif
-
-#include STL_IOSTREAM
-
-// I don't understand ... <math.h> or <cmath> should be included
-// already depending on how you defined SG_HAVE_STD_INCLUDES, but I
-// can go ahead and add this -- CLO
-#ifdef __MWERKS__
-SG_USING_STD(sprintf);
-SG_USING_STD(fabs);
-#endif
-
-#include STL_STRING
-
-SG_USING_STD(string);
-SG_USING_STD(ostream);
-
+#include <cmath>
+#include <cstdio> // sprintf()
+#include <ostream>
+#include <string>
 
 /**
  * standard size of a bucket in degrees (1/8 of a degree)
@@ -210,18 +191,19 @@ public:
      * string form.
      * @return tile index in string form
      */
-    inline string gen_index_str() const {
+    inline std::string gen_index_str() const {
        char tmp[20];
-       sprintf(tmp, "%ld", 
-                (((long)lon + 180) << 14) + ((lat + 90) << 6) + (y << 3) + x);
-       return (string)tmp;
+       std::sprintf(tmp, "%ld", 
+                     (((long)lon + 180) << 14) + ((lat + 90) << 6)
+                     + (y << 3) + x);
+       return (std::string)tmp;
     }
 
     /**
      * Build the base path name for this bucket.
      * @return base path in string form
      */
-    string gen_base_path() const;
+    std::string gen_base_path() const;
 
     /**
      * @return the center lon of a tile.
@@ -306,7 +288,7 @@ public:
 
     // friends
 
-    friend ostream& operator<< ( ostream&, const SGBucket& );
+    friend std::ostream& operator<< ( std::ostream&, const SGBucket& );
     friend bool operator== ( const SGBucket&, const SGBucket& );
 };
 
@@ -345,8 +327,8 @@ void sgBucketDiff( const SGBucket& b1, const SGBucket& b2, int *dx, int *dy );
  * @param out output stream
  * @param b bucket
  */
-inline ostream&
-operator<< ( ostream& out, const SGBucket& b )
+inline std::ostream&
+operator<< ( std::ostream& out, const SGBucket& b )
 {
     return out << b.lon << ":" << b.x << ", " << b.lat << ":" << b.y;
 }
index 0a360941dcf0a63965a66114e6df48315306b04f..28afbd26c313b601e6e25282fe3478df10453c9c 100644 (file)
 //
 // $Id$
 
+#include <iostream>
+
 #include "logstream.hxx"
 
-logstream *global_logstream = NULL;
+logstream *logstream::global_logstream = 0;
 
 bool            logbuf::logging_enabled = true;
 #ifdef _MSC_VER
@@ -90,3 +92,22 @@ logstream::setLogLevels( sgDebugClass c, sgDebugPriority p )
     logbuf::set_log_level( c, p );
 }
 
+void
+logstream::initGlobalLogstream()
+{
+    // Force initialization of cerr.
+    static std::ios_base::Init initializer;
+    // XXX Is the following still necessary?
+#ifdef __APPLE__
+    /**
+     * There appears to be a bug in the C++ runtime in Mac OS X that
+     * will crash if certain funtions are called (in this case
+     * cerr.rdbuf()) during static initialization of a class. This
+     * print statement is hack to kick the library in the pants so it
+     * won't crash when cerr.rdbuf() is first called -DW 
+     **/
+    std::cout << "Using Mac OS X hack for initializing C++ stdio..."
+              << std::endl;
+#endif
+    global_logstream = new logstream(std::cerr);
+}
index c4ea7834538ca3db47421f826abf66c8c6142e69..a9dafa6d6d323b87e841be3c035c1a4b56e1413e 100644 (file)
@@ -33,7 +33,7 @@
 
 #ifdef SG_HAVE_STD_INCLUDES
 # include <streambuf>
-# include <iostream>
+# include <ostream>
 #else
 # include <iostream.h>
 # include <simgear/sg_traits.hxx>
@@ -43,9 +43,6 @@
 
 SG_USING_STD(streambuf);
 SG_USING_STD(ostream);
-SG_USING_STD(cout);
-SG_USING_STD(cerr);
-SG_USING_STD(endl);
 
 #ifdef __MWERKS__
 SG_USING_STD(iostream);
@@ -67,7 +64,7 @@ SG_USING_STD(iostream);
 #ifdef SG_NEED_STREAMBUF_HACK
 class logbuf : public __streambuf
 #else
-class logbuf : public streambuf
+class logbuf : public std::streambuf
 #endif
 {
 public:
@@ -137,7 +134,7 @@ public:
      * Set the stream buffer
      * @param sb stream buffer
      */
-    void set_sb( streambuf* sb );
+    void set_sb( std::streambuf* sb );
 
 #ifdef _MSC_VER
     static void has_no_console() { has_console = false; }
@@ -155,7 +152,7 @@ protected:
 private:
 
     // The streambuf used for actual output. Defaults to cerr.rdbuf().
-    static streambuf* sbuf;
+    static std::streambuf* sbuf;
 
     static bool logging_enabled;
 #ifdef _MSC_VER
@@ -238,23 +235,23 @@ struct logstream_base
 /**
  * Class to manage the debug logging stream.
  */
-class logstream : private logstream_base, public ostream
+class logstream : private logstream_base, public std::ostream
 {
 public:
     /**
      * The default is to send messages to cerr.
      * @param out output stream
      */
-    logstream( ostream& out )
+    logstream( std::ostream& out )
        // : logstream_base(out.rdbuf()),
        : logstream_base(),
-         ostream(&lbuf) { lbuf.set_sb(out.rdbuf());}
+         std::ostream(&lbuf) { lbuf.set_sb(out.rdbuf());}
 
     /**
      * Set the output stream
      * @param out output stream
      */
-    void set_output( ostream& out ) { lbuf.set_sb( out.rdbuf() ); }
+    void set_output( std::ostream& out ) { lbuf.set_sb( out.rdbuf() ); }
 
     /**
      * Set the global log class and priority level.
@@ -267,18 +264,20 @@ public:
      * Output operator to capture the debug level and priority of a message.
      * @param l log level
      */
-    inline ostream& operator<< ( const loglevel& l );
+    inline std::ostream& operator<< ( const loglevel& l );
+    friend logstream& sglog();
+protected:
+    static logstream *global_logstream;
+    static void initGlobalLogstream();
 };
 
-inline ostream&
+inline std::ostream&
 logstream::operator<< ( const loglevel& l )
 {
     lbuf.set_log_state( l.logClass, l.logPriority );
     return *this;
 }
 
-extern logstream *global_logstream;
-
 /**
  * \relates logstream
  * Return the one and only logstream instance.
@@ -289,22 +288,10 @@ extern logstream *global_logstream;
 inline logstream&
 sglog()
 {
-  if (global_logstream == NULL) {
-
-#ifdef __APPLE__
-    /**
-     * There appears to be a bug in the C++ runtime in Mac OS X that
-     * will crash if certain funtions are called (in this case
-     * cerr.rdbuf()) during static initialization of a class. This
-     * print statement is hack to kick the library in the pants so it
-     * won't crash when cerr.rdbuf() is first called -DW 
-     **/
-    cout << "Using Mac OS X hack for initializing C++ stdio..." << endl;
-#endif    
-    global_logstream = new logstream (cerr);
+  if (logstream::global_logstream == NULL) {
+      logstream::initGlobalLogstream();
   }
-    
-  return *global_logstream;
+  return *logstream::global_logstream;
 }
 
 
@@ -319,7 +306,7 @@ sglog()
 #elif defined( __MWERKS__ )
 # define SG_LOG(C,P,M) ::sglog() << ::loglevel(C,P) << M << std::endl
 #else
-# define SG_LOG(C,P,M) sglog() << loglevel(C,P) << M << endl
+# define SG_LOG(C,P,M) sglog() << loglevel(C,P) << M << std::endl
 #endif
 
 #define SG_STRINGIFY(x) #x
index f0af93b894c725f24b1e1a220f853328decdbd4c..62e3fbe1c5219257edc863b9a07018e952895c33 100644 (file)
@@ -34,6 +34,7 @@
 
 #include <vector>
 #include STL_STRING
+#include <iostream>
 
 #include <simgear/bucket/newbucket.hxx>
 #include <simgear/misc/sg_path.hxx>
@@ -45,6 +46,8 @@
 SG_USING_STD( string );
 SG_USING_STD( vector );
 
+using std::cout;
+using std::endl;
 
 enum sgObjectTypes {
     SG_BOUNDING_SPHERE = 0,
index d1d7f8c7f9edc6e878bdf16a270871469bb2c47d..dc9b171e270ef20467410488116b4d559ffd24e8 100644 (file)
@@ -7,6 +7,8 @@
 #include <unistd.h>
 #endif
 
+#include <iostream>
+
 #include <simgear/debug/logstream.hxx>
 
 #include "sg_socket.hxx"
@@ -49,7 +51,7 @@ TcpClient::process()
 
     sprintf( wbuf, "hello world\n" );
     int length = channel->writestring( wbuf );
-    cout << "writestring returned " << length << "\n";
+    std::cout << "writestring returned " << length << "\n";
 
     return true;
 }
@@ -67,7 +69,7 @@ main()
     TcpClient client( "localhost", "5500" );
     if (!client.open())
     {
-       cout << "client open failed\n";
+        std::cout << "client open failed\n";
        return 0;
     }
 
index 79ce830341b67d26906985ab9bc4d0f107f0a574..48f6e9add0e7d22d0657f3bdf95db6d18db5fcac 100644 (file)
 # define exception c_exception
 #endif
 
-#ifdef SG_HAVE_STD_INCLUDES
-# include <iostream>
-# include <cassert>
-# include <cmath>
-#else
-# include <iostream.h>
-# include <assert.h>
-# include <math.h>
-#endif
+#include <ostream>
+#include <istream>
+#include <cassert>
+#include <cmath>
 
 #include "SGMath.hxx"
 
-// I don't understand ... <math.h> or <cmath> should be included
-// already depending on how you defined SG_HAVE_STD_INCLUDES, but I
-// can go ahead and add this -- CLO
-#ifdef __MWERKS__
-SG_USING_NAMESPACE(std);
-#endif
-
-SG_USING_STD(ostream);
-SG_USING_STD(istream);
-
-
 const double fgPoint3_Epsilon = 0.0000001;
 
 enum {PX, PY, PZ};                 // axes
 
 // Kludge for msvc++ 6.0 - requires forward decls of friend functions.
 class Point3D;
-istream& operator>> ( istream&, Point3D& );
-ostream& operator<< ( ostream&, const Point3D& );
+std::istream& operator>> ( std::istream&, Point3D& );
+std::ostream& operator<< ( std::ostream&, const Point3D& );
 Point3D operator- (const Point3D& p);              // -p1
 bool operator== (const Point3D& a, const Point3D& b);  // p1 == p2?
 
@@ -141,8 +125,8 @@ public:
     // friends
     friend Point3D operator - (const Point3D& p);                  // -p1
     friend bool operator == (const Point3D& a, const Point3D& b);  // p1 == p2?
-    friend istream& operator>> ( istream&, Point3D& );
-    friend ostream& operator<< ( ostream&, const Point3D& );
+    friend std::istream& operator>> ( std::istream&, Point3D& );
+    friend std::ostream& operator<< ( std::ostream&, const Point3D& );
 
     // Special functions
     double distance3D(const Point3D& a) const;        // distance between
@@ -151,8 +135,8 @@ public:
 
 
 // input from stream
-inline istream&
-operator >> ( istream& in, Point3D& p)
+inline std::istream&
+operator >> ( std::istream& in, Point3D& p)
 {
     char c;
 
@@ -183,8 +167,8 @@ operator >> ( istream& in, Point3D& p)
     return in;
 }
 
-inline ostream&
-operator<< ( ostream& out, const Point3D& p )
+inline std::ostream&
+operator<< ( std::ostream& out, const Point3D& p )
 {
     return out << p.n[PX] << ", " << p.n[PY] << ", " << p.n[PZ];
 }
index 4a1e03223347ea446873b65f3084538b95c59f82..484dce73277d6fc34bf1425315f1ab976b186e04 100644 (file)
@@ -33,6 +33,9 @@
 
 #include "sgstream.hxx"
 
+using std::string;
+using std::istream;
+
 sg_gzifstream::sg_gzifstream()
     : istream(&gzbuf)
 {
index b56d8cb26e64336276170fb4e97885e383315f90..aa680d01e60f34d808717289d1035d1ebae4322e 100644 (file)
 
 #include <simgear/misc/zfstream.hxx>
 
-SG_USING_STD(string);
-SG_USING_STD(istream);
-
-
 /**
  * An envelope class for gzifstream.
  */
-class sg_gzifstream : private gzifstream_base, public istream
+class sg_gzifstream : private gzifstream_base, public std::istream
 {
 public:
     /** Default constructor */
@@ -64,7 +60,7 @@ public:
      * @param name name of file
      * @param io_mode file open mode(s) "or'd" together
      */
-    sg_gzifstream( const string& name,
+    sg_gzifstream( const std::string& name,
                   ios_openmode io_mode = ios_in | ios_binary );
 
     /**
@@ -79,7 +75,7 @@ public:
      * @param name name of file
      * @param io_mode file open mode(s) "or'd" together
      */
-    void open( const string& name,
+    void open( const std::string& name,
               ios_openmode io_mode = ios_in|ios_binary );
 
     /**
@@ -108,14 +104,14 @@ private:
  * An istream manipulator that skips to end of line.
  * @param in input stream
  */
-istream& skipeol( istream& in );
+std::istream& skipeol( std::istream& in );
 
 /**
  * \relates sg_gzifstream
  * An istream manipulator that skips over white space.
  * @param in input stream
  */
-istream& skipws( istream& in );
+std::istream& skipws( std::istream& in );
 
 /**
  * \relates sg_gzifstream
@@ -123,7 +119,7 @@ istream& skipws( istream& in );
  * Ignores comments that start with '#'.
  * @param in input stream
  */
-istream& skipcomment( istream& in );
+std::istream& skipcomment( std::istream& in );
 
 
 #endif /* _SGSTREAM_HXX */
index 97865bc8664b03a6895fef7c2bbdd9fd02b8e92b..1d02b4e0e6b758a26be306214cb63b2b2d449412 100644 (file)
@@ -38,7 +38,7 @@
 // Allocate memory for 'get' buffer and zero all buffer pointers.
 //
 gzfilebuf::gzfilebuf()
-    : streambuf(),
+    : std::streambuf(),
       file(NULL),
 #if defined( __MWERKS__ ) || __GNUC__ > 2
       mode(ios_openmode(0)),
@@ -174,10 +174,10 @@ gzfilebuf::close()
 // }
 
 
-streampos
-gzfilebuf::seekoff( streamoff, ios_seekdir, int )
+std::streampos
+gzfilebuf::seekoff( std::streamoff, ios_seekdir, int )
 {
-    return streampos(EOF);
+    return std::streampos(EOF);
 }
 
 gzfilebuf::int_type
index 8e1c16c7edbfd0acd64b183ba2ab8be6e25b9c3d..e4c1ff1f83237088d52ecf49d29c0630719d39c4 100644 (file)
 #  include <streambuf>
 #  include <istream>
 
-#  define ios_openmode ios_base::openmode
-#  define ios_in       ios_base::in
-#  define ios_out      ios_base::out
-#  define ios_app      ios_base::app
-#  define ios_binary   ios_base::binary
+#  define ios_openmode std::ios_base::openmode
+#  define ios_in       std::ios_base::in
+#  define ios_out      std::ios_base::out
+#  define ios_app      std::ios_base::app
+#  define ios_binary   std::ios_base::binary
 
-#  define ios_seekdir  ios_base::seekdir
+#  define ios_seekdir  std::ios_base::seekdir
 
-#  define ios_badbit   ios_base::badbit
-#  define ios_failbit  ios_base::failbit
-
-SG_USING_STD(streambuf);
-SG_USING_STD(ios_base);
-SG_USING_STD(streampos);
-SG_USING_STD(streamoff);
+#  define ios_badbit   std::ios_base::badbit
+#  define ios_failbit  std::ios_base::failbit
 
 #else
 
@@ -88,7 +83,7 @@ SG_USING_STD(streamoff);
 #ifdef SG_NEED_STREAMBUF_HACK
 class gzfilebuf : public __streambuf
 #else
-class gzfilebuf : public streambuf
+class gzfilebuf : public std::streambuf
 #endif
 {
 public:
@@ -132,7 +127,7 @@ public:
     bool is_open() const { return (file != NULL); }
 
     /** @return stream position */
-    virtual streampos seekoff( streamoff off, ios_seekdir way, int which );
+    virtual std::streampos seekoff( std::streamoff off, ios_seekdir way, int which );
 
     /** sync the stream */
     virtual int sync();
@@ -143,7 +138,7 @@ protected:
 #ifndef SG_HAVE_STD_INCLUDES
     virtual int_type overflow( int_type c = traits_type::eof() );
 #else
-    virtual int_type overflow( int_type c = streambuf::traits_type::eof() );
+    virtual int_type overflow( int_type c = std::streambuf::traits_type::eof() );
 #endif
 
 private:
index aa37f1db2083605edab681d550a728bbace844d3..2d19c1eb1ab18ce7feec46d80e88a75bfe0175ab 100644 (file)
@@ -9,38 +9,35 @@
 #include "props.hxx"
 
 #include <algorithm>
+
 #include <sstream>
 #include <stdio.h>
 #include <string.h>
 
 #if PROPS_STANDALONE
-
 #include <iostream>
-using std::cerr;
-using std::endl;
-using std::find;
-using std::sort;
-using std::vector;
-using std::stringstream;
-
 #else
 
 #include <simgear/compiler.h>
 #include <simgear/debug/logstream.hxx>
 
-SG_USING_STD(sort);
-SG_USING_STD(find);
-SG_USING_STD(vector);
-SG_USING_STD(stringstream);
-
 #if ( _MSC_VER == 1200 )
 // MSVC 6 is buggy, and needs something strange here
 SG_USING_STD(vector<SGPropertyNode_ptr>);
 SG_USING_STD(vector<SGPropertyChangeListener *>);
 SG_USING_STD(vector<SGPropertyNode *>);
 #endif
+#endif
 
+#if PROPS_STANDALONE
+using std::cerr;
 #endif
+using std::endl;
+using std::find;
+using std::sort;
+using std::string;
+using std::vector;
+using std::stringstream;
 
 
 \f
index ce58e00ce2e3adc8ea1d0b4ca1a1efa4cd9b2e9b..f9b469fe6aa0e4ab2d60cc2122a6cc336ce07700 100644 (file)
 #endif
 
 #include <vector>
-
-#if PROPS_STANDALONE
-
 #include <string>
-#include <iostream>
-
-using std::string;
-using std::vector;
-using std::istream;
-using std::ostream;
 
+#if PROPS_STANDALONE
 #else
-
 #include <simgear/compiler.h>
 #include <simgear/debug/logstream.hxx>
-#include STL_STRING
-#include STL_IOSTREAM
-SG_USING_STD(string);
-SG_USING_STD(vector);
-SG_USING_STD(istream);
-SG_USING_STD(ostream);
-
 #endif
 
+
+
 #include <simgear/structure/SGReferenced.hxx>
 #include <simgear/structure/SGSharedPtr.hxx>
 
@@ -479,7 +465,7 @@ protected:
   virtual void unregister_property (SGPropertyNode * node);
 
 private:
-  vector<SGPropertyNode *> _properties;
+  std::vector<SGPropertyNode *> _properties;
 };
 
 
@@ -666,12 +652,12 @@ public:
   /**
    * Get a vector of all children with the specified name.
    */
-  vector<SGPropertyNode_ptr> getChildren (const char * name) const;
+  std::vector<SGPropertyNode_ptr> getChildren (const char * name) const;
 
   /**
    * Get a vector of all children with the specified name.
    */
-  vector<SGPropertyNode_ptr> getChildren (const std::string& name) const
+  std::vector<SGPropertyNode_ptr> getChildren (const std::string& name) const
   { return getChildren(name.c_str()); }
 
   /**
@@ -696,14 +682,14 @@ public:
   /**
    * Remove all children with the specified name.
    */
-  vector<SGPropertyNode_ptr> removeChildren (const char * name,
+  std::vector<SGPropertyNode_ptr> removeChildren (const char * name,
                                              bool keep = true);
 
 
   /**
    * Remove all children with the specified name.
    */
-  vector<SGPropertyNode_ptr> removeChildren (const std::string& name,
+  std::vector<SGPropertyNode_ptr> removeChildren (const std::string& name,
                                              bool keep = true)
   { return removeChildren(name.c_str(), keep); }
 
@@ -1422,16 +1408,16 @@ private:
   class hash_table;
 
   int _index;
-  string _name;
-  mutable string _display_name;
+  std::string _name;
+  mutable std::string _display_name;
   /// To avoid cyclic reference counting loops this shall not be a reference
   /// counted pointer
   SGPropertyNode * _parent;
-  vector<SGPropertyNode_ptr> _children;
-  vector<SGPropertyNode_ptr> _removedChildren;
-  vector<hash_table *> _linkedNodes;
-  mutable string _path;
-  mutable string _buffer;
+  std::vector<SGPropertyNode_ptr> _children;
+  std::vector<SGPropertyNode_ptr> _removedChildren;
+  std::vector<hash_table *> _linkedNodes;
+  mutable std::string _path;
+  mutable std::string _buffer;
   hash_table * _path_cache;
   Type _type;
   bool _tied;
@@ -1457,7 +1443,7 @@ private:
     char * string_val;
   } _local_val;
 
-  vector <SGPropertyChangeListener *> * _listeners;
+  std::vector<SGPropertyChangeListener *> * _listeners;
 
 
   /**
@@ -1486,7 +1472,7 @@ private:
       SGPropertyNode * get_value () { return _value; }
       void set_value (SGPropertyNode * value);
     private:
-      string _key;
+      std::string _key;
       SGSharedPtr<SGPropertyNode> _value;
     };
 
index 187f566060fb2f18fae8740a7f8abebcb8325952..d661223784a1b19ca2d217f0787ebdb1e70d1f18 100644 (file)
@@ -38,6 +38,8 @@ SG_USING_STD(string);
 SG_USING_STD(vector);
 SG_USING_STD(map);
 
+using std::endl;
+
 #define DEFAULT_MODE (SGPropertyNode::READ|SGPropertyNode::WRITE)
 
 
index abcefe496f73b6424304ac0df624d101886e1379..34fe33a3499cd895f56f12cc176f378b8f288870 100644 (file)
 #include STL_STRING
 #include <vector>
 #include <map>
-#include STL_IOSTREAM
-
-SG_USING_STD(string);
-SG_USING_STD(vector);
-SG_USING_STD(map);
-SG_USING_STD(istream);
-SG_USING_STD(ostream);
+#include <istream>
+#include <ostream>
 
 /**
  * Read properties from an XML input stream.
  */
-void readProperties (istream &input, SGPropertyNode * start_node,
-                    const string &base = "", int default_mode = 0);
+void readProperties (std::istream &input, SGPropertyNode * start_node,
+                    const std::string &base = "", int default_mode = 0);
 
 
 /**
  * Read properties from an XML file.
  */
-void readProperties (const string &file, SGPropertyNode * start_node,
+void readProperties (const std::string &file, SGPropertyNode * start_node,
                      int default_mode = 0);
 
 
@@ -52,7 +47,7 @@ void readProperties (const char *buf, const int size,
 /**
  * Write properties to an XML output stream.
  */
-void writeProperties (ostream &output, const SGPropertyNode * start_node,
+void writeProperties (std::ostream &output, const SGPropertyNode * start_node,
                      bool write_all = false,
                      SGPropertyNode::Attribute archive_flag = SGPropertyNode::ARCHIVE);
 
@@ -60,7 +55,8 @@ void writeProperties (ostream &output, const SGPropertyNode * start_node,
 /**
  * Write properties to an XML file.
  */
-void writeProperties (const string &file, const SGPropertyNode * start_node,
+void writeProperties (const std::string &file,
+                      const SGPropertyNode * start_node,
                      bool write_all = false,
                      SGPropertyNode::Attribute archive_flag = SGPropertyNode::ARCHIVE);
 
index ab29deee8eda4f6e691dfd231b7c04b8e55d8eab..c525e0b879fc3e2b20b458f2c7603bb9e91559c7 100644 (file)
@@ -311,7 +311,7 @@ test_property_nodes ()
   cout << endl;
 
   cout << "Looking for all /hack[0]/bar children" << endl;
-  vector<SGPropertyNode_ptr> bar = child->getChildren("bar");
+  std::vector<SGPropertyNode_ptr> bar = child->getChildren("bar");
   cout << "There are " << bar.size() << " matches" << endl;
   for (int i = 0; i < (int)bar.size(); i++)
     cout << bar[i]->getName() << '[' << bar[i]->getIndex() << ']' << endl;
@@ -337,7 +337,7 @@ int main (int ac, char ** av)
       readProperties(av[i], &root);
       writeProperties(cout, &root, true);
       cout << endl;
-    } catch (string &message) {
+    } catch (std::string &message) {
       cout << "Aborted with " << message << endl;
     }
   }
index 12ff23dd210d66ee8dff456365db782295808b95..363efec2b1aa0665d9add5eedf08ecdb7dfb7cfb 100644 (file)
@@ -31,6 +31,7 @@
 #include <simgear/compiler.h>
 
 #include STL_STRING      // Standard C++ string library
+#include <vector>
 
 #include <osg/ref_ptr>
 #include <osg/Node>
@@ -42,8 +43,6 @@
 #include <simgear/props/props.hxx>
 #include <simgear/math/sg_random.h>
 
-SG_USING_STD(string);
-
 
 class SGMatModelGroup;
 
@@ -142,8 +141,8 @@ private:
      */
     void load_models( SGPropertyNode *prop_root );
 
-    vector<string> _paths;
-    mutable vector<osg::ref_ptr<osg::Node> > _models;
+    std::vector<std::string> _paths;
+    mutable std::vector<osg::ref_ptr<osg::Node> > _models;
     mutable bool _models_loaded;
     double _coverage_m2;
     double _range_m;
@@ -199,7 +198,7 @@ protected:
 private:
 
     double _range_m;
-    vector<SGSharedPtr<SGMatModel> > _objects;
+    std::vector<SGSharedPtr<SGMatModel> > _objects;
 };
 
 #endif // _SG_MAT_MODEL_HXX 
index f9b747e1795483bd9ff0ce02d63901cb9e0216b7..1eae56de7602523f5bf8016ff4c445ee4f963df3 100644 (file)
@@ -208,7 +208,7 @@ public:
   }
 };
     
-typedef map<osg::ref_ptr<osg::Texture2D>, osg::ref_ptr<osg::StateSet> >
+typedef std::map<osg::ref_ptr<osg::Texture2D>, osg::ref_ptr<osg::StateSet> >
 StateSetMap;
 }
 
index ea0c73e401f0ed68396207dff02cf10c5efe3111..2eb63a110927201a6210d50d491e15196726e1c0 100644 (file)
@@ -27,6 +27,7 @@
 
 #include STL_STRING
 #include <sstream>
+#include <istream>
 
 #include <osg/Array>
 #include <osg/Geometry>
@@ -252,7 +253,8 @@ typedef enum {
 
 // storage class for deferred object processing in TileEntry::load()
 struct Object {
-    Object(object_type t, const string& token, const SGPath& p, istream& in)
+    Object(object_type t, const string& token, const SGPath& p,
+           std::istream& in)
         : type(t), path(p)
     {
         in >> name;
index 7a39d234259e0c98557f32e8e7b73d3b102376ba..18850f84b866a1fc38a7bb7e788be45cc6eb6358 100644 (file)
@@ -128,7 +128,7 @@ SGXmlSound::init(SGPropertyNode *root, SGPropertyNode *node, SGSoundMgr *sndmgr,
    //
    unsigned int i;
    float v = 0.0;
-   vector<SGPropertyNode_ptr> kids = node->getChildren("volume");
+   std::vector<SGPropertyNode_ptr> kids = node->getChildren("volume");
    for (i = 0; (i < kids.size()) && (i < SGXmlSound::MAXPROP); i++) {
       _snd_prop volume = {NULL, NULL, NULL, 1.0, 0.0, 0.0, 0.0, false};
 
index de1be7b627c577937ece12c9f5d7d20fd0050a8a..22dc5c2eeedf3fd877045c3b2da6369145603e7b 100644 (file)
@@ -33,6 +33,8 @@
 # error This library requires C++
 #endif
 
+#include <vector>
+
 #include <simgear/compiler.h>
 #include <simgear/props/condition.hxx>
 
@@ -149,8 +151,8 @@ private:
   double _stopping;    // time after the sound should have stopped.
                        // This is usefull for lost packets in in-trasit mode.
 
-  vector<_snd_prop> _volume;
-  vector<_snd_prop> _pitch;
+  std::vector<_snd_prop> _volume;
+  std::vector<_snd_prop> _pitch;
 
 };
 
index d56d66930422103940d0ff53a43a5011e20c7273..7d9f05d3c6e3f7290dd56b533196053f703f38ee 100644 (file)
@@ -25,12 +25,10 @@ Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 #endif
 #define SampleHistogram_h 1
 
-#include <iostream>
+#include <ostream>
 #include <fstream>
 #include "SGSmplstat.hxx"
 
-using namespace std;
-
 extern const int SampleHistogramMinimum;
 extern const int SampleHistogramMaximum;
 
@@ -56,7 +54,7 @@ public:
 
   double bucketThreshold (int i);
   int inBucket (int i);
-  void printBuckets (ostream &);
+  void printBuckets (std::ostream &);
 
 };