14#ifndef OSGDB_READERWRITER
15#define OSGDB_READERWRITER 1
The core osg library provides the basic scene graph classes such as Nodes, State and Drawables,...
Definition AlphaFunc:19
The osgDB library provides support for reading and writing scene graphs, providing a plugin framework...
Definition Archive:24
std::deque< std::string > FilePathList
list of directories to search through which searching for files.
Definition Callbacks:28
Copy Op(erator) used to control whether shallow or deep copy is used during copy construction and clo...
Definition CopyOp:41
@ SHALLOW_COPY
Definition CopyOp:47
Image class for encapsulating the storage texture image data.
Definition Image:179
Base class for all internal nodes in the scene graph.
Definition Node:72
Base class/standard interface for objects which require IO support, cloning and reference counting.
Definition Object:61
Object()
Construct an object.
Definition Object:69
Smart pointer for handling referenced counted objects.
Definition ref_ptr:32
Definition ScriptEngine:30
osg::Shader is an application-level abstraction of an OpenGL glShader.
Definition Shader:89
Base class for implementing database Archives.
Definition Archive:29
Options base class used for passing options into plugins to control their operation.
Definition Options:30
virtual WriteResult writeHeightField(const osg::HeightField &, std::ostream &, const Options *=NULL) const
Definition ReaderWriter:262
virtual const FormatDescriptionMap & supportedProtocols() const
Return which protocols are supported by ReaderWriter.
Definition ReaderWriter:58
static FeatureList featureAsString(Features feature)
Return feature as string.
FormatDescriptionMap _supportedOptions
Definition ReaderWriter:289
osgDB::Options Options
Definition ReaderWriter:227
virtual ReadResult readImage(const std::string &, const Options *=NULL) const
Definition ReaderWriter:240
std::map< std::string, std::string > FormatDescriptionMap
Definition ReaderWriter:54
virtual ReadResult readNode(std::istream &, const Options *=NULL) const
Definition ReaderWriter:256
virtual WriteResult writeImage(const osg::Image &, const std::string &, const Options *=NULL) const
Definition ReaderWriter:247
void supportsExtension(const std::string &ext, const std::string &description)
Specify ext string as a supported file extension.
virtual ReadResult readObject(const std::string &, const Options *=NULL) const
Definition ReaderWriter:239
virtual ReadResult readHeightField(const std::string &, const Options *=NULL) const
Definition ReaderWriter:241
virtual WriteResult writeObject(const osg::Object &, std::ostream &, const Options *=NULL) const
Definition ReaderWriter:260
virtual const FormatDescriptionMap & supportedExtensions() const
Return which list of file extensions supported by ReaderWriter.
Definition ReaderWriter:61
virtual WriteResult writeHeightField(const osg::HeightField &, const std::string &, const Options *=NULL) const
Definition ReaderWriter:248
virtual WriteResult writeNode(const osg::Node &, const std::string &, const Options *=NULL) const
Definition ReaderWriter:249
virtual ReadResult readShader(const std::string &, const Options *=NULL) const
Definition ReaderWriter:243
ArchiveStatus
Definition ReaderWriter:221
@ CREATE
Definition ReaderWriter:224
@ READ
Definition ReaderWriter:222
@ WRITE
Definition ReaderWriter:223
virtual ReadResult readScript(std::istream &, const Options *=NULL) const
Definition ReaderWriter:258
virtual Features supportedFeatures() const
Return available features.
virtual WriteResult writeShader(const osg::Shader &, const std::string &, const Options *=NULL) const
Definition ReaderWriter:250
ReaderWriter(const ReaderWriter &rw, const osg::CopyOp ©op=osg::CopyOp::SHALLOW_COPY)
Definition ReaderWriter:47
virtual ReadResult openArchive(const std::string &, ArchiveStatus, unsigned int=4096, const Options *=NULL) const
Open an archive for reading, writing, or to create an empty archive for writing to.
Definition ReaderWriter:234
virtual WriteResult writeNode(const osg::Node &, std::ostream &, const Options *=NULL) const
Definition ReaderWriter:263
std::list< std::string > FeatureList
Definition ReaderWriter:55
virtual WriteResult writeScript(const osg::Script &, std::ostream &, const Options *=NULL) const
Definition ReaderWriter:265
virtual ReadResult readShader(std::istream &, const Options *=NULL) const
Definition ReaderWriter:257
virtual WriteResult writeScript(const osg::Script &, const std::string &, const Options *=NULL) const
Definition ReaderWriter:251
FormatDescriptionMap _supportedExtensions
Definition ReaderWriter:288
virtual WriteResult writeImage(const osg::Image &, std::ostream &, const Options *=NULL) const
Definition ReaderWriter:261
FormatDescriptionMap _supportedProtocols
Definition ReaderWriter:287
virtual ReadResult readHeightField(std::istream &, const Options *=NULL) const
Definition ReaderWriter:255
virtual ReadResult openArchive(std::istream &, const Options *=NULL) const
Open an archive for reading.
Definition ReaderWriter:237
virtual ReadResult readImage(std::istream &, const Options *=NULL) const
Definition ReaderWriter:254
void supportsProtocol(const std::string &fmt, const std::string &description)
Specify fmt string as a supported protocol.
virtual WriteResult writeObject(const osg::Object &, const std::string &, const Options *=NULL) const
Definition ReaderWriter:246
Features
Bit mask for setting up which feature types are available for read and/or write.
Definition ReaderWriter:73
@ FEATURE_NONE
Definition ReaderWriter:74
@ FEATURE_WRITE_SCRIPT
Definition ReaderWriter:86
@ FEATURE_WRITE_HEIGHT_FIELD
Definition ReaderWriter:82
@ FEATURE_WRITE_IMAGE
Definition ReaderWriter:81
@ FEATURE_READ_HEIGHT_FIELD
Definition ReaderWriter:77
@ FEATURE_WRITE_SHADER
Definition ReaderWriter:84
@ FEATURE_READ_SCRIPT
Definition ReaderWriter:85
@ FEATURE_ALL
Definition ReaderWriter:87
@ FEATURE_WRITE_OBJECT
Definition ReaderWriter:80
@ FEATURE_READ_NODE
Definition ReaderWriter:78
@ FEATURE_READ_SHADER
Definition ReaderWriter:79
@ FEATURE_READ_OBJECT
Definition ReaderWriter:75
@ FEATURE_READ_IMAGE
Definition ReaderWriter:76
@ FEATURE_WRITE_NODE
Definition ReaderWriter:83
void supportsOption(const std::string &opt, const std::string &description)
Specify option string as a supported option string.
virtual bool acceptsExtension(const std::string &) const
Return true if ReaderWriter accepts specified file extension.
virtual const FormatDescriptionMap & supportedOptions() const
Return which list of file extensions supported by ReaderWriter.
Definition ReaderWriter:64
virtual WriteResult writeShader(const osg::Shader &, std::ostream &, const Options *=NULL) const
Definition ReaderWriter:264
META_Object(osgDB, ReaderWriter)
virtual ReadResult readScript(const std::string &, const Options *=NULL) const
Definition ReaderWriter:244
virtual bool fileExists(const std::string &filename, const Options *options) const
Determine if a file exists, normally the default implementation will be appropriate for local file ac...
virtual ReadResult readObject(std::istream &, const Options *=NULL) const
Definition ReaderWriter:253
ReaderWriter()
Definition ReaderWriter:44
virtual ReadResult readNode(const std::string &, const Options *=NULL) const
Definition ReaderWriter:242
virtual bool acceptsProtocol(const std::string &protocol) const
Definition ReaderWriter:109
osg::Script * takeScript()
bool validScript()
Definition ReaderWriter:151
osg::HeightField * takeHeightField()
osg::Script * getScript()
bool notFound() const
Definition ReaderWriter:172
ReadResult(osg::Object *obj, ReadStatus status=FILE_LOADED)
Definition ReaderWriter:127
bool notHandled() const
Definition ReaderWriter:171
bool loadedFromCache() const
Definition ReaderWriter:169
bool notEnoughMemory() const
Definition ReaderWriter:173
bool validHeightField()
Definition ReaderWriter:147
ReadResult(const ReadResult &rr)
Definition ReaderWriter:132
ReadResult(const std::string &m)
Definition ReaderWriter:125
ReadStatus status() const
Definition ReaderWriter:167
const std::string & message() const
Definition ReaderWriter:162
bool validArchive()
Definition ReaderWriter:149
ReadResult(const osg::ref_ptr< T > &obj, ReadStatus status=FILE_LOADED)
Definition ReaderWriter:130
osgDB::Archive * getArchive()
bool validShader()
Definition ReaderWriter:150
std::string _message
Definition ReaderWriter:178
bool validImage()
Definition ReaderWriter:146
osg::HeightField * getHeightField()
std::string statusMessage() const
report the ReadResult's status, and message (if any). Useful for reporting of errors to users.
std::string & message()
Definition ReaderWriter:161
ReadStatus
Definition ReaderWriter:113
@ FILE_LOADED_FROM_CACHE
File found in cache and returned.
Definition ReaderWriter:119
@ FILE_NOT_HANDLED
File is not appropriate for this file reader, due to some incompatibility, but not a read error.
Definition ReaderWriter:115
@ FILE_LOADED
File successfully found, loaded, and converted into osg.
Definition ReaderWriter:118
@ INSUFFICIENT_MEMORY_TO_LOAD
File found but not loaded because estimated required memory surpasses available memory.
Definition ReaderWriter:121
@ NOT_IMPLEMENTED
read*() method not implemented in concrete ReaderWriter.
Definition ReaderWriter:114
@ FILE_NOT_FOUND
File could not be found or could not be read.
Definition ReaderWriter:116
@ ERROR_IN_READING_FILE
File found, loaded, but an error was encountered during processing.
Definition ReaderWriter:117
@ FILE_REQUESTED
Asynchronous file read has been requested, but returning immediately, keep polling plugin until file ...
Definition ReaderWriter:120
osgDB::Archive * takeArchive()
bool error() const
Definition ReaderWriter:170
bool validNode()
Definition ReaderWriter:148
osg::Object * getObject()
osg::Shader * getShader()
bool success() const
Definition ReaderWriter:168
osg::Object * takeObject()
ReadStatus _status
Definition ReaderWriter:177
ReadResult(ReadStatus status=FILE_NOT_HANDLED)
Definition ReaderWriter:124
osg::ref_ptr< osg::Object > _object
Definition ReaderWriter:179
bool validObject()
Definition ReaderWriter:145
osg::Shader * takeShader()
Definition ReaderWriter:184
std::string & message()
Definition ReaderWriter:203
WriteStatus
Definition ReaderWriter:188
@ FILE_SAVED
Definition ReaderWriter:192
@ ERROR_IN_WRITING_FILE
Definition ReaderWriter:191
@ FILE_NOT_HANDLED
Definition ReaderWriter:190
@ NOT_IMPLEMENTED
write*() method not implemented in concrete ReaderWriter.
Definition ReaderWriter:189
WriteResult(const WriteResult &rr)
Definition ReaderWriter:198
WriteStatus status() const
Definition ReaderWriter:209
WriteStatus _status
Definition ReaderWriter:216
bool success() const
Definition ReaderWriter:210
WriteResult(WriteStatus status=FILE_NOT_HANDLED)
Definition ReaderWriter:195
std::string statusMessage() const
Report the WriteResult's status, and message (if any). Useful for reporting of errors to users.
const std::string & message() const
Definition ReaderWriter:204
std::string _message
Definition ReaderWriter:217
bool notHandled() const
Definition ReaderWriter:212
WriteResult(const std::string &m)
Definition ReaderWriter:196
bool error() const
Definition ReaderWriter:211
#define NULL
Definition Export:55
#define OSGDB_EXPORT
Definition Export:39