osgDB::ReaderWriter Class Reference

Inheritance diagram for osgDB::ReaderWriter:

osg::Object osg::Referenced osgDB::Archive

List of all members.

Public Types

enum  Features {
  FEATURE_NONE = 0, FEATURE_READ_OBJECT = 1<<0, FEATURE_READ_IMAGE = 1<<1, FEATURE_READ_HEIGHT_FIELD = 1<<2,
  FEATURE_READ_NODE = 1<<3, FEATURE_READ_SHADER = 1<<4, FEATURE_WRITE_OBJECT = 1<<5, FEATURE_WRITE_IMAGE = 1<<6,
  FEATURE_WRITE_HEIGHT_FIELD = 1<<7, FEATURE_WRITE_NODE = 1<<8, FEATURE_WRITE_SHADER = 1<<9, FEATURE_ALL
}
 bit mask for setting up which feature types are available for read and/or write More...
enum  ArchiveStatus { READ, WRITE, CREATE }
typedef std::map< std::string,
std::string > 
FormatDescriptionMap
typedef std::list< std::string > FeatureList
typedef osgDB::Options Options

Public Member Functions

 ReaderWriter ()
 ReaderWriter (const ReaderWriter &rw, const osg::CopyOp &copyop=osg::CopyOp::SHALLOW_COPY)
virtual ~ReaderWriter ()
 META_Object (osgDB, ReaderWriter)
virtual const
FormatDescriptionMap
supportedProtocols () const
virtual const
FormatDescriptionMap
supportedExtensions () const
virtual const
FormatDescriptionMap
supportedOptions () const
virtual bool acceptsExtension (const std::string &) const
virtual Features supportedFeatures () const
virtual bool fileExists (const std::string &filename, const Options *options) const
virtual ReadResult openArchive (const std::string &, ArchiveStatus, unsigned int=4096, const Options *=NULL) const
virtual ReadResult openArchive (std::istream &, const Options *=NULL) const
virtual ReadResult readObject (const std::string &, const Options *=NULL) const
virtual ReadResult readImage (const std::string &, const Options *=NULL) const
virtual ReadResult readHeightField (const std::string &, const Options *=NULL) const
virtual ReadResult readNode (const std::string &, const Options *=NULL) const
virtual ReadResult readShader (const std::string &, const Options *=NULL) const
virtual WriteResult writeObject (const osg::Object &, const std::string &, const Options *=NULL) const
virtual WriteResult writeImage (const osg::Image &, const std::string &, const Options *=NULL) const
virtual WriteResult writeHeightField (const osg::HeightField &, const std::string &, const Options *=NULL) const
virtual WriteResult writeNode (const osg::Node &, const std::string &, const Options *=NULL) const
virtual WriteResult writeShader (const osg::Shader &, const std::string &, const Options *=NULL) const
virtual ReadResult readObject (std::istream &, const Options *=NULL) const
virtual ReadResult readImage (std::istream &, const Options *=NULL) const
virtual ReadResult readHeightField (std::istream &, const Options *=NULL) const
virtual ReadResult readNode (std::istream &, const Options *=NULL) const
virtual ReadResult readShader (std::istream &, const Options *=NULL) const
virtual WriteResult writeObject (const osg::Object &, std::ostream &, const Options *=NULL) const
virtual WriteResult writeImage (const osg::Image &, std::ostream &, const Options *=NULL) const
virtual WriteResult writeHeightField (const osg::HeightField &, std::ostream &, const Options *=NULL) const
virtual WriteResult writeNode (const osg::Node &, std::ostream &, const Options *=NULL) const
virtual WriteResult writeShader (const osg::Shader &, std::ostream &, const Options *=NULL) const
void supportsProtocol (const std::string &fmt, const std::string &description)
void supportsExtension (const std::string &ext, const std::string &description)
void supportsOption (const std::string &opt, const std::string &description)

Static Public Member Functions

static FeatureList featureAsString (Features feature)

Protected Attributes

FormatDescriptionMap _supportedProtocols
FormatDescriptionMap _supportedExtensions
FormatDescriptionMap _supportedOptions

Classes

class  ReadResult
class  WriteResult


Detailed Description

pure virtual base class for reading and writing of non native formats.

Member Typedef Documentation

typedef std::map<std::string, std::string> osgDB::ReaderWriter::FormatDescriptionMap

typedef std::list<std::string> osgDB::ReaderWriter::FeatureList


Member Enumeration Documentation

bit mask for setting up which feature types are available for read and/or write

Enumerator:
FEATURE_NONE 
FEATURE_READ_OBJECT 
FEATURE_READ_IMAGE 
FEATURE_READ_HEIGHT_FIELD 
FEATURE_READ_NODE 
FEATURE_READ_SHADER 
FEATURE_WRITE_OBJECT 
FEATURE_WRITE_IMAGE 
FEATURE_WRITE_HEIGHT_FIELD 
FEATURE_WRITE_NODE 
FEATURE_WRITE_SHADER 
FEATURE_ALL 

Enumerator:
READ 
WRITE 
CREATE 


Constructor & Destructor Documentation

osgDB::ReaderWriter::ReaderWriter (  )  [inline]

osgDB::ReaderWriter::ReaderWriter ( const ReaderWriter rw,
const osg::CopyOp copyop = osg::CopyOp::SHALLOW_COPY 
) [inline]

virtual osgDB::ReaderWriter::~ReaderWriter (  )  [virtual]


Member Function Documentation

osgDB::ReaderWriter::META_Object ( osgDB  ,
ReaderWriter   
)

virtual const FormatDescriptionMap& osgDB::ReaderWriter::supportedProtocols (  )  const [inline, virtual]

return which protocols are supported by ReaderWriter.

virtual const FormatDescriptionMap& osgDB::ReaderWriter::supportedExtensions (  )  const [inline, virtual]

return which list of file extensions supported by ReaderWriter.

virtual const FormatDescriptionMap& osgDB::ReaderWriter::supportedOptions (  )  const [inline, virtual]

return which list of file extensions supported by ReaderWriter.

virtual bool osgDB::ReaderWriter::acceptsExtension ( const std::string &   )  const [virtual]

return true if ReaderWriter accepts specified file extension.

Reimplemented in osgDB::Archive.

virtual Features osgDB::ReaderWriter::supportedFeatures (  )  const [virtual]

return available features

static FeatureList osgDB::ReaderWriter::featureAsString ( Features  feature  )  [static]

return feature as string

virtual bool osgDB::ReaderWriter::fileExists ( const std::string &  filename,
const Options options 
) const [virtual]

determine if a file exists, normally the default implementation will be approrpiate for local file access but with plugins like the libcurl based on it will return true if the file is accessible a server.

virtual ReadResult osgDB::ReaderWriter::openArchive ( const std::string &  ,
ArchiveStatus  ,
unsigned  int = 4096,
const Options = NULL 
) const [inline, virtual]

open an archive for reading, writing, or to create an empty archive for writing to.

virtual ReadResult osgDB::ReaderWriter::openArchive ( std::istream &  ,
const Options = NULL 
) const [inline, virtual]

open an archive for reading.

virtual ReadResult osgDB::ReaderWriter::readObject ( const std::string &  ,
const Options = NULL 
) const [inline, virtual]

Reimplemented in osgDB::Archive.

virtual ReadResult osgDB::ReaderWriter::readImage ( const std::string &  ,
const Options = NULL 
) const [inline, virtual]

Reimplemented in osgDB::Archive.

virtual ReadResult osgDB::ReaderWriter::readHeightField ( const std::string &  ,
const Options = NULL 
) const [inline, virtual]

Reimplemented in osgDB::Archive.

virtual ReadResult osgDB::ReaderWriter::readNode ( const std::string &  ,
const Options = NULL 
) const [inline, virtual]

Reimplemented in osgDB::Archive.

virtual ReadResult osgDB::ReaderWriter::readShader ( const std::string &  ,
const Options = NULL 
) const [inline, virtual]

virtual WriteResult osgDB::ReaderWriter::writeObject ( const osg::Object ,
const std::string &  ,
const Options = NULL 
) const [inline, virtual]

Reimplemented in osgDB::Archive.

virtual WriteResult osgDB::ReaderWriter::writeImage ( const osg::Image ,
const std::string &  ,
const Options = NULL 
) const [inline, virtual]

Reimplemented in osgDB::Archive.

virtual WriteResult osgDB::ReaderWriter::writeHeightField ( const osg::HeightField ,
const std::string &  ,
const Options = NULL 
) const [inline, virtual]

Reimplemented in osgDB::Archive.

virtual WriteResult osgDB::ReaderWriter::writeNode ( const osg::Node ,
const std::string &  ,
const Options = NULL 
) const [inline, virtual]

Reimplemented in osgDB::Archive.

virtual WriteResult osgDB::ReaderWriter::writeShader ( const osg::Shader ,
const std::string &  ,
const Options = NULL 
) const [inline, virtual]

virtual ReadResult osgDB::ReaderWriter::readObject ( std::istream &  ,
const Options = NULL 
) const [inline, virtual]

virtual ReadResult osgDB::ReaderWriter::readImage ( std::istream &  ,
const Options = NULL 
) const [inline, virtual]

virtual ReadResult osgDB::ReaderWriter::readHeightField ( std::istream &  ,
const Options = NULL 
) const [inline, virtual]

virtual ReadResult osgDB::ReaderWriter::readNode ( std::istream &  ,
const Options = NULL 
) const [inline, virtual]

virtual ReadResult osgDB::ReaderWriter::readShader ( std::istream &  ,
const Options = NULL 
) const [inline, virtual]

virtual WriteResult osgDB::ReaderWriter::writeObject ( const osg::Object ,
std::ostream &  ,
const Options = NULL 
) const [inline, virtual]

virtual WriteResult osgDB::ReaderWriter::writeImage ( const osg::Image ,
std::ostream &  ,
const Options = NULL 
) const [inline, virtual]

virtual WriteResult osgDB::ReaderWriter::writeHeightField ( const osg::HeightField ,
std::ostream &  ,
const Options = NULL 
) const [inline, virtual]

virtual WriteResult osgDB::ReaderWriter::writeNode ( const osg::Node ,
std::ostream &  ,
const Options = NULL 
) const [inline, virtual]

virtual WriteResult osgDB::ReaderWriter::writeShader ( const osg::Shader ,
std::ostream &  ,
const Options = NULL 
) const [inline, virtual]

void osgDB::ReaderWriter::supportsProtocol ( const std::string &  fmt,
const std::string &  description 
)

Specify fmt string as a supported protocol. Please note, this method should usually only be used internally by subclasses of ReaderWriter, Only in special cases will a ReaderWriter implementation be able to handle a protocol format that is wasn't original designed for. To know whether it's safe to inject a new protocol format to an existing ReaderWriter you will need to review the source code and dependencies of that ReaderWriter.

void osgDB::ReaderWriter::supportsExtension ( const std::string &  ext,
const std::string &  description 
)

Specify ext string as a supported file extension. Please note, this method should usually only be used internally by subclasses of ReaderWriter. Only in special cases will a ReaderWriter implementation be able to handle a file extension that is wasn't original designed for. To know whether it's safe to inject a new file extension to an existing ReaderWriter you will need to review the the source code and dependencies of that ReaderWriter.

void osgDB::ReaderWriter::supportsOption ( const std::string &  opt,
const std::string &  description 
)

Specify option string as a supported option string. Please note, this should usually only be used internally by subclasses of ReaderWriter.


Member Data Documentation


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

Generated on Fri Mar 19 19:52:54 2010 for openscenegraph by  doxygen 1.5.6