osgDB/Registry
Go to the documentation of this file.
/* -*-c++-*- OpenSceneGraph - Copyright (C) 1998-2006 Robert Osfield
*
* This library is open source and may be redistributed and/or modified under
* the terms of the OpenSceneGraph Public License (OSGPL) version 0.0 or
* (at your option) any later version. The full license is in LICENSE file
* included with this distribution, and on the openscenegraph.org website.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* OpenSceneGraph Public License for more details.
*/
#ifndef OSGDB_REGISTRY
#define OSGDB_REGISTRY 1
#include <OpenThreads/ReentrantMutex>
#include <osg/ref_ptr>
#include <osg/ArgumentParser>
#include <osg/KdTree>
#include <osgDB/DynamicLibrary>
#include <osgDB/ReaderWriter>
#include <osgDB/Options>
#include <osgDB/DotOsgWrapper>
#include <osgDB/ObjectWrapper>
#include <osgDB/FileCache>
#include <osgDB/ObjectCache>
#include <osgDB/SharedStateManager>
#include <osgDB/ImageProcessor>
#include <vector>
#include <map>
#include <string>
extern "C"
{
typedef void (* CPluginFunction) (void);
}
namespace osgDB {
class OSGDB_EXPORT Registry : public osg::Referenced
{
public:
static Registry* instance(bool erase = false);
void readCommandLine(osg::ArgumentParser& commandLine);
void addFileExtensionAlias(const std::string mapExt, const std::string toExt);
bool readPluginAliasConfigurationFile( const std::string& file );
typedef std::map< std::string, std::string> MimeTypeExtensionMap;
void addMimeTypeExtensionMapping(const std::string fromMimeType, const std::string toExt);
MimeTypeExtensionMap& getMimeTypeExtensionMap() { return _mimeTypeExtMap; }
const MimeTypeExtensionMap& getMimeTypeExtensionMap() const { return _mimeTypeExtMap; }
void addReaderWriter(ReaderWriter* rw);
void removeReaderWriter(ReaderWriter* rw);
void addImageProcessor(ImageProcessor* ip);
void removeImageProcessor(ImageProcessor* ip);
std::string createLibraryNameForFile(const std::string& fileName);
std::string createLibraryNameForExtension(const std::string& ext);
std::string createLibraryNameForNodeKit(const std::string& name);
enum LoadStatus {
NOT_LOADED = 0,
PREVIOUSLY_LOADED,
LOADED
};
LoadStatus loadLibrary(const std::string& fileName);
bool closeLibrary(const std::string& fileName);
void closeAllLibraries();
typedef std::vector< osg::ref_ptr<ReaderWriter> > ReaderWriterList;
ReaderWriter* getReaderWriterForExtension(const std::string& ext);
ReaderWriter* getReaderWriterForMimeType(const std::string& mimeType);
ReaderWriterList& getReaderWriterList() { return _rwList; }
const ReaderWriterList& getReaderWriterList() const { return _rwList; }
void getReaderWriterListForProtocol(const std::string& protocol, ReaderWriterList& results) const;
ReaderWriter* getReaderWriterForProtocolAndExtension(const std::string& protocol, const std::string& extension);
typedef std::vector< osg::ref_ptr<ImageProcessor> > ImageProcessorList;
ImageProcessor* getImageProcessor();
ImageProcessor* getImageProcessorForExtension(const std::string& ext);
ImageProcessorList& getImageProcessorList() { return _ipList; }
const ImageProcessorList& getImageProcessorList() const { return _ipList; }
typedef class osgDB::FindFileCallback FindFileCallback;
typedef class osgDB::ReadFileCallback ReadFileCallback;
typedef class osgDB::WriteFileCallback WriteFileCallback;
typedef class osgDB::FileLocationCallback FileLocationCallback;
void setFindFileCallback( FindFileCallback* cb) { _findFileCallback = cb; }
FindFileCallback* getFindFileCallback() { return _findFileCallback.get(); }
const FindFileCallback* getFindFileCallback() const { return _findFileCallback.get(); }
std::string findDataFile(const std::string& fileName, const Options* options, CaseSensitivity caseSensitivity)
{
if (options && options->getFindFileCallback()) return options->getFindFileCallback()->findDataFile(fileName, options, caseSensitivity);
else if (_findFileCallback.valid()) return _findFileCallback->findDataFile(fileName, options, caseSensitivity);
else return findDataFileImplementation(fileName, options, caseSensitivity);
}
std::string findDataFileImplementation(const std::string& fileName, const Options* options, CaseSensitivity caseSensitivity);
std::string findLibraryFile(const std::string& fileName, const Options* options, CaseSensitivity caseSensitivity)
{
if (options && options->getFindFileCallback()) return options->getFindFileCallback()->findLibraryFile(fileName, options, caseSensitivity);
else if (_findFileCallback.valid()) return _findFileCallback->findLibraryFile(fileName, options, caseSensitivity);
else return findLibraryFileImplementation(fileName, options, caseSensitivity);
}
std::string findLibraryFileImplementation(const std::string& fileName, const Options* options, CaseSensitivity caseSensitivity);
void setReadFileCallback( ReadFileCallback* cb) { _readFileCallback = cb; }
ReadFileCallback* getReadFileCallback() { return _readFileCallback.get(); }
const ReadFileCallback* getReadFileCallback() const { return _readFileCallback.get(); }
ReaderWriter::ReadResult openArchive(const std::string& fileName,ReaderWriter::ArchiveStatus status, unsigned int indexBlockSizeHint, const Options* options)
{
if (options && options->getReadFileCallback()) return options->getReadFileCallback()->openArchive(fileName, status, indexBlockSizeHint, options);
else if (_readFileCallback.valid()) return _readFileCallback->openArchive(fileName, status, indexBlockSizeHint, options);
else return openArchiveImplementation(fileName, status, indexBlockSizeHint, options);
}
ReaderWriter::ReadResult openArchiveImplementation(const std::string& fileName, ReaderWriter::ArchiveStatus status, unsigned int indexBlockSizeHint, const Options* options);
ReaderWriter::ReadResult readObject(const std::string& fileName,const Options* options, bool buildKdTreeIfRequired=true)
{
ReaderWriter::ReadResult result;
if (options && options->getReadFileCallback()) result = options->getReadFileCallback()->readObject(fileName,options);
else if (_readFileCallback.valid()) result = _readFileCallback->readObject(fileName,options);
else result = readObjectImplementation(fileName,options);
if (buildKdTreeIfRequired) _buildKdTreeIfRequired(result, options);
return result;
}
ReaderWriter::ReadResult readObjectImplementation(const std::string& fileName,const Options* options);
ReaderWriter::ReadResult readImage(const std::string& fileName,const Options* options)
{
if (options && options->getReadFileCallback()) return options->getReadFileCallback()->readImage(fileName,options);
else if (_readFileCallback.valid()) return _readFileCallback->readImage(fileName,options);
else return readImageImplementation(fileName,options);
}
ReaderWriter::ReadResult readImageImplementation(const std::string& fileName,const Options* options);
ReaderWriter::ReadResult readHeightField(const std::string& fileName,const Options* options)
{
if (options && options->getReadFileCallback()) return options->getReadFileCallback()->readHeightField(fileName,options);
else if (_readFileCallback.valid()) return _readFileCallback->readHeightField(fileName,options);
else return readHeightFieldImplementation(fileName,options);
}
ReaderWriter::ReadResult readHeightFieldImplementation(const std::string& fileName,const Options* options);
ReaderWriter::ReadResult readNode(const std::string& fileName,const Options* options, bool buildKdTreeIfRequired=true)
{
ReaderWriter::ReadResult result;
if (options && options->getReadFileCallback()) result = options->getReadFileCallback()->readNode(fileName,options);
else if (_readFileCallback.valid()) result = _readFileCallback->readNode(fileName,options);
else result = readNodeImplementation(fileName,options);
if (buildKdTreeIfRequired) _buildKdTreeIfRequired(result, options);
return result;
}
ReaderWriter::ReadResult readNodeImplementation(const std::string& fileName,const Options* options);
ReaderWriter::ReadResult readShader(const std::string& fileName,const Options* options)
{
if (options && options->getReadFileCallback()) return options->getReadFileCallback()->readShader(fileName,options);
if (_readFileCallback.valid()) return _readFileCallback->readShader(fileName,options);
else return readShaderImplementation(fileName,options);
}
ReaderWriter::ReadResult readShaderImplementation(const std::string& fileName,const Options* options);
ReaderWriter::ReadResult readScript(const std::string& fileName,const Options* options)
{
if (options && options->getReadFileCallback()) return options->getReadFileCallback()->readScript(fileName,options);
else if (_readFileCallback.valid()) return _readFileCallback->readScript(fileName,options);
else return readScriptImplementation(fileName,options);
}
ReaderWriter::ReadResult readScriptImplementation(const std::string& fileName,const Options* options);
void setWriteFileCallback( WriteFileCallback* cb) { _writeFileCallback = cb; }
WriteFileCallback* getWriteFileCallback() { return _writeFileCallback.get(); }
const WriteFileCallback* getWriteFileCallback() const { return _writeFileCallback.get(); }
ReaderWriter::WriteResult writeObject(const osg::Object& obj, const std::string& fileName,const Options* options)
{
if (options && options->getWriteFileCallback()) return options->getWriteFileCallback()->writeObject(obj,fileName,options);
else if (_writeFileCallback.valid()) return _writeFileCallback->writeObject(obj,fileName,options);
else return writeObjectImplementation(obj,fileName,options);
}
ReaderWriter::WriteResult writeObjectImplementation(const osg::Object& obj, const std::string& fileName,const Options* options);
ReaderWriter::WriteResult writeImage(const osg::Image& obj, const std::string& fileName,const Options* options)
{
if (options && options->getWriteFileCallback()) return options->getWriteFileCallback()->writeImage(obj,fileName,options);
else if (_writeFileCallback.valid()) return _writeFileCallback->writeImage(obj,fileName,options);
else return writeImageImplementation(obj,fileName,options);
}
ReaderWriter::WriteResult writeImageImplementation(const osg::Image& obj, const std::string& fileName,const Options* options);
ReaderWriter::WriteResult writeHeightField(const osg::HeightField& obj, const std::string& fileName,const Options* options)
{
if (options && options->getWriteFileCallback()) return options->getWriteFileCallback()->writeHeightField(obj,fileName,options);
else if (_writeFileCallback.valid()) return _writeFileCallback->writeHeightField(obj,fileName,options);
else return writeHeightFieldImplementation(obj,fileName,options);
}
ReaderWriter::WriteResult writeHeightFieldImplementation(const osg::HeightField& obj, const std::string& fileName,const Options* options);
ReaderWriter::WriteResult writeNode(const osg::Node& node, const std::string& fileName,const Options* options)
{
if (options && options->getWriteFileCallback()) return options->getWriteFileCallback()->writeNode(node,fileName,options);
else if (_writeFileCallback.valid()) return _writeFileCallback->writeNode(node,fileName,options);
else return writeNodeImplementation(node,fileName,options);
}
ReaderWriter::WriteResult writeNodeImplementation(const osg::Node& node, const std::string& fileName,const Options* options);
ReaderWriter::WriteResult writeShader(const osg::Shader& obj, const std::string& fileName,const Options* options)
{
if (options && options->getWriteFileCallback()) return options->getWriteFileCallback()->writeShader(obj,fileName,options);
else if (_writeFileCallback.valid()) return _writeFileCallback->writeShader(obj,fileName,options);
else return writeShaderImplementation(obj,fileName,options);
}
ReaderWriter::WriteResult writeShaderImplementation(const osg::Shader& obj, const std::string& fileName,const Options* options);
ReaderWriter::WriteResult writeScript(const osg::Script& obj, const std::string& fileName,const Options* options)
{
if (options && options->getWriteFileCallback()) return options->getWriteFileCallback()->writeScript(obj,fileName,options);
else if (_writeFileCallback.valid()) return _writeFileCallback->writeScript(obj,fileName,options);
else return writeScriptImplementation(obj,fileName,options);
}
ReaderWriter::WriteResult writeScriptImplementation(const osg::Script& obj, const std::string& fileName,const Options* options);
inline void _buildKdTreeIfRequired(ReaderWriter::ReadResult& result, const Options* options)
{
bool doKdTreeBuilder = (options && options->getBuildKdTreesHint()!=Options::NO_PREFERENCE) ?
options->getBuildKdTreesHint() == Options::BUILD_KDTREES :
_buildKdTreesHint == Options::BUILD_KDTREES;
if (doKdTreeBuilder && _kdTreeBuilder.valid() && result.validNode())
{
osg::ref_ptr<osg::KdTreeBuilder> builder = _kdTreeBuilder->clone();
result.getNode()->accept(*builder);
}
}
void setFileLocationCallback( FileLocationCallback* cb) { _fileLocationCallback = cb; }
FileLocationCallback* getFileLocationCallback() const { return _fileLocationCallback.get(); }
void setBuildKdTreesHint(Options::BuildKdTreesHint hint) { _buildKdTreesHint = hint; }
Options::BuildKdTreesHint getBuildKdTreesHint() const { return _buildKdTreesHint; }
void setKdTreeBuilder(osg::KdTreeBuilder* builder) { _kdTreeBuilder = builder; }
osg::KdTreeBuilder* getKdTreeBuilder() { return _kdTreeBuilder.get(); }
void setFileCache(FileCache* fileCache) { _fileCache = fileCache; }
FileCache* getFileCache() { return _fileCache.get(); }
const FileCache* getFileCache() const { return _fileCache.get(); }
void setAuthenticationMap(AuthenticationMap* authenticationMap) { _authenticationMap = authenticationMap; }
AuthenticationMap* getOrCreateAuthenticationMap()
{
if (!_authenticationMap) _authenticationMap = new AuthenticationMap;
return _authenticationMap.get();
}
AuthenticationMap* getAuthenticationMap() { return _authenticationMap.get(); }
const AuthenticationMap* getAuthenticationMap() const { return _authenticationMap.get(); }
void setCreateNodeFromImage(bool flag) { _createNodeFromImage = flag; }
bool getCreateNodeFromImage() const { return _createNodeFromImage; }
void setOptions(Options* opt) { _options = opt; }
Options* getOptions() { return _options.get(); }
const Options* getOptions() const { return _options.get(); }
void initFilePathLists() { initDataFilePathList(); initLibraryFilePathList(); }
void initDataFilePathList();
void setDataFilePathList(const FilePathList& filepath) { _dataFilePath = filepath; }
void setDataFilePathList(const std::string& paths);
FilePathList& getDataFilePathList() { return _dataFilePath; }
const FilePathList& getDataFilePathList() const { return _dataFilePath; }
void initLibraryFilePathList();
void setLibraryFilePathList(const FilePathList& filepath) { _libraryFilePath = filepath; }
void setLibraryFilePathList(const std::string& paths);
FilePathList& getLibraryFilePathList() { return _libraryFilePath; }
const FilePathList& getLibraryFilePathList() const { return _libraryFilePath; }
void setObjectCache(ObjectCache* objectCache) { _objectCache = objectCache; }
ObjectCache* getObjectCache() { return _objectCache.get(); }
const ObjectCache* getObjectCache() const { return _objectCache.get(); }
void setExpiryDelay(double expiryDelay) { _expiryDelay = expiryDelay; }
double getExpiryDelay() const { return _expiryDelay; }
void updateTimeStampOfObjectsInCacheWithExternalReferences(const osg::FrameStamp& frameStamp);
void removeExpiredObjectsInCache(const osg::FrameStamp& frameStamp);
void clearObjectCache();
void addEntryToObjectCache(const std::string& filename, osg::Object* object, double timestamp = 0.0, Options *options = NULL);
void removeFromObjectCache(const std::string& fileName, Options *options = NULL);
osg::Object* getFromObjectCache(const std::string& fileName, Options *options = NULL);
osg::ref_ptr<osg::Object> getRefFromObjectCache(const std::string& fileName, Options *options = NULL);
void addToArchiveCache(const std::string& fileName, osgDB::Archive* archive);
void removeFromArchiveCache(const std::string& fileName);
osgDB::Archive* getFromArchiveCache(const std::string& fileName);
osg::ref_ptr<osgDB::Archive> getRefFromArchiveCache(const std::string& fileName);
void clearArchiveCache();
void releaseGLObjects(osg::State* state=0);
DynamicLibrary* getLibrary(const std::string& fileName);
void setSharedStateManager(SharedStateManager* SharedStateManager) { _sharedStateManager = SharedStateManager; }
SharedStateManager* getOrCreateSharedStateManager();
SharedStateManager* getSharedStateManager() { return _sharedStateManager.get(); }
void addArchiveExtension(const std::string ext);
void registerProtocol(const std::string& protocol);
bool isProtocolRegistered(const std::string& protocol);
ObjectWrapperManager* getObjectWrapperManager() { return _objectWrapperManager.get(); }
DeprecatedDotOsgWrapperManager* getDeprecatedDotOsgObjectWrapperManager() { return _deprecatedDotOsgWrapperManager.get(); }
typedef std::vector< std::string> ArchiveExtensionList;
const ArchiveExtensionList& getArchiveExtensions() const { return _archiveExtList; }
protected:
virtual ~Registry();
typedef std::vector< osg::ref_ptr<DynamicLibrary> > DynamicLibraryList;
typedef std::map< std::string, std::string> ExtensionAliasMap;
typedef std::map<std::string, osg::ref_ptr<osgDB::Archive> > ArchiveCache;
typedef std::set<std::string> RegisteredProtocolsSet;
Registry();
DynamicLibraryList::iterator getLibraryItr(const std::string& fileName);
Options::BuildKdTreesHint _buildKdTreesHint;
osg::ref_ptr<osg::KdTreeBuilder> _kdTreeBuilder;
osg::ref_ptr<FileCache> _fileCache;
osg::ref_ptr<AuthenticationMap> _authenticationMap;
bool _createNodeFromImage;
RegisteredProtocolsSet _registeredProtocols;
public:
struct ReadFunctor : public osg::Referenced
{
ReadFunctor(const std::string& filename, const Options* options):
_filename(filename),
_options(options) {}
virtual ~ReadFunctor() {}
virtual ReaderWriter::ReadResult doRead(ReaderWriter& rw) const = 0;
virtual bool isValid(ReaderWriter::ReadResult& readResult) const = 0;
virtual bool isValid(osg::Object* object) const = 0;
virtual ReadFunctor* cloneType(const std::string& filename, const Options* options) const = 0;
std::string _filename;
const Options* _options;
};
protected:
void destruct();
// forward declare helper classes
struct ReadObjectFunctor;
struct ReadImageFunctor;
struct ReadHeightFieldFunctor;
struct ReadNodeFunctor;
struct ReadArchiveFunctor;
struct ReadShaderFunctor;
struct ReadScriptFunctor;
// make helper classes friends to get round VS6.0 "issues"
friend struct ReadFunctor;
friend struct ReadObjectFunctor;
friend struct ReadImageFunctor;
friend struct ReadHeightFieldFunctor;
friend struct ReadNodeFunctor;
friend struct ReadArchiveFunctor;
friend struct ReadShaderFunctor;
friend struct ReadScriptFunctor;
ReaderWriter::ReadResult read(const ReadFunctor& readFunctor);
ReaderWriter::ReadResult readImplementation(const ReadFunctor& readFunctor,Options::CacheHintOptions cacheHint);
// forward declare helper class
class AvailableReaderWriterIterator;
friend class AvailableReaderWriterIterator;
class AvailableArchiveIterator;
friend class AvailableArchiveIterator;
osg::ref_ptr<FindFileCallback> _findFileCallback;
osg::ref_ptr<ReadFileCallback> _readFileCallback;
osg::ref_ptr<WriteFileCallback> _writeFileCallback;
osg::ref_ptr<FileLocationCallback> _fileLocationCallback;
OpenThreads::ReentrantMutex _pluginMutex;
ReaderWriterList _rwList;
ImageProcessorList _ipList;
DynamicLibraryList _dlList;
OpenThreads::ReentrantMutex _archiveCacheMutex;
ArchiveCache _archiveCache;
bool _openingLibrary;
// map to alias to extensions to plugins.
ExtensionAliasMap _extAliasMap;
// maps mime-types to extensions.
MimeTypeExtensionMap _mimeTypeExtMap;
// Utility: Removes whitespace from both ends of a string.
static std::string trim( const std::string& str );
// options to pass to reader writers.
osg::ref_ptr<Options> _options;
FilePathList _dataFilePath;
FilePathList _libraryFilePath;
osg::ref_ptr<ObjectCache> _objectCache;
double _expiryDelay;
ArchiveExtensionList _archiveExtList;
osg::ref_ptr<SharedStateManager> _sharedStateManager;
osg::ref_ptr<ObjectWrapperManager> _objectWrapperManager;
osg::ref_ptr<DeprecatedDotOsgWrapperManager> _deprecatedDotOsgWrapperManager;
};
inline void readCommandLine(osg::ArgumentParser& parser)
{
Registry::instance()->readCommandLine(parser);
}
template<class T>
class RegisterReaderWriterProxy
{
public:
RegisterReaderWriterProxy()
{
if (Registry::instance())
{
_rw = new T;
Registry::instance()->addReaderWriter(_rw.get());
}
}
~RegisterReaderWriterProxy()
{
if (Registry::instance())
{
Registry::instance()->removeReaderWriter(_rw.get());
}
}
T* get() { return _rw.get(); }
protected:
osg::ref_ptr<T> _rw;
};
template<class T>
class RegisterImageProcessorProxy
{
public:
RegisterImageProcessorProxy()
{
if (Registry::instance())
{
_rw = new T;
Registry::instance()->addImageProcessor(_rw.get());
}
}
~RegisterImageProcessorProxy()
{
if (Registry::instance())
{
Registry::instance()->removeImageProcessor(_rw.get());
}
}
T* get() { return _rw.get(); }
protected:
osg::ref_ptr<T> _rw;
};
struct PluginFunctionProxy
{
PluginFunctionProxy(CPluginFunction function) { (function)(); }
};
#define USE_OSGPLUGIN(ext) \
extern "C" void osgdb_##ext(void); \
static osgDB::PluginFunctionProxy proxy_##ext(osgdb_##ext);
#define USE_DOTOSGWRAPPER(classname) \
extern "C" void dotosgwrapper_##classname(void); \
static osgDB::PluginFunctionProxy proxy_dotosgwrapper_##classname(dotosgwrapper_##classname);
#define USE_DOTOSGWRAPPER_LIBRARY(libname) \
extern "C" void dotosgwrapper_library_##libname(void); \
static osgDB::PluginFunctionProxy proxy_dotosgwrapper_library_##libname(dotosgwrapper_library_##libname);
#define USE_SERIALIZER_WRAPPER(classname) \
extern "C" void wrapper_serializer_##classname(void); \
static osgDB::PluginFunctionProxy proxy_serializer_##classname(wrapper_serializer_##classname);
#define USE_SERIALIZER_WRAPPER_LIBRARY(libname) \
extern "C" void wrapper_serializer_library_##libname(void); \
static osgDB::PluginFunctionProxy proxy_serializer_library_##libname(wrapper_serializer_library_##libname);
#define USE_COMPRESSOR_WRAPPER(classname) \
extern "C" void wrapper_compressor_##classname(void); \
static osgDB::PluginFunctionProxy proxy_compressor_##classname(wrapper_compressor_##classname);
#define REGISTER_OSGPLUGIN(ext, classname) \
extern "C" void osgdb_##ext(void) {} \
static osgDB::RegisterReaderWriterProxy<classname> g_proxy_##classname;
#define REGISTER_OSGIMAGEPROCESSOR(ext, classname) \
extern "C" void osgdb_##ext(void) {} \
static osgDB::RegisterImageProcessorProxy<classname> g_proxy_##classname;
}
#endif
ArgumentParser
DotOsgWrapper
DynamicLibrary
FileCache
ImageProcessor
KdTree
ObjectCache
ObjectWrapper
Options
ReaderWriter
ReentrantMutex
SharedStateManager
OpenThreads::ReentrantMutex
Definition ReentrantMutex:24
osgDB::Archive
Definition Archive:29
osgDB::AuthenticationMap
Definition AuthenticationMap:62
osgDB::DeprecatedDotOsgWrapperManager
Definition DotOsgWrapper:84
osgDB::DynamicLibrary
Definition DynamicLibrary:29
osgDB::FileCache
Definition FileCache:27
osgDB::FileLocationCallback
Definition osgDB/Callbacks:95
osgDB::FindFileCallback
Definition osgDB/Callbacks:40
osgDB::FindFileCallback::findDataFile
virtual std::string findDataFile(const std::string &filename, const Options *options, CaseSensitivity caseSensitivity)
osgDB::FindFileCallback::findLibraryFile
virtual std::string findLibraryFile(const std::string &filename, const Options *options, CaseSensitivity caseSensitivity)
osgDB::ImageProcessor
Definition ImageProcessor:22
osgDB::ObjectCache
Definition ObjectCache:27
osgDB::ObjectWrapperManager
Definition ObjectWrapper:157
osgDB::Options
Definition Options:30
osgDB::Options::CacheHintOptions
CacheHintOptions
bit mask for setting up which object types get cached by readObject/Image/HeightField/Node(filename) ...
Definition Options:35
osgDB::Options::BuildKdTreesHint
BuildKdTreesHint
range of options of whether to build kdtrees automatically on loading
Definition Options:91
osgDB::Options::NO_PREFERENCE
@ NO_PREFERENCE
Definition Options:92
osgDB::Options::BUILD_KDTREES
@ BUILD_KDTREES
Definition Options:94
osgDB::Options::getReadFileCallback
ReadFileCallback * getReadFileCallback() const
Definition Options:211
osgDB::Options::getBuildKdTreesHint
BuildKdTreesHint getBuildKdTreesHint() const
Definition Options:147
osgDB::Options::getFindFileCallback
FindFileCallback * getFindFileCallback() const
Definition Options:204
osgDB::Options::getWriteFileCallback
WriteFileCallback * getWriteFileCallback() const
Definition Options:218
osgDB::ReadFileCallback
Definition osgDB/Callbacks:53
osgDB::ReadFileCallback::readHeightField
virtual ReaderWriter::ReadResult readHeightField(const std::string &filename, const Options *options)
osgDB::ReadFileCallback::openArchive
virtual ReaderWriter::ReadResult openArchive(const std::string &filename, ReaderWriter::ArchiveStatus status, unsigned int indexBlockSizeHint, const Options *useObjectCache)
osgDB::ReadFileCallback::readShader
virtual ReaderWriter::ReadResult readShader(const std::string &filename, const Options *options)
osgDB::ReadFileCallback::readImage
virtual ReaderWriter::ReadResult readImage(const std::string &filename, const Options *options)
osgDB::ReadFileCallback::readObject
virtual ReaderWriter::ReadResult readObject(const std::string &filename, const Options *options)
osgDB::ReadFileCallback::readNode
virtual ReaderWriter::ReadResult readNode(const std::string &filename, const Options *options)
osgDB::ReadFileCallback::readScript
virtual ReaderWriter::ReadResult readScript(const std::string &filename, const Options *options)
osgDB::ReaderWriter::ReadResult
Definition ReaderWriter:109
osgDB::ReaderWriter::ReadResult::validNode
bool validNode()
Definition ReaderWriter:148
osgDB::ReaderWriter::ReadResult::getNode
osg::Node * getNode()
osgDB::ReaderWriter::WriteResult
Definition ReaderWriter:184
osgDB::ReaderWriter
Definition ReaderWriter:40
osgDB::ReaderWriter::ArchiveStatus
ArchiveStatus
Definition ReaderWriter:221
osgDB::RegisterImageProcessorProxy::~RegisterImageProcessorProxy
~RegisterImageProcessorProxy()
Definition osgDB/Registry:700
osgDB::RegisterImageProcessorProxy::_rw
osg::ref_ptr< T > _rw
Definition osgDB/Registry:711
osgDB::RegisterImageProcessorProxy::RegisterImageProcessorProxy
RegisterImageProcessorProxy()
Definition osgDB/Registry:691
osgDB::RegisterImageProcessorProxy::get
T * get()
Definition osgDB/Registry:708
osgDB::RegisterReaderWriterProxy::_rw
osg::ref_ptr< T > _rw
Definition osgDB/Registry:682
osgDB::RegisterReaderWriterProxy::RegisterReaderWriterProxy
RegisterReaderWriterProxy()
Definition osgDB/Registry:662
osgDB::RegisterReaderWriterProxy::~RegisterReaderWriterProxy
~RegisterReaderWriterProxy()
Definition osgDB/Registry:671
osgDB::RegisterReaderWriterProxy::get
T * get()
Definition osgDB/Registry:679
osgDB::Registry::_fileCache
osg::ref_ptr< FileCache > _fileCache
Definition osgDB/Registry:547
osgDB::Registry::_authenticationMap
osg::ref_ptr< AuthenticationMap > _authenticationMap
Definition osgDB/Registry:549
osgDB::Registry::ReadImageFunctor
friend struct ReadImageFunctor
Definition osgDB/Registry:590
osgDB::Registry::getImageProcessorForExtension
ImageProcessor * getImageProcessorForExtension(const std::string &ext)
osgDB::Registry::getFileCache
FileCache * getFileCache()
Definition osgDB/Registry:360
osgDB::Registry::getObjectCache
const ObjectCache * getObjectCache() const
Definition osgDB/Registry:437
osgDB::Registry::getKdTreeBuilder
osg::KdTreeBuilder * getKdTreeBuilder()
Definition osgDB/Registry:353
osgDB::Registry::setReadFileCallback
void setReadFileCallback(ReadFileCallback *cb)
Definition osgDB/Registry:188
osgDB::Registry::removeExpiredObjectsInCache
void removeExpiredObjectsInCache(const osg::FrameStamp &frameStamp)
osgDB::Registry::ArchiveExtensionList
std::vector< std::string > ArchiveExtensionList
Definition osgDB/Registry:522
osgDB::Registry::read
ReaderWriter::ReadResult read(const ReadFunctor &readFunctor)
osgDB::Registry::addFileExtensionAlias
void addFileExtensionAlias(const std::string mapExt, const std::string toExt)
osgDB::Registry::trim
static std::string trim(const std::string &str)
osgDB::Registry::removeReaderWriter
void removeReaderWriter(ReaderWriter *rw)
osgDB::Registry::getCreateNodeFromImage
bool getCreateNodeFromImage() const
Definition osgDB/Registry:384
osgDB::Registry::getLibraryFilePathList
FilePathList & getLibraryFilePathList()
Definition osgDB/Registry:423
osgDB::Registry::setSharedStateManager
void setSharedStateManager(SharedStateManager *SharedStateManager)
Definition osgDB/Registry:499
osgDB::Registry::_mimeTypeExtMap
MimeTypeExtensionMap _mimeTypeExtMap
Definition osgDB/Registry:627
osgDB::Registry::getReaderWriterListForProtocol
void getReaderWriterListForProtocol(const std::string &protocol, ReaderWriterList &results) const
osgDB::Registry::readImplementation
ReaderWriter::ReadResult readImplementation(const ReadFunctor &readFunctor, Options::CacheHintOptions cacheHint)
osgDB::Registry::getFindFileCallback
FindFileCallback * getFindFileCallback()
Definition osgDB/Registry:163
osgDB::Registry::AvailableReaderWriterIterator
friend class AvailableReaderWriterIterator
Definition osgDB/Registry:603
osgDB::Registry::getReaderWriterForProtocolAndExtension
ReaderWriter * getReaderWriterForProtocolAndExtension(const std::string &protocol, const std::string &extension)
osgDB::Registry::setAuthenticationMap
void setAuthenticationMap(AuthenticationMap *authenticationMap)
Definition osgDB/Registry:367
osgDB::Registry::findLibraryFile
std::string findLibraryFile(const std::string &fileName, const Options *options, CaseSensitivity caseSensitivity)
Definition osgDB/Registry:177
osgDB::Registry::_extAliasMap
ExtensionAliasMap _extAliasMap
Definition osgDB/Registry:624
osgDB::Registry::setWriteFileCallback
void setWriteFileCallback(WriteFileCallback *cb)
Definition osgDB/Registry:265
osgDB::Registry::RegisteredProtocolsSet
std::set< std::string > RegisteredProtocolsSet
Definition osgDB/Registry:534
osgDB::Registry::ReadArchiveFunctor
friend struct ReadArchiveFunctor
Definition osgDB/Registry:593
osgDB::Registry::getReaderWriterList
ReaderWriterList & getReaderWriterList()
Definition osgDB/Registry:128
osgDB::Registry::readHeightFieldImplementation
ReaderWriter::ReadResult readHeightFieldImplementation(const std::string &fileName, const Options *options)
osgDB::Registry::ReadNodeFunctor
friend struct ReadNodeFunctor
Definition osgDB/Registry:592
osgDB::Registry::getFromArchiveCache
osgDB::Archive * getFromArchiveCache(const std::string &fileName)
osgDB::Registry::getWriteFileCallback
const WriteFileCallback * getWriteFileCallback() const
Definition osgDB/Registry:271
osgDB::Registry::FindFileCallback
class osgDB::FindFileCallback FindFileCallback
Definition osgDB/Registry:154
osgDB::Registry::readNode
ReaderWriter::ReadResult readNode(const std::string &fileName, const Options *options, bool buildKdTreeIfRequired=true)
Definition osgDB/Registry:234
osgDB::Registry::getReaderWriterForMimeType
ReaderWriter * getReaderWriterForMimeType(const std::string &mimeType)
osgDB::Registry::setDataFilePathList
void setDataFilePathList(const FilePathList &filepath)
Definition osgDB/Registry:401
osgDB::Registry::_rwList
ReaderWriterList _rwList
Definition osgDB/Registry:614
osgDB::Registry::getReaderWriterForExtension
ReaderWriter * getReaderWriterForExtension(const std::string &ext)
osgDB::Registry::setCreateNodeFromImage
void setCreateNodeFromImage(bool flag)
Definition osgDB/Registry:383
osgDB::Registry::initDataFilePathList
void initDataFilePathList()
osgDB::Registry::getOptions
Options * getOptions()
Definition osgDB/Registry:388
osgDB::Registry::LoadStatus
LoadStatus
Definition osgDB/Registry:103
osgDB::Registry::LOADED
@ LOADED
Definition osgDB/Registry:106
osgDB::Registry::NOT_LOADED
@ NOT_LOADED
Definition osgDB/Registry:104
osgDB::Registry::PREVIOUSLY_LOADED
@ PREVIOUSLY_LOADED
Definition osgDB/Registry:105
osgDB::Registry::writeScriptImplementation
ReaderWriter::WriteResult writeScriptImplementation(const osg::Script &obj, const std::string &fileName, const Options *options)
osgDB::Registry::writeScript
ReaderWriter::WriteResult writeScript(const osg::Script &obj, const std::string &fileName, const Options *options)
Definition osgDB/Registry:314
osgDB::Registry::_kdTreeBuilder
osg::ref_ptr< osg::KdTreeBuilder > _kdTreeBuilder
Definition osgDB/Registry:545
osgDB::Registry::readImage
ReaderWriter::ReadResult readImage(const std::string &fileName, const Options *options)
Definition osgDB/Registry:218
osgDB::Registry::closeAllLibraries
void closeAllLibraries()
osgDB::Registry::getReaderWriterList
const ReaderWriterList & getReaderWriterList() const
Definition osgDB/Registry:131
osgDB::Registry::setDataFilePathList
void setDataFilePathList(const std::string &paths)
osgDB::Registry::getAuthenticationMap
AuthenticationMap * getAuthenticationMap()
Definition osgDB/Registry:377
osgDB::Registry::~Registry
virtual ~Registry()
osgDB::Registry::ReadScriptFunctor
friend struct ReadScriptFunctor
Definition osgDB/Registry:595
osgDB::Registry::_createNodeFromImage
bool _createNodeFromImage
Definition osgDB/Registry:551
osgDB::Registry::getDataFilePathList
const FilePathList & getDataFilePathList() const
Definition osgDB/Registry:410
osgDB::Registry::findLibraryFileImplementation
std::string findLibraryFileImplementation(const std::string &fileName, const Options *options, CaseSensitivity caseSensitivity)
osgDB::Registry::_objectCache
osg::ref_ptr< ObjectCache > _objectCache
Definition osgDB/Registry:638
osgDB::Registry::addImageProcessor
void addImageProcessor(ImageProcessor *ip)
osgDB::Registry::writeImageImplementation
ReaderWriter::WriteResult writeImageImplementation(const osg::Image &obj, const std::string &fileName, const Options *options)
osgDB::Registry::_fileLocationCallback
osg::ref_ptr< FileLocationCallback > _fileLocationCallback
Definition osgDB/Registry:611
osgDB::Registry::_libraryFilePath
FilePathList _libraryFilePath
Definition osgDB/Registry:636
osgDB::Registry::getFileLocationCallback
FileLocationCallback * getFileLocationCallback() const
Definition osgDB/Registry:339
osgDB::Registry::getArchiveExtensions
const ArchiveExtensionList & getArchiveExtensions() const
Definition osgDB/Registry:523
osgDB::Registry::ExtensionAliasMap
std::map< std::string, std::string > ExtensionAliasMap
Definition osgDB/Registry:530
osgDB::Registry::_sharedStateManager
osg::ref_ptr< SharedStateManager > _sharedStateManager
Definition osgDB/Registry:645
osgDB::Registry::removeFromObjectCache
void removeFromObjectCache(const std::string &fileName, Options *options=NULL)
osgDB::Registry::_archiveExtList
ArchiveExtensionList _archiveExtList
Definition osgDB/Registry:643
osgDB::Registry::getOrCreateAuthenticationMap
AuthenticationMap * getOrCreateAuthenticationMap()
Definition osgDB/Registry:370
osgDB::Registry::getReadFileCallback
ReadFileCallback * getReadFileCallback()
Definition osgDB/Registry:191
osgDB::Registry::_buildKdTreeIfRequired
void _buildKdTreeIfRequired(ReaderWriter::ReadResult &result, const Options *options)
Definition osgDB/Registry:322
osgDB::Registry::getRefFromObjectCache
osg::ref_ptr< osg::Object > getRefFromObjectCache(const std::string &fileName, Options *options=NULL)
osgDB::Registry::getDataFilePathList
FilePathList & getDataFilePathList()
Definition osgDB/Registry:407
osgDB::Registry::addEntryToObjectCache
void addEntryToObjectCache(const std::string &filename, osg::Object *object, double timestamp=0.0, Options *options=NULL)
osgDB::Registry::setObjectCache
void setObjectCache(ObjectCache *objectCache)
Definition osgDB/Registry:431
osgDB::Registry::readShader
ReaderWriter::ReadResult readShader(const std::string &fileName, const Options *options)
Definition osgDB/Registry:247
osgDB::Registry::readNodeImplementation
ReaderWriter::ReadResult readNodeImplementation(const std::string &fileName, const Options *options)
osgDB::Registry::setFileCache
void setFileCache(FileCache *fileCache)
Definition osgDB/Registry:357
osgDB::Registry::_readFileCallback
osg::ref_ptr< ReadFileCallback > _readFileCallback
Definition osgDB/Registry:609
osgDB::Registry::clearObjectCache
void clearObjectCache()
osgDB::Registry::Registry
Registry()
osgDB::Registry::openArchive
ReaderWriter::ReadResult openArchive(const std::string &fileName, ReaderWriter::ArchiveStatus status, unsigned int indexBlockSizeHint, const Options *options)
Definition osgDB/Registry:197
osgDB::Registry::_archiveCacheMutex
OpenThreads::ReentrantMutex _archiveCacheMutex
Definition osgDB/Registry:618
osgDB::Registry::ReadHeightFieldFunctor
friend struct ReadHeightFieldFunctor
Definition osgDB/Registry:591
osgDB::Registry::getLibraryItr
DynamicLibraryList::iterator getLibraryItr(const std::string &fileName)
osgDB::Registry::writeHeightField
ReaderWriter::WriteResult writeHeightField(const osg::HeightField &obj, const std::string &fileName, const Options *options)
Definition osgDB/Registry:290
osgDB::Registry::writeShaderImplementation
ReaderWriter::WriteResult writeShaderImplementation(const osg::Shader &obj, const std::string &fileName, const Options *options)
osgDB::Registry::readHeightField
ReaderWriter::ReadResult readHeightField(const std::string &fileName, const Options *options)
Definition osgDB/Registry:226
osgDB::Registry::getOrCreateSharedStateManager
SharedStateManager * getOrCreateSharedStateManager()
osgDB::Registry::getImageProcessor
ImageProcessor * getImageProcessor()
osgDB::Registry::getReadFileCallback
const ReadFileCallback * getReadFileCallback() const
Definition osgDB/Registry:194
osgDB::Registry::ReadFileCallback
class osgDB::ReadFileCallback ReadFileCallback
Definition osgDB/Registry:155
osgDB::Registry::instance
static Registry * instance(bool erase=false)
osgDB::Registry::getObjectWrapperManager
ObjectWrapperManager * getObjectWrapperManager()
Definition osgDB/Registry:517
osgDB::Registry::setBuildKdTreesHint
void setBuildKdTreesHint(Options::BuildKdTreesHint hint)
Definition osgDB/Registry:344
osgDB::Registry::isProtocolRegistered
bool isProtocolRegistered(const std::string &protocol)
osgDB::Registry::setExpiryDelay
void setExpiryDelay(double expiryDelay)
Definition osgDB/Registry:440
osgDB::Registry::setLibraryFilePathList
void setLibraryFilePathList(const FilePathList &filepath)
Definition osgDB/Registry:417
osgDB::Registry::getSharedStateManager
SharedStateManager * getSharedStateManager()
Definition osgDB/Registry:505
osgDB::Registry::updateTimeStampOfObjectsInCacheWithExternalReferences
void updateTimeStampOfObjectsInCacheWithExternalReferences(const osg::FrameStamp &frameStamp)
osgDB::Registry::createLibraryNameForFile
std::string createLibraryNameForFile(const std::string &fileName)
osgDB::Registry::getLibrary
DynamicLibrary * getLibrary(const std::string &fileName)
osgDB::Registry::writeNode
ReaderWriter::WriteResult writeNode(const osg::Node &node, const std::string &fileName, const Options *options)
Definition osgDB/Registry:298
osgDB::Registry::MimeTypeExtensionMap
std::map< std::string, std::string > MimeTypeExtensionMap
Definition osgDB/Registry:77
osgDB::Registry::getFileCache
const FileCache * getFileCache() const
Definition osgDB/Registry:363
osgDB::Registry::removeFromArchiveCache
void removeFromArchiveCache(const std::string &fileName)
osgDB::Registry::DynamicLibraryList
std::vector< osg::ref_ptr< DynamicLibrary > > DynamicLibraryList
Definition osgDB/Registry:529
osgDB::Registry::createLibraryNameForExtension
std::string createLibraryNameForExtension(const std::string &ext)
osgDB::Registry::getImageProcessorList
ImageProcessorList & getImageProcessorList()
Definition osgDB/Registry:148
osgDB::Registry::clearArchiveCache
void clearArchiveCache()
osgDB::Registry::setFileLocationCallback
void setFileLocationCallback(FileLocationCallback *cb)
Definition osgDB/Registry:336
osgDB::Registry::_dlList
DynamicLibraryList _dlList
Definition osgDB/Registry:616
osgDB::Registry::getOptions
const Options * getOptions() const
Definition osgDB/Registry:389
osgDB::Registry::readCommandLine
void readCommandLine(osg::ArgumentParser &commandLine)
osgDB::Registry::destruct
void destruct()
osgDB::Registry::_buildKdTreesHint
Options::BuildKdTreesHint _buildKdTreesHint
Definition osgDB/Registry:544
osgDB::Registry::readPluginAliasConfigurationFile
bool readPluginAliasConfigurationFile(const std::string &file)
osgDB::Registry::_registeredProtocols
RegisteredProtocolsSet _registeredProtocols
Definition osgDB/Registry:553
osgDB::Registry::setLibraryFilePathList
void setLibraryFilePathList(const std::string &paths)
osgDB::Registry::_pluginMutex
OpenThreads::ReentrantMutex _pluginMutex
Definition osgDB/Registry:613
osgDB::Registry::getExpiryDelay
double getExpiryDelay() const
Definition osgDB/Registry:442
osgDB::Registry::readObject
ReaderWriter::ReadResult readObject(const std::string &fileName, const Options *options, bool buildKdTreeIfRequired=true)
Definition osgDB/Registry:205
osgDB::Registry::_findFileCallback
osg::ref_ptr< FindFileCallback > _findFileCallback
Definition osgDB/Registry:608
osgDB::Registry::loadLibrary
LoadStatus loadLibrary(const std::string &fileName)
osgDB::Registry::initFilePathLists
void initFilePathLists()
Definition osgDB/Registry:395
osgDB::Registry::removeImageProcessor
void removeImageProcessor(ImageProcessor *ip)
osgDB::Registry::closeLibrary
bool closeLibrary(const std::string &fileName)
osgDB::Registry::writeObject
ReaderWriter::WriteResult writeObject(const osg::Object &obj, const std::string &fileName, const Options *options)
Definition osgDB/Registry:274
osgDB::Registry::addReaderWriter
void addReaderWriter(ReaderWriter *rw)
osgDB::Registry::ReadObjectFunctor
friend struct ReadObjectFunctor
Definition osgDB/Registry:589
osgDB::Registry::_openingLibrary
bool _openingLibrary
Definition osgDB/Registry:621
osgDB::Registry::_options
osg::ref_ptr< Options > _options
Definition osgDB/Registry:633
osgDB::Registry::getLibraryFilePathList
const FilePathList & getLibraryFilePathList() const
Definition osgDB/Registry:426
osgDB::Registry::readScript
ReaderWriter::ReadResult readScript(const std::string &fileName, const Options *options)
Definition osgDB/Registry:255
osgDB::Registry::releaseGLObjects
void releaseGLObjects(osg::State *state=0)
osgDB::Registry::readImageImplementation
ReaderWriter::ReadResult readImageImplementation(const std::string &fileName, const Options *options)
osgDB::Registry::readObjectImplementation
ReaderWriter::ReadResult readObjectImplementation(const std::string &fileName, const Options *options)
osgDB::Registry::registerProtocol
void registerProtocol(const std::string &protocol)
osgDB::Registry::findDataFile
std::string findDataFile(const std::string &fileName, const Options *options, CaseSensitivity caseSensitivity)
Definition osgDB/Registry:169
osgDB::Registry::readShaderImplementation
ReaderWriter::ReadResult readShaderImplementation(const std::string &fileName, const Options *options)
osgDB::Registry::getMimeTypeExtensionMap
MimeTypeExtensionMap & getMimeTypeExtensionMap()
Definition osgDB/Registry:84
osgDB::Registry::writeShader
ReaderWriter::WriteResult writeShader(const osg::Shader &obj, const std::string &fileName, const Options *options)
Definition osgDB/Registry:306
osgDB::Registry::writeImage
ReaderWriter::WriteResult writeImage(const osg::Image &obj, const std::string &fileName, const Options *options)
Definition osgDB/Registry:282
osgDB::Registry::_writeFileCallback
osg::ref_ptr< WriteFileCallback > _writeFileCallback
Definition osgDB/Registry:610
osgDB::Registry::AvailableArchiveIterator
friend class AvailableArchiveIterator
Definition osgDB/Registry:605
osgDB::Registry::setFindFileCallback
void setFindFileCallback(FindFileCallback *cb)
Definition osgDB/Registry:160
osgDB::Registry::writeNodeImplementation
ReaderWriter::WriteResult writeNodeImplementation(const osg::Node &node, const std::string &fileName, const Options *options)
osgDB::Registry::writeObjectImplementation
ReaderWriter::WriteResult writeObjectImplementation(const osg::Object &obj, const std::string &fileName, const Options *options)
osgDB::Registry::getMimeTypeExtensionMap
const MimeTypeExtensionMap & getMimeTypeExtensionMap() const
Definition osgDB/Registry:85
osgDB::Registry::getImageProcessorList
const ImageProcessorList & getImageProcessorList() const
Definition osgDB/Registry:151
osgDB::Registry::findDataFileImplementation
std::string findDataFileImplementation(const std::string &fileName, const Options *options, CaseSensitivity caseSensitivity)
osgDB::Registry::addArchiveExtension
void addArchiveExtension(const std::string ext)
osgDB::Registry::ImageProcessorList
std::vector< osg::ref_ptr< ImageProcessor > > ImageProcessorList
Definition osgDB/Registry:139
osgDB::Registry::ReadShaderFunctor
friend struct ReadShaderFunctor
Definition osgDB/Registry:594
osgDB::Registry::addMimeTypeExtensionMapping
void addMimeTypeExtensionMapping(const std::string fromMimeType, const std::string toExt)
osgDB::Registry::_expiryDelay
double _expiryDelay
Definition osgDB/Registry:640
osgDB::Registry::getFromObjectCache
osg::Object * getFromObjectCache(const std::string &fileName, Options *options=NULL)
osgDB::Registry::_deprecatedDotOsgWrapperManager
osg::ref_ptr< DeprecatedDotOsgWrapperManager > _deprecatedDotOsgWrapperManager
Definition osgDB/Registry:648
osgDB::Registry::_ipList
ImageProcessorList _ipList
Definition osgDB/Registry:615
osgDB::Registry::_archiveCache
ArchiveCache _archiveCache
Definition osgDB/Registry:619
osgDB::Registry::initLibraryFilePathList
void initLibraryFilePathList()
osgDB::Registry::_dataFilePath
FilePathList _dataFilePath
Definition osgDB/Registry:635
osgDB::Registry::openArchiveImplementation
ReaderWriter::ReadResult openArchiveImplementation(const std::string &fileName, ReaderWriter::ArchiveStatus status, unsigned int indexBlockSizeHint, const Options *options)
osgDB::Registry::writeHeightFieldImplementation
ReaderWriter::WriteResult writeHeightFieldImplementation(const osg::HeightField &obj, const std::string &fileName, const Options *options)
osgDB::Registry::addToArchiveCache
void addToArchiveCache(const std::string &fileName, osgDB::Archive *archive)
osgDB::Registry::setKdTreeBuilder
void setKdTreeBuilder(osg::KdTreeBuilder *builder)
Definition osgDB/Registry:350
osgDB::Registry::getWriteFileCallback
WriteFileCallback * getWriteFileCallback()
Definition osgDB/Registry:268
osgDB::Registry::readScriptImplementation
ReaderWriter::ReadResult readScriptImplementation(const std::string &fileName, const Options *options)
osgDB::Registry::ReaderWriterList
std::vector< osg::ref_ptr< ReaderWriter > > ReaderWriterList
Definition osgDB/Registry:118
osgDB::Registry::FileLocationCallback
class osgDB::FileLocationCallback FileLocationCallback
Definition osgDB/Registry:157
osgDB::Registry::_objectWrapperManager
osg::ref_ptr< ObjectWrapperManager > _objectWrapperManager
Definition osgDB/Registry:647
osgDB::Registry::getRefFromArchiveCache
osg::ref_ptr< osgDB::Archive > getRefFromArchiveCache(const std::string &fileName)
osgDB::Registry::getObjectCache
ObjectCache * getObjectCache()
Definition osgDB/Registry:434
osgDB::Registry::getDeprecatedDotOsgObjectWrapperManager
DeprecatedDotOsgWrapperManager * getDeprecatedDotOsgObjectWrapperManager()
Definition osgDB/Registry:520
osgDB::Registry::getFindFileCallback
const FindFileCallback * getFindFileCallback() const
Definition osgDB/Registry:166
osgDB::Registry::createLibraryNameForNodeKit
std::string createLibraryNameForNodeKit(const std::string &name)
osgDB::Registry::getAuthenticationMap
const AuthenticationMap * getAuthenticationMap() const
Definition osgDB/Registry:380
osgDB::Registry::ArchiveCache
std::map< std::string, osg::ref_ptr< osgDB::Archive > > ArchiveCache
Definition osgDB/Registry:532
osgDB::Registry::getBuildKdTreesHint
Options::BuildKdTreesHint getBuildKdTreesHint() const
Definition osgDB/Registry:347
osgDB::Registry::setOptions
void setOptions(Options *opt)
Definition osgDB/Registry:387
osgDB::Registry::WriteFileCallback
class osgDB::WriteFileCallback WriteFileCallback
Definition osgDB/Registry:156
osgDB::SharedStateManager
Definition SharedStateManager:31
osgDB::WriteFileCallback
Definition osgDB/Callbacks:75
osgDB::WriteFileCallback::writeHeightField
virtual ReaderWriter::WriteResult writeHeightField(const osg::HeightField &obj, const std::string &fileName, const Options *options)
osgDB::WriteFileCallback::writeScript
virtual ReaderWriter::WriteResult writeScript(const osg::Script &obj, const std::string &fileName, const Options *options)
osgDB::WriteFileCallback::writeImage
virtual ReaderWriter::WriteResult writeImage(const osg::Image &obj, const std::string &fileName, const Options *options)
osgDB::WriteFileCallback::writeNode
virtual ReaderWriter::WriteResult writeNode(const osg::Node &obj, const std::string &fileName, const Options *options)
osgDB::WriteFileCallback::writeShader
virtual ReaderWriter::WriteResult writeShader(const osg::Shader &obj, const std::string &fileName, const Options *options)
osgDB::WriteFileCallback::writeObject
virtual ReaderWriter::WriteResult writeObject(const osg::Object &obj, const std::string &fileName, const Options *options)
osg::ArgumentParser
Definition ArgumentParser:28
osg::FrameStamp
Definition FrameStamp:35
osg::HeightField
Definition Shape:483
osg::Image
Definition Image:179
osg::KdTreeBuilder
Definition KdTree:193
osg::Node
Definition Node:72
osg::Node::accept
virtual void accept(NodeVisitor &nv)
osg::Object
Definition Object:61
osg::Referenced
Definition Referenced:44
osg::Script
Definition osg/ScriptEngine:30
osg::Shader
Definition Shader:89
osg::State
Definition State:80
osg::ref_ptr
Definition ref_ptr:32
osgDB
Definition Archive:24
osgDB::FilePathList
std::deque< std::string > FilePathList
Definition osgDB/Callbacks:28
osgDB::CaseSensitivity
CaseSensitivity
Definition osgDB/Callbacks:31
osgDB::readCommandLine
void readCommandLine(osg::ArgumentParser &parser)
Definition osgDB/Registry:652
OSGDB_EXPORT
#define OSGDB_EXPORT
Definition osgDB/Export:39
CPluginFunction
void(* CPluginFunction)(void)
Definition osgDB/Registry:39
NULL
#define NULL
Definition osg/Export:55
ref_ptr
osgDB::PluginFunctionProxy::PluginFunctionProxy
PluginFunctionProxy(CPluginFunction function)
Definition osgDB/Registry:716
osgDB::Registry::ReadFunctor
Definition osgDB/Registry:558
osgDB::Registry::ReadFunctor::cloneType
virtual ReadFunctor * cloneType(const std::string &filename, const Options *options) const =0
osgDB::Registry::ReadFunctor::_filename
std::string _filename
Definition osgDB/Registry:570
osgDB::Registry::ReadFunctor::doRead
virtual ReaderWriter::ReadResult doRead(ReaderWriter &rw) const =0
osgDB::Registry::ReadFunctor::ReadFunctor
ReadFunctor(const std::string &filename, const Options *options)
Definition osgDB/Registry:559
osgDB::Registry::ReadFunctor::_options
const Options * _options
Definition osgDB/Registry:571
osgDB::Registry::ReadFunctor::isValid
virtual bool isValid(ReaderWriter::ReadResult &readResult) const =0
osgDB::Registry::ReadFunctor::isValid
virtual bool isValid(osg::Object *object) const =0
osgDB::Registry::ReadFunctor::~ReadFunctor
virtual ~ReadFunctor()
Definition osgDB/Registry:563