Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

# osgDB Namespace Reference

The osgDB library provides support for reading and writing scene graphs, providing a plugin framework and file utility classes. More...

## Classes
class | Archive
| Base class for implementing database Archives. More...
class | DatabasePager
| Database paging class which manages the loading of files in a background thread, and syncronizing of loaded models with the main scene graph. More...
struct | DatabasePager::DatabaseRequest
class | DotOsgWrapper
| Wrapper class for specifying read and write functions for extending the .osg file format. More...
class | DynamicLibrary
| DynamicLibrary - encapsulates the loading and unloading of dynamic libraries, typically used for loading ReaderWriter plug-ins. More...
class | Field
class | FieldReader
class | FieldReaderIterator
class | ImageOptions
struct | ImageOptions::RatioWindow
| RatioWindow stores the window (as ratios of 0.0 to 1.0) from the overall imagery from which to extract the osg::Image. More...
struct | ImageOptions::PixelWindow
| PixelWindow stores the window (in exact pixels) from the overall imagery from which to extract the osg::Image. More...
struct | ImageOptions::TexCoordRange
| Used as UserData attached to generated osg::Image's. More...
class | Input
| Class for managing the reading of ASCII .osg files. More...
class | Output
| ofstream wrapper class for adding support for indenting. More...
class | ParameterOutput
class | ReaderWriter
| pure virtual base class for reading and writing of non native formats. More...
class | ReaderWriter::Options
| Options base class used for passing options into plugins to control their operation. More...
class | ReaderWriter::ReadResult
class | ReaderWriter::WriteResult
class | ReentrantMutex
struct | basic_type_wrapper
| basic structure for custom runtime inheritance checking More...
struct | type_wrapper
| a class template that checks inheritance between a given Object's class and a class defined at compile time through the template parameter T. More...
class | Registry
| Registry is a singleton factory which stores the reader/writers which are linked in at runtime for reading non-native file formats. More...
class | Registry::ReadFileCallback
class | Registry::WriteFileCallback
struct | Registry::ReadFunctor
| Functor used in internal implementations. More...
class | RegisterDotOsgWrapperProxy
| Proxy class for automatic registration of DotOsgWrappers with the Registry. More...
class | RegisterReaderWriterProxy
| Proxy class for automatic registration of reader/writers with the Registry. More...
class | SharedStateManager
## Typedefs
typedef std::vector< std::string > | DirectoryContents
| simple list of names to represent a directory's contents.
typedef std::deque< std::string > | FilePathList
| list of directories to search through which searching for files.
## Enumerations
enum | CaseSensitivity { CASE_SENSITIVE, CASE_INSENSITIVE }
enum | FileType { FILE_NOT_FOUND, REGULAR_FILE, DIRECTORY }
## Functions
OSGDB_EXPORT Archive * | openArchive (const std::string &filename, Archive::ArchiveStatus status, unsigned int indexBlockSizeHint=4096)
| Open an archive for reading or writing.
OSGDB_EXPORT Archive * | openArchive (const std::string &filename, Archive::ArchiveStatus status, unsigned int indexBlockSizeHint, ReaderWriter::Options *options)
| Open an archive for reading or writing.
OSGDB_EXPORT std::string | getFilePath (const std::string &filename)
OSGDB_EXPORT std::string | getFileExtension (const std::string &filename)
OSGDB_EXPORT std::string | getLowerCaseFileExtension (const std::string &filename)
OSGDB_EXPORT std::string | getSimpleFileName (const std::string &fileName)
OSGDB_EXPORT std::string | getNameLessExtension (const std::string &fileName)
OSGDB_EXPORT std::string | getStrippedName (const std::string &fileName)
OSGDB_EXPORT std::string | convertFileNameToWindowsStyle (const std::string &fileName)
OSGDB_EXPORT std::string | convertFileNameToUnixStyle (const std::string &fileName)
OSGDB_EXPORT bool | isFileNameNativeStyle (const std::string &fileName)
OSGDB_EXPORT std::string | convertFileNameToNativeStyle (const std::string &fileName)
OSGDB_EXPORT bool | equalCaseInsensitive (const std::string &lhs, const std::string &rhs)
OSGDB_EXPORT bool | equalCaseInsensitive (const std::string &lhs, const char *rhs)
OSGDB_EXPORT bool | containsServerAddress (const std::string &filename)
OSGDB_EXPORT std::string | getServerAddress (const std::string &filename)
OSGDB_EXPORT std::string | getServerFileName (const std::string &filename)
OSGDB_EXPORT bool | makeDirectory (const std::string &directoryPath)
OSGDB_EXPORT bool | makeDirectoryForFile (const std::string &filePath)
OSGDB_EXPORT bool | fileExists (const std::string &filename)
| return true if a file exisits.
OSGDB_EXPORT FileType | fileType (const std::string &filename)
| return type of file.
OSGDB_EXPORT std::string | findFileInPath (const std::string &filename, const FilePathList &filePath, CaseSensitivity caseSensitivity=CASE_SENSITIVE)
| find specified file in specified file path.
OSGDB_EXPORT std::string | findFileInDirectory (const std::string &fileName, const std::string &dirName, CaseSensitivity caseSensitivity=CASE_SENSITIVE)
| return the directory/filename of a file if its is contained within specified directory.
OSGDB_EXPORT DirectoryContents | getDirectoryContents (const std::string &dirName)
| return the contents of a directory.
void | setDataFilePathList (const FilePathList &filepath)
void | setDataFilePathList (const std::string &paths)
FilePathList & | getDataFilePathList ()
OSGDB_EXPORT std::string | findDataFile (const std::string &filename, CaseSensitivity caseSensitivity=CASE_SENSITIVE)
| Search for specified file in file system, checking the DataFilePathList for possible paths, returning the full path of the first valid file found, return an empty string if no string is found.
OSGDB_EXPORT std::string | findDataFile (const std::string &filename, const ReaderWriter::Options *options, CaseSensitivity caseSensitivity=CASE_SENSITIVE)
| Search for specified file in file system, checking first the database path set in the Options structure, then the DataFilePathList for possible paths, returning the full path of the first valid file found, return an empty string if no string is found.
void | setLibraryFilePathList (const FilePathList &filepaths)
void | setLibraryFilePathList (const std::string &paths)
FilePathList & | getLibraryFilePathList ()
OSGDB_EXPORT std::string | findLibraryFile (const std::string &filename, CaseSensitivity caseSensitivity=CASE_SENSITIVE)
OSGDB_EXPORT void | convertStringPathIntoFilePathList (const std::string &paths, FilePathList &filepath)
| convert a string containing a list of paths deliminated either with ';' (Windows) or ':' (All other platforms) into FilePath represetation.
OSGDB_EXPORT void | appendPlatformSpecificLibraryFilePaths (FilePathList &filepath)
OSGDB_EXPORT void | appendPlatformSpecificResourceFilePaths (FilePathList &filepath)
template<class Iterator> void | writeArray (Output &fw, Iterator first, Iterator last, int noItemsPerLine=0)
template<class Iterator> void | writeArrayAsInts (Output &fw, Iterator first, Iterator last, int noItemsPerLine=0)
OSGDB_EXPORT osg::Object * | readObjectFile (const std::string &filename, const ReaderWriter::Options *options)
| Read an osg::Object from file.
osg::Object * | readObjectFile (const std::string &filename)
| Read an osg::Object from file.
OSGDB_EXPORT osg::Image * | readImageFile (const std::string &filename, const ReaderWriter::Options *options)
| Read an osg::Image from file.
osg::Image * | readImageFile (const std::string &filename)
| Read an osg::Image from file.
OSGDB_EXPORT osg::HeightField * | readHeightFieldFile (const std::string &filename, const ReaderWriter::Options *options)
| Read an osg::HeightField from file.
osg::HeightField * | readHeightFieldFile (const std::string &filename)
| Read an osg::HeightField from file.
OSGDB_EXPORT osg::Node * | readNodeFile (const std::string &filename, const ReaderWriter::Options *options)
| Read an osg::Node from file.
osg::Node * | readNodeFile (const std::string &filename)
| Read an osg::Node from file.
OSGDB_EXPORT osg::Node * | readNodeFiles (std::vector< std::string > &commandLine, const ReaderWriter::Options *options)
| Read an osg::Node subgraph from files, creating a osg::Group to contain the nodes if more than one subgraph has been loaded.
osg::Node * | readNodeFiles (std::vector< std::string > &commandLine)
| Read an osg::Node subgraph from files, creating a osg::Group to contain the nodes if more than one subgraph has been loaded.
OSGDB_EXPORT osg::Node * | readNodeFiles (osg::ArgumentParser &parser, const ReaderWriter::Options *options)
| Read an osg::Node subgraph from files, creating a osg::Group to contain the nodes if more than one subgraph has been loaded.
osg::Node * | readNodeFiles (osg::ArgumentParser &parser)
| Read an osg::Node subgraph from files, creating a osg::Group to contain the nodes if more than one subgraph has been loaded.
void | readCommandLine (osg::ArgumentParser &parser)
| read the command line arguments.
OSGDB_EXPORT bool | writeObjectFile (const osg::Object &object, const std::string &filename)
| Write an osg::Object to file.
OSGDB_EXPORT bool | writeImageFile (const osg::Image &image, const std::string &filename)
| Write an osg::Image to file.
OSGDB_EXPORT bool | writeHeightFieldFile (const osg::HeightField &hf, const std::string &filename)
| Write an osg::HeightField to file.
OSGDB_EXPORT bool | writeNodeFile (const osg::Node &node, const std::string &filename)
| Write an osg::Node to file.

## Detailed Description

The osgDB library provides support for reading and writing scene graphs, providing a plugin framework and file utility classes.

The plugin framework in centred around the osgDB::Registry, and allows plugins which provide specific file format support to be dynamically loaded on demand.

## Typedef Documentation

typedef std::vector<std::string> osgDB::DirectoryContents

| simple list of names to represent a directory's contents.

typedef std::deque<std::string> osgDB::FilePathList

| list of directories to search through which searching for files.

## Enumeration Type Documentation

enum osgDB::CaseSensitivity

  | Enumeration values:
  CASE_SENSITIVE |
  CASE_INSENSITIVE |

enum osgDB::FileType

  | Enumeration values:
  FILE_NOT_FOUND |
  REGULAR_FILE |
  DIRECTORY |

## Function Documentation

OSGDB_EXPORT void appendPlatformSpecificLibraryFilePaths | ( | FilePathList & | filepath | ) |

OSGDB_EXPORT void appendPlatformSpecificResourceFilePaths | ( | FilePathList & | filepath | ) |

OSGDB_EXPORT bool containsServerAddress | ( | const std::string & | filename | ) |

OSGDB_EXPORT std::string convertFileNameToNativeStyle | ( | const std::string & | fileName | ) |

OSGDB_EXPORT std::string convertFileNameToUnixStyle | ( | const std::string & | fileName | ) |

OSGDB_EXPORT std::string convertFileNameToWindowsStyle | ( | const std::string & | fileName | ) |

OSGDB_EXPORT void convertStringPathIntoFilePathList | ( | const std::string & | paths,
|  | FilePathList & | filepath
| ) |

| convert a string containing a list of paths deliminated either with ';' (Windows) or ':' (All other platforms) into FilePath represetation.

OSGDB_EXPORT bool equalCaseInsensitive | ( | const std::string & | lhs,
|  | const char * | rhs
| ) |

OSGDB_EXPORT bool equalCaseInsensitive | ( | const std::string & | lhs,
|  | const std::string & | rhs
| ) |

OSGDB_EXPORT bool fileExists | ( | const std::string & | filename | ) |

| return true if a file exisits.

OSGDB_EXPORT FileType fileType | ( | const std::string & | filename | ) |

| return type of file.

OSGDB_EXPORT std::string findDataFile | ( | const std::string & | filename,
|  | const ReaderWriter::Options * | options,
|  | CaseSensitivity | caseSensitivity = CASE_SENSITIVE
| ) |

| Search for specified file in file system, checking first the database path set in the Options structure, then the DataFilePathList for possible paths, returning the full path of the first valid file found, return an empty string if no string is found.

OSGDB_EXPORT std::string findDataFile | ( | const std::string & | filename,
|  | CaseSensitivity | caseSensitivity = CASE_SENSITIVE
| ) |

| Search for specified file in file system, checking the DataFilePathList for possible paths, returning the full path of the first valid file found, return an empty string if no string is found.

OSGDB_EXPORT std::string findFileInDirectory | ( | const std::string & | fileName,
|  | const std::string & | dirName,
|  | CaseSensitivity | caseSensitivity = CASE_SENSITIVE
| ) |

| return the directory/filename of a file if its is contained within specified directory. return "" if directory does not contain file. If caseInsensitive is set to true then a case insensitive comparison is used to compare fileName to directory contents. This is useful when unix programs attempt read case insentive windows filenames.

OSGDB_EXPORT std::string findFileInPath | ( | const std::string & | filename,
|  | const FilePathList & | filePath,
|  | CaseSensitivity | caseSensitivity = CASE_SENSITIVE
| ) |

| find specified file in specified file path.

OSGDB_EXPORT std::string findLibraryFile | ( | const std::string & | filename,
|  | CaseSensitivity | caseSensitivity = CASE_SENSITIVE
| ) |

FilePathList& getDataFilePathList | ( |  | ) | `[inline]`

OSGDB_EXPORT DirectoryContents getDirectoryContents | ( | const std::string & | dirName | ) |

| return the contents of a directory. returns an empty array on any error.

OSGDB_EXPORT std::string getFileExtension | ( | const std::string & | filename | ) |

OSGDB_EXPORT std::string getFilePath | ( | const std::string & | filename | ) |

FilePathList& getLibraryFilePathList | ( |  | ) | `[inline]`

OSGDB_EXPORT std::string getLowerCaseFileExtension | ( | const std::string & | filename | ) |

OSGDB_EXPORT std::string getNameLessExtension | ( | const std::string & | fileName | ) |

OSGDB_EXPORT std::string getServerAddress | ( | const std::string & | filename | ) |

OSGDB_EXPORT std::string getServerFileName | ( | const std::string & | filename | ) |

OSGDB_EXPORT std::string getSimpleFileName | ( | const std::string & | fileName | ) |

OSGDB_EXPORT std::string getStrippedName | ( | const std::string & | fileName | ) |

OSGDB_EXPORT bool isFileNameNativeStyle | ( | const std::string & | fileName | ) |

OSGDB_EXPORT bool makeDirectory | ( | const std::string & | directoryPath | ) |

OSGDB_EXPORT bool makeDirectoryForFile | ( | const std::string & | filePath | ) |

OSGDB_EXPORT Archive* openArchive | ( | const std::string & | filename,
|  | Archive::ArchiveStatus | status,
|  | unsigned int | indexBlockSizeHint,
|  | ReaderWriter::Options * | options
| ) |

| Open an archive for reading or writing.

OSGDB_EXPORT Archive* openArchive | ( | const std::string & | filename,
|  | Archive::ArchiveStatus | status,
|  | unsigned int | indexBlockSizeHint = 4096
| ) |

| Open an archive for reading or writing.

void readCommandLine | ( | osg::ArgumentParser & | parser | ) | `[inline]`

| read the command line arguments.

osg::HeightField* readHeightFieldFile | ( | const std::string & | filename | ) | `[inline]`

| Read an osg::HeightField from file. Return valid osg::HeightField on success, return NULL on failure. The osgDB::Registry is used to load the appropriate ReaderWriter plugin for the filename extension, and this plugin then handles the request to read the specified file.

OSGDB_EXPORT osg::HeightField* readHeightFieldFile | ( | const std::string & | filename,
|  | const ReaderWriter::Options * | options
| ) |

| Read an osg::HeightField from file. Return valid osg::HeightField on success, return NULL on failure. Use the Options object to control cache operations and file search paths in osgDB::Registry. The osgDB::Registry is used to load the appropriate ReaderWriter plugin for the filename extension, and this plugin then handles the request to read the specified file.

osg::Image* readImageFile | ( | const std::string & | filename | ) | `[inline]`

| Read an osg::Image from file. Return valid osg::Image on success, return NULL on failure. The osgDB::Registry is used to load the appropriate ReaderWriter plugin for the filename extension, and this plugin then handles the request to read the specified file.

OSGDB_EXPORT osg::Image* readImageFile | ( | const std::string & | filename,
|  | const ReaderWriter::Options * | options
| ) |

| Read an osg::Image from file. Return valid osg::Image on success, return NULL on failure. Use the Options object to control cache operations and file search paths in osgDB::Registry. The osgDB::Registry is used to load the appropriate ReaderWriter plugin for the filename extension, and this plugin then handles the request to read the specified file.

osg::Node* readNodeFile | ( | const std::string & | filename | ) | `[inline]`

| Read an osg::Node from file. Return valid osg::Node on success, return NULL on failure. The osgDB::Registry is used to load the appropriate ReaderWriter plugin for the filename extension, and this plugin then handles the request to read the specified file.

OSGDB_EXPORT osg::Node* readNodeFile | ( | const std::string & | filename,
|  | const ReaderWriter::Options * | options
| ) |

| Read an osg::Node from file. Return valid osg::Node on success, return NULL on failure. Use the Options object to control cache operations and file search paths in osgDB::Registry. The osgDB::Registry is used to load the appropriate ReaderWriter plugin for the filename extension, and this plugin then handles the request to read the specified file.

osg::Node* readNodeFiles | ( | osg::ArgumentParser & | parser | ) | `[inline]`

| Read an osg::Node subgraph from files, creating a osg::Group to contain the nodes if more than one subgraph has been loaded.

OSGDB_EXPORT osg::Node* readNodeFiles | ( | osg::ArgumentParser & | parser,
|  | const ReaderWriter::Options * | options
| ) |

| Read an osg::Node subgraph from files, creating a osg::Group to contain the nodes if more than one subgraph has been loaded. Use the Options object to control cache operations and file search paths in osgDB::Registry.

osg::Node* readNodeFiles | ( | std::vector< std::string > & | commandLine | ) | `[inline]`

| Read an osg::Node subgraph from files, creating a osg::Group to contain the nodes if more than one subgraph has been loaded.

OSGDB_EXPORT osg::Node* readNodeFiles | ( | std::vector< std::string > & | commandLine,
|  | const ReaderWriter::Options * | options
| ) |

| Read an osg::Node subgraph from files, creating a osg::Group to contain the nodes if more than one subgraph has been loaded. Use the Options object to control cache operations and file search paths in osgDB::Registry.

osg::Object* readObjectFile | ( | const std::string & | filename | ) | `[inline]`

| Read an osg::Object from file. Return valid osg::Object on success, return NULL on failure. The osgDB::Registry is used to load the appropriate ReaderWriter plugin for the filename extension, and this plugin then handles the request to read the specified file.

OSGDB_EXPORT osg::Object* readObjectFile | ( | const std::string & | filename,
|  | const ReaderWriter::Options * | options
| ) |

| Read an osg::Object from file. Return valid osg::Object on success, return NULL on failure. Use the Options object to control cache operations and file search paths in osgDB::Registry. The osgDB::Registry is used to load the appropriate ReaderWriter plugin for the filename extension, and this plugin then handles the request to read the specified file.

void setDataFilePathList | ( | const std::string & | paths | ) | `[inline]`

void setDataFilePathList | ( | const FilePathList & | filepath | ) | `[inline]`

void setLibraryFilePathList | ( | const std::string & | paths | ) | `[inline]`

void setLibraryFilePathList | ( | const FilePathList & | filepaths | ) | `[inline]`

template<class Iterator>
void writeArray | ( | Output & | fw,
|  | Iterator | first,
|  | Iterator | last,
|  | int | noItemsPerLine = 0
| ) |

template<class Iterator>
void writeArrayAsInts | ( | Output & | fw,
|  | Iterator | first,
|  | Iterator | last,
|  | int | noItemsPerLine = 0
| ) |

OSGDB_EXPORT bool writeHeightFieldFile | ( | const osg::HeightField & | hf,
|  | const std::string & | filename
| ) |

| Write an osg::HeightField to file. Return true on success, return false on failure. The osgDB::Registry is used to load the appropriate ReaderWriter plugin for the filename extension, and this plugin then handles the request to write the specified file.

OSGDB_EXPORT bool writeImageFile | ( | const osg::Image & | image,
|  | const std::string & | filename
| ) |

| Write an osg::Image to file. Return true on success, return false on failure. The osgDB::Registry is used to load the appropriate ReaderWriter plugin for the filename extension, and this plugin then handles the request to write the specified file.

OSGDB_EXPORT bool writeNodeFile | ( | const osg::Node & | node,
|  | const std::string & | filename
| ) |

| Write an osg::Node to file. Return true on success, return false on failure. The osgDB::Registry is used to load the appropriate ReaderWriter plugin for the filename extension, and this plugin then handles the request to write the specified file.

OSGDB_EXPORT bool writeObjectFile | ( | const osg::Object & | object,
|  | const std::string & | filename
| ) |

| Write an osg::Object to file. Return true on success, return false on failure. The osgDB::Registry is used to load the appropriate ReaderWriter plugin for the filename extension, and this plugin then handles the request to write the specified file.