00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifdef HAVE_CONFIG_H
00023 # include <simgear_config.h>
00024 #endif
00025
00026 #include <simgear/scene/model/ModelRegistry.hxx>
00027
00028 #include <osgDB/Registry>
00029 #include <osgDB/FileNameUtils>
00030
00031 #include "TileEntry.hxx"
00032 #include "ReaderWriterSTG.hxx"
00033
00034 using namespace simgear;
00035
00036 ReaderWriterSTG::ReaderWriterSTG()
00037 {
00038 supportsExtension("stg", "SimGear stg database format");
00039 }
00040
00041 ReaderWriterSTG::~ReaderWriterSTG()
00042 {
00043 }
00044
00045 const char* ReaderWriterSTG::className() const
00046 {
00047 return "STG Database reader";
00048 }
00049
00050
00051 #ifdef SLOW_PAGER
00052 #include <unistd.h>
00053 #endif
00054
00055 osgDB::ReaderWriter::ReadResult
00056 ReaderWriterSTG::readNode(const std::string& fileName,
00057 const osgDB::ReaderWriter::Options* options) const
00058 {
00059 osg::Node* result = TileEntry::loadTileByFileName(fileName, options);
00060
00061 #ifdef SLOW_PAGER
00062 sleep(5);
00063 #endif
00064 if (result)
00065 return result;
00066 else
00067 return ReadResult::FILE_NOT_HANDLED;
00068 }
00069