15#define OSGDB_REGISTRY 1
172 else if (_findFileCallback.valid())
return _findFileCallback->findDataFile(fileName, options, caseSensitivity);
173 else return findDataFileImplementation(fileName, options, caseSensitivity);
180 else if (_findFileCallback.valid())
return _findFileCallback->findLibraryFile(fileName, options, caseSensitivity);
181 else return findLibraryFileImplementation(fileName, options, caseSensitivity);
200 else if (_readFileCallback.valid())
return _readFileCallback->openArchive(fileName, status, indexBlockSizeHint, options);
201 else return openArchiveImplementation(fileName, status, indexBlockSizeHint, options);
209 else if (_readFileCallback.valid()) result = _readFileCallback->readObject(fileName,options);
210 else result = readObjectImplementation(fileName,options);
212 if (buildKdTreeIfRequired) _buildKdTreeIfRequired(result, options);
221 else if (_readFileCallback.valid())
return _readFileCallback->readImage(fileName,options);
222 else return readImageImplementation(fileName,options);
229 else if (_readFileCallback.valid())
return _readFileCallback->readHeightField(fileName,options);
230 else return readHeightFieldImplementation(fileName,options);
238 else if (_readFileCallback.valid()) result = _readFileCallback->readNode(fileName,options);
239 else result = readNodeImplementation(fileName,options);
241 if (buildKdTreeIfRequired) _buildKdTreeIfRequired(result, options);
250 if (_readFileCallback.valid())
return _readFileCallback->readShader(fileName,options);
251 else return readShaderImplementation(fileName,options);
258 else if (_readFileCallback.valid())
return _readFileCallback->readScript(fileName,options);
259 else return readScriptImplementation(fileName,options);
277 else if (_writeFileCallback.valid())
return _writeFileCallback->writeObject(obj,fileName,options);
278 else return writeObjectImplementation(obj,fileName,options);
285 else if (_writeFileCallback.valid())
return _writeFileCallback->writeImage(obj,fileName,options);
286 else return writeImageImplementation(obj,fileName,options);
293 else if (_writeFileCallback.valid())
return _writeFileCallback->writeHeightField(obj,fileName,options);
294 else return writeHeightFieldImplementation(obj,fileName,options);
301 else if (_writeFileCallback.valid())
return _writeFileCallback->writeNode(node,fileName,options);
302 else return writeNodeImplementation(node,fileName,options);
309 else if (_writeFileCallback.valid())
return _writeFileCallback->writeShader(obj,fileName,options);
310 else return writeShaderImplementation(obj,fileName,options);
317 else if (_writeFileCallback.valid())
return _writeFileCallback->writeScript(obj,fileName,options);
318 else return writeScriptImplementation(obj,fileName,options);
324 bool doKdTreeBuilder = (options && options->
getBuildKdTreesHint()!=Options::NO_PREFERENCE) ?
326 _buildKdTreesHint == Options::BUILD_KDTREES;
328 if (doKdTreeBuilder && _kdTreeBuilder.valid() && result.
validNode())
373 return _authenticationMap.get();
532 typedef std::map<std::string, osg::ref_ptr<osgDB::Archive> >
ArchiveCache;
579 struct ReadObjectFunctor;
580 struct ReadImageFunctor;
581 struct ReadHeightFieldFunctor;
582 struct ReadNodeFunctor;
583 struct ReadArchiveFunctor;
584 struct ReadShaderFunctor;
585 struct ReadScriptFunctor;
589 friend struct ReadObjectFunctor;
590 friend struct ReadImageFunctor;
591 friend struct ReadHeightFieldFunctor;
592 friend struct ReadNodeFunctor;
593 friend struct ReadArchiveFunctor;
594 friend struct ReadShaderFunctor;
595 friend struct ReadScriptFunctor;
602 class AvailableReaderWriterIterator;
603 friend class AvailableReaderWriterIterator;
604 class AvailableArchiveIterator;
605 friend class AvailableArchiveIterator;
630 static std::string
trim(
const std::string& str );
719#define USE_OSGPLUGIN(ext) \
720 extern "C" void osgdb_##ext(void); \
721 static osgDB::PluginFunctionProxy proxy_##ext(osgdb_##ext);
723#define USE_DOTOSGWRAPPER(classname) \
724 extern "C" void dotosgwrapper_##classname(void); \
725 static osgDB::PluginFunctionProxy proxy_dotosgwrapper_##classname(dotosgwrapper_##classname);
727#define USE_DOTOSGWRAPPER_LIBRARY(libname) \
728 extern "C" void dotosgwrapper_library_##libname(void); \
729 static osgDB::PluginFunctionProxy proxy_dotosgwrapper_library_##libname(dotosgwrapper_library_##libname);
731#define USE_SERIALIZER_WRAPPER(classname) \
732 extern "C" void wrapper_serializer_##classname(void); \
733 static osgDB::PluginFunctionProxy proxy_serializer_##classname(wrapper_serializer_##classname);
735#define USE_SERIALIZER_WRAPPER_LIBRARY(libname) \
736 extern "C" void wrapper_serializer_library_##libname(void); \
737 static osgDB::PluginFunctionProxy proxy_serializer_library_##libname(wrapper_serializer_library_##libname);
739#define USE_COMPRESSOR_WRAPPER(classname) \
740 extern "C" void wrapper_compressor_##classname(void); \
741 static osgDB::PluginFunctionProxy proxy_compressor_##classname(wrapper_compressor_##classname);
743#define REGISTER_OSGPLUGIN(ext, classname) \
744 extern "C" void osgdb_##ext(void) {} \
745 static osgDB::RegisterReaderWriterProxy<classname> g_proxy_##classname;
747#define REGISTER_OSGIMAGEPROCESSOR(ext, classname) \
748 extern "C" void osgdb_##ext(void) {} \
749 static osgDB::RegisterImageProcessorProxy<classname> g_proxy_##classname;
Definition ReentrantMutex:24
Definition AuthenticationMap:62
Definition DotOsgWrapper:84
Definition DynamicLibrary:29
Definition osgDB/Callbacks:95
Definition osgDB/Callbacks:40
virtual std::string findDataFile(const std::string &filename, const Options *options, CaseSensitivity caseSensitivity)
virtual std::string findLibraryFile(const std::string &filename, const Options *options, CaseSensitivity caseSensitivity)
Definition ImageProcessor:22
Definition ObjectCache:27
Definition ObjectWrapper:157
CacheHintOptions
bit mask for setting up which object types get cached by readObject/Image/HeightField/Node(filename) ...
Definition Options:35
BuildKdTreesHint
range of options of whether to build kdtrees automatically on loading
Definition Options:91
ReadFileCallback * getReadFileCallback() const
Definition Options:211
BuildKdTreesHint getBuildKdTreesHint() const
Definition Options:147
FindFileCallback * getFindFileCallback() const
Definition Options:204
WriteFileCallback * getWriteFileCallback() const
Definition Options:218
Definition osgDB/Callbacks:53
virtual ReaderWriter::ReadResult readHeightField(const std::string &filename, const Options *options)
virtual ReaderWriter::ReadResult openArchive(const std::string &filename, ReaderWriter::ArchiveStatus status, unsigned int indexBlockSizeHint, const Options *useObjectCache)
virtual ReaderWriter::ReadResult readShader(const std::string &filename, const Options *options)
virtual ReaderWriter::ReadResult readImage(const std::string &filename, const Options *options)
virtual ReaderWriter::ReadResult readObject(const std::string &filename, const Options *options)
virtual ReaderWriter::ReadResult readNode(const std::string &filename, const Options *options)
virtual ReaderWriter::ReadResult readScript(const std::string &filename, const Options *options)
Definition ReaderWriter:109
bool validNode()
Definition ReaderWriter:148
Definition ReaderWriter:184
Definition ReaderWriter:40
ArchiveStatus
Definition ReaderWriter:221
Definition osgDB/Registry:689
~RegisterImageProcessorProxy()
Definition osgDB/Registry:700
osg::ref_ptr< T > _rw
Definition osgDB/Registry:711
RegisterImageProcessorProxy()
Definition osgDB/Registry:691
T * get()
Definition osgDB/Registry:708
Definition osgDB/Registry:660
osg::ref_ptr< T > _rw
Definition osgDB/Registry:682
RegisterReaderWriterProxy()
Definition osgDB/Registry:662
~RegisterReaderWriterProxy()
Definition osgDB/Registry:671
T * get()
Definition osgDB/Registry:679
Definition osgDB/Registry:54
osg::ref_ptr< FileCache > _fileCache
Definition osgDB/Registry:547
osg::ref_ptr< AuthenticationMap > _authenticationMap
Definition osgDB/Registry:549
ImageProcessor * getImageProcessorForExtension(const std::string &ext)
FileCache * getFileCache()
Definition osgDB/Registry:360
const ObjectCache * getObjectCache() const
Definition osgDB/Registry:437
osg::KdTreeBuilder * getKdTreeBuilder()
Definition osgDB/Registry:353
void setReadFileCallback(ReadFileCallback *cb)
Definition osgDB/Registry:188
void removeExpiredObjectsInCache(const osg::FrameStamp &frameStamp)
std::vector< std::string > ArchiveExtensionList
Definition osgDB/Registry:522
ReaderWriter::ReadResult read(const ReadFunctor &readFunctor)
void addFileExtensionAlias(const std::string mapExt, const std::string toExt)
static std::string trim(const std::string &str)
void removeReaderWriter(ReaderWriter *rw)
bool getCreateNodeFromImage() const
Definition osgDB/Registry:384
FilePathList & getLibraryFilePathList()
Definition osgDB/Registry:423
void setSharedStateManager(SharedStateManager *SharedStateManager)
Definition osgDB/Registry:499
MimeTypeExtensionMap _mimeTypeExtMap
Definition osgDB/Registry:627
void getReaderWriterListForProtocol(const std::string &protocol, ReaderWriterList &results) const
ReaderWriter::ReadResult readImplementation(const ReadFunctor &readFunctor, Options::CacheHintOptions cacheHint)
FindFileCallback * getFindFileCallback()
Definition osgDB/Registry:163
ReaderWriter * getReaderWriterForProtocolAndExtension(const std::string &protocol, const std::string &extension)
void setAuthenticationMap(AuthenticationMap *authenticationMap)
Definition osgDB/Registry:367
std::string findLibraryFile(const std::string &fileName, const Options *options, CaseSensitivity caseSensitivity)
Definition osgDB/Registry:177
ExtensionAliasMap _extAliasMap
Definition osgDB/Registry:624
void setWriteFileCallback(WriteFileCallback *cb)
Definition osgDB/Registry:265
std::set< std::string > RegisteredProtocolsSet
Definition osgDB/Registry:534
ReaderWriterList & getReaderWriterList()
Definition osgDB/Registry:128
ReaderWriter::ReadResult readHeightFieldImplementation(const std::string &fileName, const Options *options)
osgDB::Archive * getFromArchiveCache(const std::string &fileName)
const WriteFileCallback * getWriteFileCallback() const
Definition osgDB/Registry:271
class osgDB::FindFileCallback FindFileCallback
Definition osgDB/Registry:154
ReaderWriter::ReadResult readNode(const std::string &fileName, const Options *options, bool buildKdTreeIfRequired=true)
Definition osgDB/Registry:234
ReaderWriter * getReaderWriterForMimeType(const std::string &mimeType)
void setDataFilePathList(const FilePathList &filepath)
Definition osgDB/Registry:401
ReaderWriterList _rwList
Definition osgDB/Registry:614
ReaderWriter * getReaderWriterForExtension(const std::string &ext)
void setCreateNodeFromImage(bool flag)
Definition osgDB/Registry:383
void initDataFilePathList()
Options * getOptions()
Definition osgDB/Registry:388
LoadStatus
Definition osgDB/Registry:103
@ PREVIOUSLY_LOADED
Definition osgDB/Registry:105
ReaderWriter::WriteResult writeScriptImplementation(const osg::Script &obj, const std::string &fileName, const Options *options)
ReaderWriter::WriteResult writeScript(const osg::Script &obj, const std::string &fileName, const Options *options)
Definition osgDB/Registry:314
osg::ref_ptr< osg::KdTreeBuilder > _kdTreeBuilder
Definition osgDB/Registry:545
ReaderWriter::ReadResult readImage(const std::string &fileName, const Options *options)
Definition osgDB/Registry:218
const ReaderWriterList & getReaderWriterList() const
Definition osgDB/Registry:131
void setDataFilePathList(const std::string &paths)
AuthenticationMap * getAuthenticationMap()
Definition osgDB/Registry:377
bool _createNodeFromImage
Definition osgDB/Registry:551
const FilePathList & getDataFilePathList() const
Definition osgDB/Registry:410
std::string findLibraryFileImplementation(const std::string &fileName, const Options *options, CaseSensitivity caseSensitivity)
osg::ref_ptr< ObjectCache > _objectCache
Definition osgDB/Registry:638
void addImageProcessor(ImageProcessor *ip)
ReaderWriter::WriteResult writeImageImplementation(const osg::Image &obj, const std::string &fileName, const Options *options)
osg::ref_ptr< FileLocationCallback > _fileLocationCallback
Definition osgDB/Registry:611
FilePathList _libraryFilePath
Definition osgDB/Registry:636
FileLocationCallback * getFileLocationCallback() const
Definition osgDB/Registry:339
const ArchiveExtensionList & getArchiveExtensions() const
Definition osgDB/Registry:523
std::map< std::string, std::string > ExtensionAliasMap
Definition osgDB/Registry:530
osg::ref_ptr< SharedStateManager > _sharedStateManager
Definition osgDB/Registry:645
void removeFromObjectCache(const std::string &fileName, Options *options=NULL)
ArchiveExtensionList _archiveExtList
Definition osgDB/Registry:643
AuthenticationMap * getOrCreateAuthenticationMap()
Definition osgDB/Registry:370
ReadFileCallback * getReadFileCallback()
Definition osgDB/Registry:191
void _buildKdTreeIfRequired(ReaderWriter::ReadResult &result, const Options *options)
Definition osgDB/Registry:322
osg::ref_ptr< osg::Object > getRefFromObjectCache(const std::string &fileName, Options *options=NULL)
FilePathList & getDataFilePathList()
Definition osgDB/Registry:407
void addEntryToObjectCache(const std::string &filename, osg::Object *object, double timestamp=0.0, Options *options=NULL)
void setObjectCache(ObjectCache *objectCache)
Definition osgDB/Registry:431
ReaderWriter::ReadResult readShader(const std::string &fileName, const Options *options)
Definition osgDB/Registry:247
ReaderWriter::ReadResult readNodeImplementation(const std::string &fileName, const Options *options)
void setFileCache(FileCache *fileCache)
Definition osgDB/Registry:357
osg::ref_ptr< ReadFileCallback > _readFileCallback
Definition osgDB/Registry:609
ReaderWriter::ReadResult openArchive(const std::string &fileName, ReaderWriter::ArchiveStatus status, unsigned int indexBlockSizeHint, const Options *options)
Definition osgDB/Registry:197
OpenThreads::ReentrantMutex _archiveCacheMutex
Definition osgDB/Registry:618
DynamicLibraryList::iterator getLibraryItr(const std::string &fileName)
ReaderWriter::WriteResult writeHeightField(const osg::HeightField &obj, const std::string &fileName, const Options *options)
Definition osgDB/Registry:290
ReaderWriter::WriteResult writeShaderImplementation(const osg::Shader &obj, const std::string &fileName, const Options *options)
ReaderWriter::ReadResult readHeightField(const std::string &fileName, const Options *options)
Definition osgDB/Registry:226
SharedStateManager * getOrCreateSharedStateManager()
ImageProcessor * getImageProcessor()
const ReadFileCallback * getReadFileCallback() const
Definition osgDB/Registry:194
class osgDB::ReadFileCallback ReadFileCallback
Definition osgDB/Registry:155
static Registry * instance(bool erase=false)
ObjectWrapperManager * getObjectWrapperManager()
Definition osgDB/Registry:517
void setBuildKdTreesHint(Options::BuildKdTreesHint hint)
Definition osgDB/Registry:344
bool isProtocolRegistered(const std::string &protocol)
void setExpiryDelay(double expiryDelay)
Definition osgDB/Registry:440
void setLibraryFilePathList(const FilePathList &filepath)
Definition osgDB/Registry:417
SharedStateManager * getSharedStateManager()
Definition osgDB/Registry:505
void updateTimeStampOfObjectsInCacheWithExternalReferences(const osg::FrameStamp &frameStamp)
std::string createLibraryNameForFile(const std::string &fileName)
DynamicLibrary * getLibrary(const std::string &fileName)
ReaderWriter::WriteResult writeNode(const osg::Node &node, const std::string &fileName, const Options *options)
Definition osgDB/Registry:298
std::map< std::string, std::string > MimeTypeExtensionMap
Definition osgDB/Registry:77
const FileCache * getFileCache() const
Definition osgDB/Registry:363
void removeFromArchiveCache(const std::string &fileName)
std::vector< osg::ref_ptr< DynamicLibrary > > DynamicLibraryList
Definition osgDB/Registry:529
std::string createLibraryNameForExtension(const std::string &ext)
ImageProcessorList & getImageProcessorList()
Definition osgDB/Registry:148
void setFileLocationCallback(FileLocationCallback *cb)
Definition osgDB/Registry:336
DynamicLibraryList _dlList
Definition osgDB/Registry:616
const Options * getOptions() const
Definition osgDB/Registry:389
void readCommandLine(osg::ArgumentParser &commandLine)
Options::BuildKdTreesHint _buildKdTreesHint
Definition osgDB/Registry:544
bool readPluginAliasConfigurationFile(const std::string &file)
RegisteredProtocolsSet _registeredProtocols
Definition osgDB/Registry:553
void setLibraryFilePathList(const std::string &paths)
OpenThreads::ReentrantMutex _pluginMutex
Definition osgDB/Registry:613
double getExpiryDelay() const
Definition osgDB/Registry:442
ReaderWriter::ReadResult readObject(const std::string &fileName, const Options *options, bool buildKdTreeIfRequired=true)
Definition osgDB/Registry:205
osg::ref_ptr< FindFileCallback > _findFileCallback
Definition osgDB/Registry:608
LoadStatus loadLibrary(const std::string &fileName)
void initFilePathLists()
Definition osgDB/Registry:395
void removeImageProcessor(ImageProcessor *ip)
bool closeLibrary(const std::string &fileName)
ReaderWriter::WriteResult writeObject(const osg::Object &obj, const std::string &fileName, const Options *options)
Definition osgDB/Registry:274
void addReaderWriter(ReaderWriter *rw)
bool _openingLibrary
Definition osgDB/Registry:621
osg::ref_ptr< Options > _options
Definition osgDB/Registry:633
const FilePathList & getLibraryFilePathList() const
Definition osgDB/Registry:426
ReaderWriter::ReadResult readScript(const std::string &fileName, const Options *options)
Definition osgDB/Registry:255
void releaseGLObjects(osg::State *state=0)
ReaderWriter::ReadResult readImageImplementation(const std::string &fileName, const Options *options)
ReaderWriter::ReadResult readObjectImplementation(const std::string &fileName, const Options *options)
void registerProtocol(const std::string &protocol)
std::string findDataFile(const std::string &fileName, const Options *options, CaseSensitivity caseSensitivity)
Definition osgDB/Registry:169
ReaderWriter::ReadResult readShaderImplementation(const std::string &fileName, const Options *options)
MimeTypeExtensionMap & getMimeTypeExtensionMap()
Definition osgDB/Registry:84
ReaderWriter::WriteResult writeShader(const osg::Shader &obj, const std::string &fileName, const Options *options)
Definition osgDB/Registry:306
ReaderWriter::WriteResult writeImage(const osg::Image &obj, const std::string &fileName, const Options *options)
Definition osgDB/Registry:282
osg::ref_ptr< WriteFileCallback > _writeFileCallback
Definition osgDB/Registry:610
void setFindFileCallback(FindFileCallback *cb)
Definition osgDB/Registry:160
ReaderWriter::WriteResult writeNodeImplementation(const osg::Node &node, const std::string &fileName, const Options *options)
ReaderWriter::WriteResult writeObjectImplementation(const osg::Object &obj, const std::string &fileName, const Options *options)
const MimeTypeExtensionMap & getMimeTypeExtensionMap() const
Definition osgDB/Registry:85
const ImageProcessorList & getImageProcessorList() const
Definition osgDB/Registry:151
std::string findDataFileImplementation(const std::string &fileName, const Options *options, CaseSensitivity caseSensitivity)
void addArchiveExtension(const std::string ext)
std::vector< osg::ref_ptr< ImageProcessor > > ImageProcessorList
Definition osgDB/Registry:139
void addMimeTypeExtensionMapping(const std::string fromMimeType, const std::string toExt)
double _expiryDelay
Definition osgDB/Registry:640
osg::Object * getFromObjectCache(const std::string &fileName, Options *options=NULL)
osg::ref_ptr< DeprecatedDotOsgWrapperManager > _deprecatedDotOsgWrapperManager
Definition osgDB/Registry:648
ImageProcessorList _ipList
Definition osgDB/Registry:615
ArchiveCache _archiveCache
Definition osgDB/Registry:619
void initLibraryFilePathList()
FilePathList _dataFilePath
Definition osgDB/Registry:635
ReaderWriter::ReadResult openArchiveImplementation(const std::string &fileName, ReaderWriter::ArchiveStatus status, unsigned int indexBlockSizeHint, const Options *options)
ReaderWriter::WriteResult writeHeightFieldImplementation(const osg::HeightField &obj, const std::string &fileName, const Options *options)
void addToArchiveCache(const std::string &fileName, osgDB::Archive *archive)
void setKdTreeBuilder(osg::KdTreeBuilder *builder)
Definition osgDB/Registry:350
WriteFileCallback * getWriteFileCallback()
Definition osgDB/Registry:268
ReaderWriter::ReadResult readScriptImplementation(const std::string &fileName, const Options *options)
std::vector< osg::ref_ptr< ReaderWriter > > ReaderWriterList
Definition osgDB/Registry:118
class osgDB::FileLocationCallback FileLocationCallback
Definition osgDB/Registry:157
osg::ref_ptr< ObjectWrapperManager > _objectWrapperManager
Definition osgDB/Registry:647
osg::ref_ptr< osgDB::Archive > getRefFromArchiveCache(const std::string &fileName)
ObjectCache * getObjectCache()
Definition osgDB/Registry:434
DeprecatedDotOsgWrapperManager * getDeprecatedDotOsgObjectWrapperManager()
Definition osgDB/Registry:520
const FindFileCallback * getFindFileCallback() const
Definition osgDB/Registry:166
std::string createLibraryNameForNodeKit(const std::string &name)
const AuthenticationMap * getAuthenticationMap() const
Definition osgDB/Registry:380
std::map< std::string, osg::ref_ptr< osgDB::Archive > > ArchiveCache
Definition osgDB/Registry:532
Options::BuildKdTreesHint getBuildKdTreesHint() const
Definition osgDB/Registry:347
void setOptions(Options *opt)
Definition osgDB/Registry:387
class osgDB::WriteFileCallback WriteFileCallback
Definition osgDB/Registry:156
Definition SharedStateManager:31
Definition osgDB/Callbacks:75
virtual ReaderWriter::WriteResult writeHeightField(const osg::HeightField &obj, const std::string &fileName, const Options *options)
virtual ReaderWriter::WriteResult writeScript(const osg::Script &obj, const std::string &fileName, const Options *options)
virtual ReaderWriter::WriteResult writeImage(const osg::Image &obj, const std::string &fileName, const Options *options)
virtual ReaderWriter::WriteResult writeNode(const osg::Node &obj, const std::string &fileName, const Options *options)
virtual ReaderWriter::WriteResult writeShader(const osg::Shader &obj, const std::string &fileName, const Options *options)
virtual ReaderWriter::WriteResult writeObject(const osg::Object &obj, const std::string &fileName, const Options *options)
Definition ArgumentParser:28
virtual void accept(NodeVisitor &nv)
Definition osg/ScriptEngine:30
std::deque< std::string > FilePathList
Definition osgDB/Callbacks:28
CaseSensitivity
Definition osgDB/Callbacks:31
void readCommandLine(osg::ArgumentParser &parser)
Definition osgDB/Registry:652
#define OSGDB_EXPORT
Definition osgDB/Export:39
void(* CPluginFunction)(void)
Definition osgDB/Registry:39
#define NULL
Definition osg/Export:55
Definition osgDB/Registry:715
PluginFunctionProxy(CPluginFunction function)
Definition osgDB/Registry:716
Definition osgDB/Registry:558
virtual ReadFunctor * cloneType(const std::string &filename, const Options *options) const =0
std::string _filename
Definition osgDB/Registry:570
virtual ReaderWriter::ReadResult doRead(ReaderWriter &rw) const =0
ReadFunctor(const std::string &filename, const Options *options)
Definition osgDB/Registry:559
const Options * _options
Definition osgDB/Registry:571
virtual bool isValid(ReaderWriter::ReadResult &readResult) const =0
virtual bool isValid(osg::Object *object) const =0
virtual ~ReadFunctor()
Definition osgDB/Registry:563