]> git.mxchange.org Git - simgear.git/blobdiff - simgear/scene/tgdb/SGReaderWriterBTG.cxx
Replace SG_USE_STD() by using std::
[simgear.git] / simgear / scene / tgdb / SGReaderWriterBTG.cxx
index daa7f70e629ea25afd4d9004331dd58b030e4f4e..1ab674fd1664c79b0db2afeb0cff22f855cddf22 100644 (file)
 
 #include <osgDB/FileNameUtils>
 #include <osgDB/Registry>
+
+#include <simgear/scene/model/ModelRegistry.hxx>
+
 #include "SGReaderWriterBTGOptions.hxx"
 #include "SGReaderWriterBTG.hxx"
 #include "obj.hxx"
 
+using namespace simgear;
+
+// SGReaderWriterBTGOptions static value here to avoid an additional,
+// tiny source file.
+
+std::string SGReaderWriterBTGOptions::defaultOptions;
+
 const char* SGReaderWriterBTG::className() const
 {
     return "BTG Database reader";
@@ -49,19 +59,25 @@ SGReaderWriterBTG::readNode(const std::string& fileName,
     SGMaterialLib* matlib = 0;
     bool calcLights = false;
     bool useRandomObjects = false;
+    bool useRandomVegetation = false;
     const SGReaderWriterBTGOptions* btgOptions
         = dynamic_cast<const SGReaderWriterBTGOptions*>(options);
     if (btgOptions) {
         matlib = btgOptions->getMatlib();
         calcLights = btgOptions->getCalcLights();
         useRandomObjects = btgOptions->getUseRandomObjects();
+        useRandomVegetation = btgOptions->getUseRandomVegetation();
     }
     osg::Node* result = SGLoadBTG(fileName, matlib, calcLights,
-                                  useRandomObjects);
+                                  useRandomObjects,
+                                  useRandomVegetation);
     if (result)
         return result;
     else
         return ReadResult::FILE_NOT_HANDLED;
 }
 
-
+namespace
+{
+ModelRegistryCallbackProxy<LoadOnlyCallback> g_btgCallbackProxy("btg");
+}