]> git.mxchange.org Git - flightgear.git/blobdiff - src/Environment/terrainsampler.cxx
Reset: changes for SGSubsystem ownership.
[flightgear.git] / src / Environment / terrainsampler.cxx
index 276c8ffb1e1ece01b502b7d1d894aad36daedda7..744b3ef977b484a57d9c7ba63cbd32228d7c4c0c 100644 (file)
 #include <deque>
 
 #include "terrainsampler.hxx"
+
 using simgear::PropertyList;
+using std::deque;
+using std::vector;
+using std::ostringstream;
+using std::string;
 
-#include "tiedpropertylist.hxx"
+#include <simgear/props/tiedpropertylist.hxx>
 
 namespace Environment {
 /**
@@ -93,7 +98,7 @@ private:
     SGPropertyNode_ptr _positionLongitudeNode;
 
     deque<double> _elevations;
-    TiedPropertyList _tiedProperties;
+    simgear::TiedPropertyList _tiedProperties;
 };
 
 AreaSampler::AreaSampler( SGPropertyNode_ptr rootNode ) :
@@ -285,6 +290,7 @@ void AreaSampler::analyse()
         }
     }
 
+/*
     double alt_low_min = 0.0;
     double n_max = 0.0;
     sum = 0.0;
@@ -296,7 +302,7 @@ void AreaSampler::analyse()
             break;
         }
     }
-
+*/
     _altLayered = 0.5 * (_altMin + _altOffset);
 
 #if 0
@@ -315,6 +321,7 @@ public:
     virtual ~TerrainSamplerImplementation ();
     
     virtual void init ();
+    virtual InitStatus incrementalInit ();
     virtual void postinit();
     virtual void reinit ();
     virtual void bind();
@@ -329,7 +336,7 @@ private:
 
     SGPropertyNode_ptr _rootNode;
     bool _enabled;
-    TiedPropertyList _tiedProperties;
+    simgear::TiedPropertyList _tiedProperties;
 };
 
 TerrainSamplerImplementation::TerrainSamplerImplementation( SGPropertyNode_ptr rootNode ) :
@@ -341,6 +348,12 @@ TerrainSamplerImplementation::TerrainSamplerImplementation( SGPropertyNode_ptr r
 TerrainSamplerImplementation::~TerrainSamplerImplementation()
 {
 }
+  
+SGSubsystem::InitStatus TerrainSamplerImplementation::incrementalInit()
+{
+  init();
+  return INIT_DONE;
+}
 
 void TerrainSamplerImplementation::init()
 {
@@ -365,6 +378,8 @@ void TerrainSamplerImplementation::reinit()
         if( subsys == NULL )
             break;
         remove_subsystem( subsystemName );
+        subsys->unbind();
+        delete subsys;
     }
     
     init();