OSG  3.4.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Classes | Public Types | Public Member Functions | Static Public Member Functions | Protected Types | Protected Member Functions | Static Protected Member Functions | Protected Attributes | Friends | List of all members
osgDB::Registry Class Reference

#include <Registry.h>

Inheritance diagram for osgDB::Registry:
Inheritance graph
[legend]
Collaboration diagram for osgDB::Registry:
Collaboration graph
[legend]

Classes

struct  ReadFunctor
 

Public Types

enum  LoadStatus { NOT_LOADED = 0, PREVIOUSLY_LOADED, LOADED }
 
typedef std::map< std::string,
std::string > 
MimeTypeExtensionMap
 
typedef std::vector
< osg::ref_ptr< ReaderWriter > > 
ReaderWriterList
 
typedef std::vector
< osg::ref_ptr< ImageProcessor > > 
ImageProcessorList
 
typedef class
osgDB::FindFileCallback 
FindFileCallback
 
typedef class
osgDB::ReadFileCallback 
ReadFileCallback
 
typedef class
osgDB::WriteFileCallback 
WriteFileCallback
 
typedef class
osgDB::FileLocationCallback 
FileLocationCallback
 
typedef std::vector< std::string > ArchiveExtensionList
 

Public Member Functions

void readCommandLine (osg::ArgumentParser &commandLine)
 
void addFileExtensionAlias (const std::string mapExt, const std::string toExt)
 
bool readPluginAliasConfigurationFile (const std::string &file)
 
void addMimeTypeExtensionMapping (const std::string fromMimeType, const std::string toExt)
 
MimeTypeExtensionMapgetMimeTypeExtensionMap ()
 
const MimeTypeExtensionMapgetMimeTypeExtensionMap () const
 
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)
 
LoadStatus loadLibrary (const std::string &fileName)
 
bool closeLibrary (const std::string &fileName)
 
void closeAllLibraries ()
 
ReaderWritergetReaderWriterForExtension (const std::string &ext)
 
ReaderWritergetReaderWriterForMimeType (const std::string &mimeType)
 
ReaderWriterListgetReaderWriterList ()
 
const ReaderWriterListgetReaderWriterList () const
 
void getReaderWriterListForProtocol (const std::string &protocol, ReaderWriterList &results) const
 
ReaderWritergetReaderWriterForProtocolAndExtension (const std::string &protocol, const std::string &extension)
 
ImageProcessorgetImageProcessor ()
 
ImageProcessorgetImageProcessorForExtension (const std::string &ext)
 
ImageProcessorListgetImageProcessorList ()
 
const ImageProcessorListgetImageProcessorList () const
 
void setFindFileCallback (FindFileCallback *cb)
 
FindFileCallbackgetFindFileCallback ()
 
const FindFileCallbackgetFindFileCallback () const
 
std::string findDataFile (const std::string &fileName, const Options *options, CaseSensitivity 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)
 
std::string findLibraryFileImplementation (const std::string &fileName, const Options *options, CaseSensitivity caseSensitivity)
 
void setReadFileCallback (ReadFileCallback *cb)
 
ReadFileCallbackgetReadFileCallback ()
 
const ReadFileCallbackgetReadFileCallback () const
 
ReaderWriter::ReadResult openArchive (const std::string &fileName, ReaderWriter::ArchiveStatus status, unsigned int indexBlockSizeHint, const Options *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 readObjectImplementation (const std::string &fileName, const Options *options)
 
ReaderWriter::ReadResult readImage (const std::string &fileName, const Options *options)
 
ReaderWriter::ReadResult readImageImplementation (const std::string &fileName, const Options *options)
 
ReaderWriter::ReadResult readHeightField (const std::string &fileName, const Options *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 readNodeImplementation (const std::string &fileName, const Options *options)
 
ReaderWriter::ReadResult readShader (const std::string &fileName, const Options *options)
 
ReaderWriter::ReadResult readShaderImplementation (const std::string &fileName, const Options *options)
 
ReaderWriter::ReadResult readScript (const std::string &fileName, const Options *options)
 
ReaderWriter::ReadResult readScriptImplementation (const std::string &fileName, const Options *options)
 
void setWriteFileCallback (WriteFileCallback *cb)
 
WriteFileCallbackgetWriteFileCallback ()
 
const WriteFileCallbackgetWriteFileCallback () const
 
ReaderWriter::WriteResult writeObject (const osg::Object &obj, const std::string &fileName, const Options *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)
 
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)
 
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)
 
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)
 
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)
 
ReaderWriter::WriteResult writeScriptImplementation (const osg::Script &obj, const std::string &fileName, const Options *options)
 
void _buildKdTreeIfRequired (ReaderWriter::ReadResult &result, const Options *options)
 
void setFileLocationCallback (FileLocationCallback *cb)
 
FileLocationCallbackgetFileLocationCallback () const
 
void setBuildKdTreesHint (Options::BuildKdTreesHint hint)
 
Options::BuildKdTreesHint getBuildKdTreesHint () const
 
void setKdTreeBuilder (osg::KdTreeBuilder *builder)
 
osg::KdTreeBuildergetKdTreeBuilder ()
 
void setFileCache (FileCache *fileCache)
 
FileCachegetFileCache ()
 
const FileCachegetFileCache () const
 
void setAuthenticationMap (AuthenticationMap *authenticationMap)
 
AuthenticationMapgetAuthenticationMap ()
 
const AuthenticationMapgetAuthenticationMap () const
 
void setCreateNodeFromImage (bool flag)
 
bool getCreateNodeFromImage () const
 
void setOptions (Options *opt)
 
OptionsgetOptions ()
 
const OptionsgetOptions () const
 
void initFilePathLists ()
 
void initDataFilePathList ()
 
void setDataFilePathList (const FilePathList &filepath)
 
void setDataFilePathList (const std::string &paths)
 
FilePathListgetDataFilePathList ()
 
const FilePathListgetDataFilePathList () const
 
void initLibraryFilePathList ()
 
void setLibraryFilePathList (const FilePathList &filepath)
 
void setLibraryFilePathList (const std::string &paths)
 
FilePathListgetLibraryFilePathList ()
 
const FilePathListgetLibraryFilePathList () const
 
void setObjectCache (ObjectCache *objectCache)
 
ObjectCachegetObjectCache ()
 
const ObjectCachegetObjectCache () const
 
void setExpiryDelay (double expiryDelay)
 
double getExpiryDelay () const
 
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)
 
void removeFromObjectCache (const std::string &fileName)
 
osg::ObjectgetFromObjectCache (const std::string &fileName)
 
osg::ref_ptr< osg::ObjectgetRefFromObjectCache (const std::string &fileName)
 
void addToArchiveCache (const std::string &fileName, osgDB::Archive *archive)
 
void removeFromArchiveCache (const std::string &fileName)
 
osgDB::ArchivegetFromArchiveCache (const std::string &fileName)
 
osg::ref_ptr< osgDB::ArchivegetRefFromArchiveCache (const std::string &fileName)
 
void clearArchiveCache ()
 
void releaseGLObjects (osg::State *state=0)
 
DynamicLibrarygetLibrary (const std::string &fileName)
 
void setSharedStateManager (SharedStateManager *SharedStateManager)
 
SharedStateManagergetOrCreateSharedStateManager ()
 
SharedStateManagergetSharedStateManager ()
 
void addArchiveExtension (const std::string ext)
 
void registerProtocol (const std::string &protocol)
 
bool isProtocolRegistered (const std::string &protocol)
 
ObjectWrapperManagergetObjectWrapperManager ()
 
DeprecatedDotOsgWrapperManagergetDeprecatedDotOsgObjectWrapperManager ()
 
const ArchiveExtensionListgetArchiveExtensions () const
 
- Public Member Functions inherited from osg::Referenced
 Referenced ()
 
 Referenced (bool threadSafeRefUnref)
 
 Referenced (const Referenced &)
 
Referencedoperator= (const Referenced &)
 
virtual void setThreadSafeRefUnref (bool threadSafe)
 
bool getThreadSafeRefUnref () const
 
OpenThreads::MutexgetRefMutex () const
 
int ref () const
 
int unref () const
 
int unref_nodelete () const
 
int referenceCount () const
 
ObserverSetgetObserverSet () const
 
ObserverSetgetOrCreateObserverSet () const
 
void addObserver (Observer *observer) const
 
void removeObserver (Observer *observer) const
 

Static Public Member Functions

static Registryinstance (bool erase=false)
 
- Static Public Member Functions inherited from osg::Referenced
static OpenThreads::MutexgetGlobalReferencedMutex ()
 
static void setThreadSafeReferenceCounting (bool enableThreadSafeReferenceCounting)
 
static bool getThreadSafeReferenceCounting ()
 
static void setDeleteHandler (DeleteHandler *handler)
 
static DeleteHandlergetDeleteHandler ()
 

Protected Types

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
 

Protected Member Functions

virtual ~Registry ()
 
 Registry ()
 
DynamicLibraryList::iterator getLibraryItr (const std::string &fileName)
 
void destruct ()
 
ReaderWriter::ReadResult read (const ReadFunctor &readFunctor)
 
ReaderWriter::ReadResult readImplementation (const ReadFunctor &readFunctor, Options::CacheHintOptions cacheHint)
 
- Protected Member Functions inherited from osg::Referenced
virtual ~Referenced ()
 
void signalObserversAndDelete (bool signalDelete, bool doDelete) const
 
void deleteUsingDeleteHandler () const
 

Static Protected Member Functions

static std::string trim (const std::string &str)
 

Protected Attributes

Options::BuildKdTreesHint _buildKdTreesHint
 
osg::ref_ptr< osg::KdTreeBuilder_kdTreeBuilder
 
osg::ref_ptr< FileCache_fileCache
 
osg::ref_ptr< AuthenticationMap_authenticationMap
 
bool _createNodeFromImage
 
RegisteredProtocolsSet _registeredProtocols
 
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
 
ExtensionAliasMap _extAliasMap
 
MimeTypeExtensionMap _mimeTypeExtMap
 
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
 
- Protected Attributes inherited from osg::Referenced
OpenThreads::AtomicPtr _observerSet
 
OpenThreads::Atomic _refCount
 

Friends

struct ReadFunctor
 
struct ReadObjectFunctor
 
struct ReadImageFunctor
 
struct ReadHeightFieldFunctor
 
struct ReadNodeFunctor
 
struct ReadArchiveFunctor
 
struct ReadShaderFunctor
 
struct ReadScriptFunctor
 
class AvailableReaderWriterIterator
 
class AvailableArchiveIterator
 

Detailed Description

Registry is a singleton factory which stores the reader/writers which are linked in at runtime for reading non-native file formats.

The RegisterReaderWriterProxy can be used to automatically register at runtime a reader/writer with the Registry.

Definition at line 53 of file Registry.h.

Member Typedef Documentation

typedef std::map<std::string, osg::ref_ptr<osgDB::Archive> > osgDB::Registry::ArchiveCache
protected

Definition at line 525 of file Registry.h.

typedef std::vector< std::string> osgDB::Registry::ArchiveExtensionList

Definition at line 515 of file Registry.h.

Definition at line 522 of file Registry.h.

typedef std::map< std::string, std::string> osgDB::Registry::ExtensionAliasMap
protected

Definition at line 523 of file Registry.h.

Definition at line 157 of file Registry.h.

Definition at line 154 of file Registry.h.

Definition at line 139 of file Registry.h.

typedef std::map< std::string, std::string> osgDB::Registry::MimeTypeExtensionMap

Definition at line 77 of file Registry.h.

Definition at line 118 of file Registry.h.

Definition at line 155 of file Registry.h.

typedef std::set<std::string> osgDB::Registry::RegisteredProtocolsSet
protected

Definition at line 527 of file Registry.h.

Definition at line 156 of file Registry.h.

Member Enumeration Documentation

Enumerator
NOT_LOADED 
PREVIOUSLY_LOADED 
LOADED 

Definition at line 103 of file Registry.h.

Constructor & Destructor Documentation

virtual osgDB::Registry::~Registry ( )
protectedvirtual
osgDB::Registry::Registry ( )
protected

constructor is private, as its a singleton, preventing construction other than via the instance() method and therefore ensuring only one copy is ever constructed

Member Function Documentation

void osgDB::Registry::_buildKdTreeIfRequired ( ReaderWriter::ReadResult result,
const Options options 
)
inline

Definition at line 322 of file Registry.h.

Here is the call graph for this function:

void osgDB::Registry::addArchiveExtension ( const std::string  ext)

Add an Archive extension.

void osgDB::Registry::addEntryToObjectCache ( const std::string &  filename,
osg::Object object,
double  timestamp = 0.0 
)

Add a filename,object,timestamp triple to the Registry::ObjectCache.

void osgDB::Registry::addFileExtensionAlias ( const std::string  mapExt,
const std::string  toExt 
)

register an .fileextension alias to mapExt toExt, the later should be the extension name of the readerwriter plugin library. For example to map .tif files to the tiff loader, use addExtAlias("tif","tiff") which will enable .tif to be read by the libdb_tiff readerwriter plugin.

void osgDB::Registry::addImageProcessor ( ImageProcessor ip)

Here is the caller graph for this function:

void osgDB::Registry::addMimeTypeExtensionMapping ( const std::string  fromMimeType,
const std::string  toExt 
)

Registers a mapping of a mime-type to an extension. A process fetching data over HTTP can use this facility to determine the proper ReaderWriter to use when there is no filename extension to rely upon.

void osgDB::Registry::addReaderWriter ( ReaderWriter rw)

Here is the caller graph for this function:

void osgDB::Registry::addToArchiveCache ( const std::string &  fileName,
osgDB::Archive archive 
)

Add archive to archive cache so that future calls reference this archive.

void osgDB::Registry::clearArchiveCache ( )

Remove all archives from the archive cache.

void osgDB::Registry::clearObjectCache ( )

Remove all objects in the cache regardless of having external references or expiry times.

void osgDB::Registry::closeAllLibraries ( )

close all libraries.

bool osgDB::Registry::closeLibrary ( const std::string &  fileName)

close the attached library with specified name.

std::string osgDB::Registry::createLibraryNameForExtension ( const std::string &  ext)

create the platform specific library name associated with file extension.

std::string osgDB::Registry::createLibraryNameForFile ( const std::string &  fileName)

create the platform specific library name associated with file.

std::string osgDB::Registry::createLibraryNameForNodeKit ( const std::string &  name)

create the platform specific library name associated with nodekit library name.

void osgDB::Registry::destruct ( )
protected
std::string osgDB::Registry::findDataFile ( const std::string &  fileName,
const Options options,
CaseSensitivity  caseSensitivity 
)
inline

Definition at line 169 of file Registry.h.

Here is the call graph for this function:

std::string osgDB::Registry::findDataFileImplementation ( const std::string &  fileName,
const Options options,
CaseSensitivity  caseSensitivity 
)
std::string osgDB::Registry::findLibraryFile ( const std::string &  fileName,
const Options options,
CaseSensitivity  caseSensitivity 
)
inline

Definition at line 177 of file Registry.h.

Here is the call graph for this function:

std::string osgDB::Registry::findLibraryFileImplementation ( const std::string &  fileName,
const Options options,
CaseSensitivity  caseSensitivity 
)
const ArchiveExtensionList& osgDB::Registry::getArchiveExtensions ( ) const
inline

Definition at line 516 of file Registry.h.

AuthenticationMap* osgDB::Registry::getAuthenticationMap ( )
inline

Get the password map to be used by plugins when access files from secure locations.

Definition at line 370 of file Registry.h.

const AuthenticationMap* osgDB::Registry::getAuthenticationMap ( ) const
inline

Get the password map to be used by plugins when access files from secure locations.

Definition at line 373 of file Registry.h.

Options::BuildKdTreesHint osgDB::Registry::getBuildKdTreesHint ( ) const
inline

Get whether the KdTrees should be built for geometry in the loader model.

Definition at line 347 of file Registry.h.

bool osgDB::Registry::getCreateNodeFromImage ( ) const
inline

Definition at line 377 of file Registry.h.

FilePathList& osgDB::Registry::getDataFilePathList ( )
inline

get the data file path which is used when search for data files.

Definition at line 400 of file Registry.h.

Here is the caller graph for this function:

const FilePathList& osgDB::Registry::getDataFilePathList ( ) const
inline

get the const data file path which is used when search for data files.

Definition at line 403 of file Registry.h.

DeprecatedDotOsgWrapperManager* osgDB::Registry::getDeprecatedDotOsgObjectWrapperManager ( )
inline

Get the ObjectWrapperManager that is used to store all the ObjectWrappers.

Definition at line 513 of file Registry.h.

double osgDB::Registry::getExpiryDelay ( ) const
inline

Definition at line 435 of file Registry.h.

FileCache* osgDB::Registry::getFileCache ( )
inline

Get the FileCache that is used to manage local storage of files downloaded from the internet.

Definition at line 360 of file Registry.h.

const FileCache* osgDB::Registry::getFileCache ( ) const
inline

Get the const FileCache that is used to manage local storage of files downloaded from the internet.

Definition at line 363 of file Registry.h.

FileLocationCallback* osgDB::Registry::getFileLocationCallback ( ) const
inline

Get the callback to use inform to the DatabasePager whether a file is located on local or remote file system.

Definition at line 339 of file Registry.h.

FindFileCallback* osgDB::Registry::getFindFileCallback ( )
inline

Get the findFile callback.

Definition at line 163 of file Registry.h.

const FindFileCallback* osgDB::Registry::getFindFileCallback ( ) const
inline

Get the const findFile callback.

Definition at line 166 of file Registry.h.

osgDB::Archive* osgDB::Registry::getFromArchiveCache ( const std::string &  fileName)

Get an Archive from the archive cache.

osg::Object* osgDB::Registry::getFromObjectCache ( const std::string &  fileName)

Get an Object from the object cache

ImageProcessor* osgDB::Registry::getImageProcessor ( )

get a image processor if available.

ImageProcessor* osgDB::Registry::getImageProcessorForExtension ( const std::string &  ext)

get a image processor which is associated specified extension.

ImageProcessorList& osgDB::Registry::getImageProcessorList ( )
inline

get list of all registered ImageProcessors.

Definition at line 148 of file Registry.h.

const ImageProcessorList& osgDB::Registry::getImageProcessorList ( ) const
inline

get const list of all registered ImageProcessors.

Definition at line 151 of file Registry.h.

osg::KdTreeBuilder* osgDB::Registry::getKdTreeBuilder ( )
inline

Get the KdTreeBuilder visitor that is used to build KdTree on loaded models.

Definition at line 353 of file Registry.h.

DynamicLibrary* osgDB::Registry::getLibrary ( const std::string &  fileName)

get the attached library with specified name.

FilePathList& osgDB::Registry::getLibraryFilePathList ( )
inline

get the library file path which is used when search for library (dso/dll's) files.

Definition at line 416 of file Registry.h.

Here is the caller graph for this function:

const FilePathList& osgDB::Registry::getLibraryFilePathList ( ) const
inline

get the const library file path which is used when search for library (dso/dll's) files.

Definition at line 419 of file Registry.h.

DynamicLibraryList::iterator osgDB::Registry::getLibraryItr ( const std::string &  fileName)
protected

get the attached library with specified name.

MimeTypeExtensionMap& osgDB::Registry::getMimeTypeExtensionMap ( )
inline

Definition at line 84 of file Registry.h.

const MimeTypeExtensionMap& osgDB::Registry::getMimeTypeExtensionMap ( ) const
inline

Definition at line 85 of file Registry.h.

ObjectCache* osgDB::Registry::getObjectCache ( )
inline

Get the ObjectCache that is used to manage local storage of files downloaded from the internet.

Definition at line 427 of file Registry.h.

const ObjectCache* osgDB::Registry::getObjectCache ( ) const
inline

Get the const ObjectCache that is used to manage local storage of files downloaded from the internet.

Definition at line 430 of file Registry.h.

ObjectWrapperManager* osgDB::Registry::getObjectWrapperManager ( )
inline

Get the ObjectWrapperManager that is used to store all the ObjectWrappers.

Definition at line 510 of file Registry.h.

Options* osgDB::Registry::getOptions ( )
inline

Definition at line 381 of file Registry.h.

Here is the caller graph for this function:

const Options* osgDB::Registry::getOptions ( ) const
inline

Definition at line 382 of file Registry.h.

SharedStateManager* osgDB::Registry::getOrCreateSharedStateManager ( )

Get the SharedStateManager, creating one if one is not already created.

ReaderWriter* osgDB::Registry::getReaderWriterForExtension ( const std::string &  ext)

get a reader writer which handles specified extension.

ReaderWriter* osgDB::Registry::getReaderWriterForMimeType ( const std::string &  mimeType)

gets a reader/writer that handles the extension mapped to by one of the registered mime-types.

ReaderWriter* osgDB::Registry::getReaderWriterForProtocolAndExtension ( const std::string &  protocol,
const std::string &  extension 
)
ReaderWriterList& osgDB::Registry::getReaderWriterList ( )
inline

get list of all registered ReaderWriters.

Definition at line 128 of file Registry.h.

const ReaderWriterList& osgDB::Registry::getReaderWriterList ( ) const
inline

get const list of all registered ReaderWriters.

Definition at line 131 of file Registry.h.

void osgDB::Registry::getReaderWriterListForProtocol ( const std::string &  protocol,
ReaderWriterList results 
) const

get a list of registered ReaderWriters which can handle given protocol

ReadFileCallback* osgDB::Registry::getReadFileCallback ( )
inline

Get the readFile callback.

Definition at line 191 of file Registry.h.

const ReadFileCallback* osgDB::Registry::getReadFileCallback ( ) const
inline

Get the const readFile callback.

Definition at line 194 of file Registry.h.

osg::ref_ptr<osgDB::Archive> osgDB::Registry::getRefFromArchiveCache ( const std::string &  fileName)

Get an ref_ptr<Archive> from the archive cache.

osg::ref_ptr<osg::Object> osgDB::Registry::getRefFromObjectCache ( const std::string &  fileName)

Get an ref_ptr<Object> from the object cache

SharedStateManager* osgDB::Registry::getSharedStateManager ( )
inline

Get the SharedStateManager. Return 0 if no SharedStateManager has been assigned.

Definition at line 498 of file Registry.h.

WriteFileCallback* osgDB::Registry::getWriteFileCallback ( )
inline

Get the writeFile callback.

Definition at line 268 of file Registry.h.

const WriteFileCallback* osgDB::Registry::getWriteFileCallback ( ) const
inline

Get the const writeFile callback.

Definition at line 271 of file Registry.h.

void osgDB::Registry::initDataFilePathList ( )

initialize the Data FilePath by reading the OSG_FILE_PATH environmental variable.

void osgDB::Registry::initFilePathLists ( )
inline

initialize both the Data and Library FilePaths, by default called by the constructor, so it should only be required if you want to force the re-reading of environmental variables.

Definition at line 388 of file Registry.h.

void osgDB::Registry::initLibraryFilePathList ( )

initialize the Library FilePath by reading the OSG_LIBRARY_PATH and the appropriate system environmental variables

static Registry* osgDB::Registry::instance ( bool  erase = false)
static

Here is the caller graph for this function:

bool osgDB::Registry::isProtocolRegistered ( const std::string &  protocol)

returns true, if named protocol is registered

LoadStatus osgDB::Registry::loadLibrary ( const std::string &  fileName)

find the library in the OSG_LIBRARY_PATH and load it.

ReaderWriter::ReadResult osgDB::Registry::openArchive ( const std::string &  fileName,
ReaderWriter::ArchiveStatus  status,
unsigned int  indexBlockSizeHint,
const Options options 
)
inline

Definition at line 197 of file Registry.h.

Here is the call graph for this function:

ReaderWriter::ReadResult osgDB::Registry::openArchiveImplementation ( const std::string &  fileName,
ReaderWriter::ArchiveStatus  status,
unsigned int  indexBlockSizeHint,
const Options options 
)
ReaderWriter::ReadResult osgDB::Registry::read ( const ReadFunctor readFunctor)
protected
void osgDB::Registry::readCommandLine ( osg::ArgumentParser commandLine)

read the command line arguments.

Here is the caller graph for this function:

ReaderWriter::ReadResult osgDB::Registry::readHeightField ( const std::string &  fileName,
const Options options 
)
inline

Definition at line 226 of file Registry.h.

Here is the call graph for this function:

ReaderWriter::ReadResult osgDB::Registry::readHeightFieldImplementation ( const std::string &  fileName,
const Options options 
)
ReaderWriter::ReadResult osgDB::Registry::readImage ( const std::string &  fileName,
const Options options 
)
inline

Definition at line 218 of file Registry.h.

Here is the call graph for this function:

ReaderWriter::ReadResult osgDB::Registry::readImageImplementation ( const std::string &  fileName,
const Options options 
)
ReaderWriter::ReadResult osgDB::Registry::readImplementation ( const ReadFunctor readFunctor,
Options::CacheHintOptions  cacheHint 
)
protected
ReaderWriter::ReadResult osgDB::Registry::readNode ( const std::string &  fileName,
const Options options,
bool  buildKdTreeIfRequired = true 
)
inline

Definition at line 234 of file Registry.h.

Here is the call graph for this function:

ReaderWriter::ReadResult osgDB::Registry::readNodeImplementation ( const std::string &  fileName,
const Options options 
)
ReaderWriter::ReadResult osgDB::Registry::readObject ( const std::string &  fileName,
const Options options,
bool  buildKdTreeIfRequired = true 
)
inline

Definition at line 205 of file Registry.h.

Here is the call graph for this function:

ReaderWriter::ReadResult osgDB::Registry::readObjectImplementation ( const std::string &  fileName,
const Options options 
)
bool osgDB::Registry::readPluginAliasConfigurationFile ( const std::string &  file)

Reads a file that configures extension mappings. File is ASCII text and each line contains the parameters to the addFileExtensionAlias method. Lines can be commented out with an initial '#' character.

ReaderWriter::ReadResult osgDB::Registry::readScript ( const std::string &  fileName,
const Options options 
)
inline

Definition at line 255 of file Registry.h.

Here is the call graph for this function:

ReaderWriter::ReadResult osgDB::Registry::readScriptImplementation ( const std::string &  fileName,
const Options options 
)
ReaderWriter::ReadResult osgDB::Registry::readShader ( const std::string &  fileName,
const Options options 
)
inline

Definition at line 247 of file Registry.h.

Here is the call graph for this function:

ReaderWriter::ReadResult osgDB::Registry::readShaderImplementation ( const std::string &  fileName,
const Options options 
)
void osgDB::Registry::registerProtocol ( const std::string &  protocol)

registers a protocol

void osgDB::Registry::releaseGLObjects ( osg::State state = 0)

If State is non-zero, this function releases OpenGL objects for the specified graphics context. Otherwise, releases OpenGL objexts for all graphics contexts.

void osgDB::Registry::removeExpiredObjectsInCache ( const osg::FrameStamp frameStamp)

Removed object in the cache which have a time stamp at or before the specified expiry time. This would typically be called once per frame by applications which are doing database paging, and need to prune objects that are no longer required, and called after the a called after the call to updateTimeStampOfObjectsInCacheWithExternalReferences(frameStamp).

void osgDB::Registry::removeFromArchiveCache ( const std::string &  fileName)

Remove Archive from cache.

void osgDB::Registry::removeFromObjectCache ( const std::string &  fileName)

Remove Object from cache.

void osgDB::Registry::removeImageProcessor ( ImageProcessor ip)

Here is the caller graph for this function:

void osgDB::Registry::removeReaderWriter ( ReaderWriter rw)

Here is the caller graph for this function:

void osgDB::Registry::setAuthenticationMap ( AuthenticationMap authenticationMap)
inline

Set the password map to be used by plugins when access files from secure locations.

Definition at line 367 of file Registry.h.

void osgDB::Registry::setBuildKdTreesHint ( Options::BuildKdTreesHint  hint)
inline

Set whether the KdTrees should be built for geometry in the loader model.

Definition at line 344 of file Registry.h.

void osgDB::Registry::setCreateNodeFromImage ( bool  flag)
inline

Definition at line 376 of file Registry.h.

void osgDB::Registry::setDataFilePathList ( const FilePathList filepath)
inline

Set the data file path using a list of paths stored in a FilePath, which is used when search for data files.

Definition at line 394 of file Registry.h.

Here is the caller graph for this function:

void osgDB::Registry::setDataFilePathList ( const std::string &  paths)

Set the data file path using a single string delimited either with ';' (Windows) or ':' (All other platforms), which is used when search for data files.

void osgDB::Registry::setExpiryDelay ( double  expiryDelay)
inline

set hint to viewer code calling removeExpiredObjectsInCache to specify how long it should give before expiring objects in Registry cache,

Definition at line 433 of file Registry.h.

void osgDB::Registry::setFileCache ( FileCache fileCache)
inline

Set the FileCache that is used to manage local storage of files downloaded from the internet.

Definition at line 357 of file Registry.h.

void osgDB::Registry::setFileLocationCallback ( FileLocationCallback cb)
inline

Set the callback to use inform to the DatabasePager whether a file is located on local or remote file system.

Definition at line 336 of file Registry.h.

void osgDB::Registry::setFindFileCallback ( FindFileCallback cb)
inline

Set the Registry callback to use in place of the default findFile calls.

Definition at line 160 of file Registry.h.

void osgDB::Registry::setKdTreeBuilder ( osg::KdTreeBuilder builder)
inline

Set the KdTreeBuilder visitor that is used to build KdTree on loaded models.

Definition at line 350 of file Registry.h.

void osgDB::Registry::setLibraryFilePathList ( const FilePathList filepath)
inline

Set the library file path using a list of paths stored in a FilePath, which is used when search for data files.

Definition at line 410 of file Registry.h.

Here is the caller graph for this function:

void osgDB::Registry::setLibraryFilePathList ( const std::string &  paths)

Set the library file path using a single string delimited either with ';' (Windows) or ':' (All other platforms), which is used when search for data files.

void osgDB::Registry::setObjectCache ( ObjectCache objectCache)
inline

Set the ObjectCache that is used to manage local storage of files downloaded from the internet.

Definition at line 424 of file Registry.h.

void osgDB::Registry::setOptions ( Options opt)
inline

Definition at line 380 of file Registry.h.

void osgDB::Registry::setReadFileCallback ( ReadFileCallback cb)
inline

Set the Registry callback to use in place of the default readFile calls.

Definition at line 188 of file Registry.h.

void osgDB::Registry::setSharedStateManager ( SharedStateManager SharedStateManager)
inline

Set the SharedStateManager.

Definition at line 492 of file Registry.h.

void osgDB::Registry::setWriteFileCallback ( WriteFileCallback cb)
inline

Set the Registry callback to use in place of the default writeFile calls.

Definition at line 265 of file Registry.h.

static std::string osgDB::Registry::trim ( const std::string &  str)
staticprotected
void osgDB::Registry::updateTimeStampOfObjectsInCacheWithExternalReferences ( const osg::FrameStamp frameStamp)

For each object in the cache which has an reference count greater than 1 (and therefore referenced by elsewhere in the application) set the time stamp for that object in the cache to specified time. This would typically be called once per frame by applications which are doing database paging, and need to prune objects that are no longer required. The time used is taken from the FrameStamp::getReferenceTime().

ReaderWriter::WriteResult osgDB::Registry::writeHeightField ( const osg::HeightField obj,
const std::string &  fileName,
const Options options 
)
inline

Definition at line 290 of file Registry.h.

Here is the call graph for this function:

ReaderWriter::WriteResult osgDB::Registry::writeHeightFieldImplementation ( const osg::HeightField obj,
const std::string &  fileName,
const Options options 
)
ReaderWriter::WriteResult osgDB::Registry::writeImage ( const osg::Image obj,
const std::string &  fileName,
const Options options 
)
inline

Definition at line 282 of file Registry.h.

Here is the call graph for this function:

ReaderWriter::WriteResult osgDB::Registry::writeImageImplementation ( const osg::Image obj,
const std::string &  fileName,
const Options options 
)
ReaderWriter::WriteResult osgDB::Registry::writeNode ( const osg::Node node,
const std::string &  fileName,
const Options options 
)
inline

Definition at line 298 of file Registry.h.

Here is the call graph for this function:

ReaderWriter::WriteResult osgDB::Registry::writeNodeImplementation ( const osg::Node node,
const std::string &  fileName,
const Options options 
)
ReaderWriter::WriteResult osgDB::Registry::writeObject ( const osg::Object obj,
const std::string &  fileName,
const Options options 
)
inline

Definition at line 274 of file Registry.h.

Here is the call graph for this function:

ReaderWriter::WriteResult osgDB::Registry::writeObjectImplementation ( const osg::Object obj,
const std::string &  fileName,
const Options options 
)
ReaderWriter::WriteResult osgDB::Registry::writeScript ( const osg::Script obj,
const std::string &  fileName,
const Options options 
)
inline

Definition at line 314 of file Registry.h.

Here is the call graph for this function:

ReaderWriter::WriteResult osgDB::Registry::writeScriptImplementation ( const osg::Script obj,
const std::string &  fileName,
const Options options 
)
ReaderWriter::WriteResult osgDB::Registry::writeShader ( const osg::Shader obj,
const std::string &  fileName,
const Options options 
)
inline

Definition at line 306 of file Registry.h.

Here is the call graph for this function:

ReaderWriter::WriteResult osgDB::Registry::writeShaderImplementation ( const osg::Shader obj,
const std::string &  fileName,
const Options options 
)

Friends And Related Function Documentation

friend class AvailableArchiveIterator
friend

Definition at line 597 of file Registry.h.

friend class AvailableReaderWriterIterator
friend

Definition at line 595 of file Registry.h.

friend struct ReadArchiveFunctor
friend

Definition at line 586 of file Registry.h.

friend struct ReadFunctor
friend

Definition at line 578 of file Registry.h.

friend struct ReadHeightFieldFunctor
friend

Definition at line 584 of file Registry.h.

friend struct ReadImageFunctor
friend

Definition at line 583 of file Registry.h.

friend struct ReadNodeFunctor
friend

Definition at line 585 of file Registry.h.

friend struct ReadObjectFunctor
friend

Definition at line 582 of file Registry.h.

friend struct ReadScriptFunctor
friend

Definition at line 588 of file Registry.h.

friend struct ReadShaderFunctor
friend

Definition at line 587 of file Registry.h.

Member Data Documentation

ArchiveCache osgDB::Registry::_archiveCache
protected

Definition at line 612 of file Registry.h.

OpenThreads::ReentrantMutex osgDB::Registry::_archiveCacheMutex
protected

Definition at line 611 of file Registry.h.

ArchiveExtensionList osgDB::Registry::_archiveExtList
protected

Definition at line 636 of file Registry.h.

osg::ref_ptr<AuthenticationMap> osgDB::Registry::_authenticationMap
protected

Definition at line 542 of file Registry.h.

Options::BuildKdTreesHint osgDB::Registry::_buildKdTreesHint
protected

Definition at line 537 of file Registry.h.

bool osgDB::Registry::_createNodeFromImage
protected

Definition at line 544 of file Registry.h.

FilePathList osgDB::Registry::_dataFilePath
protected

Definition at line 628 of file Registry.h.

osg::ref_ptr<DeprecatedDotOsgWrapperManager> osgDB::Registry::_deprecatedDotOsgWrapperManager
protected

Definition at line 641 of file Registry.h.

DynamicLibraryList osgDB::Registry::_dlList
protected

Definition at line 609 of file Registry.h.

double osgDB::Registry::_expiryDelay
protected

Definition at line 633 of file Registry.h.

ExtensionAliasMap osgDB::Registry::_extAliasMap
protected

Definition at line 617 of file Registry.h.

osg::ref_ptr<FileCache> osgDB::Registry::_fileCache
protected

Definition at line 540 of file Registry.h.

osg::ref_ptr<FileLocationCallback> osgDB::Registry::_fileLocationCallback
protected

Definition at line 604 of file Registry.h.

osg::ref_ptr<FindFileCallback> osgDB::Registry::_findFileCallback
protected

Definition at line 601 of file Registry.h.

ImageProcessorList osgDB::Registry::_ipList
protected

Definition at line 608 of file Registry.h.

osg::ref_ptr<osg::KdTreeBuilder> osgDB::Registry::_kdTreeBuilder
protected

Definition at line 538 of file Registry.h.

FilePathList osgDB::Registry::_libraryFilePath
protected

Definition at line 629 of file Registry.h.

MimeTypeExtensionMap osgDB::Registry::_mimeTypeExtMap
protected

Definition at line 620 of file Registry.h.

osg::ref_ptr<ObjectCache> osgDB::Registry::_objectCache
protected

Definition at line 631 of file Registry.h.

osg::ref_ptr<ObjectWrapperManager> osgDB::Registry::_objectWrapperManager
protected

Definition at line 640 of file Registry.h.

bool osgDB::Registry::_openingLibrary
protected

Definition at line 614 of file Registry.h.

osg::ref_ptr<Options> osgDB::Registry::_options
protected

Definition at line 626 of file Registry.h.

OpenThreads::ReentrantMutex osgDB::Registry::_pluginMutex
protected

Definition at line 606 of file Registry.h.

osg::ref_ptr<ReadFileCallback> osgDB::Registry::_readFileCallback
protected

Definition at line 602 of file Registry.h.

RegisteredProtocolsSet osgDB::Registry::_registeredProtocols
protected

Definition at line 546 of file Registry.h.

ReaderWriterList osgDB::Registry::_rwList
protected

Definition at line 607 of file Registry.h.

osg::ref_ptr<SharedStateManager> osgDB::Registry::_sharedStateManager
protected

Definition at line 638 of file Registry.h.

osg::ref_ptr<WriteFileCallback> osgDB::Registry::_writeFileCallback
protected

Definition at line 603 of file Registry.h.


The documentation for this class was generated from the following file: