From Paul Martz, "here's the osgDB::Registry changes to add Options to the read*File() interface. As we discussed, this preserves the old interface for backwards compatibility.

osgconv also changed to use the new Registry::writeNode() interface. No other applications or examples were affected."
This commit is contained in:
Robert Osfield
2007-09-30 19:53:02 +00:00
parent e55a992767
commit 38d33c7685
5 changed files with 97 additions and 50 deletions

View File

@@ -19,6 +19,7 @@
#include <osg/Node>
#include <osgDB/Export>
#include <osgDB/Registry>
#include <string>
@@ -27,11 +28,31 @@ namespace osgDB {
/** Write an osg::Object to file.
* Return true on success,
* return false 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 write the specified file.*/
extern OSGDB_EXPORT bool writeObjectFile(const osg::Object& object, const std::string& filename, const ReaderWriter::Options* options );
extern 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.*/
inline bool writeObjectFile(const osg::Object& object, const std::string& filename)
{
return writeObjectFile( object, filename, Registry::instance()->getOptions() );
}
/** Write an osg::Image to file.
* Return true on success,
* return false 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 write the specified file.*/
extern OSGDB_EXPORT bool writeImageFile(const osg::Image& image, const std::string& filename, const ReaderWriter::Options* options );
/** Write an osg::Image to file.
* Return true on success,
@@ -39,7 +60,19 @@ extern OSGDB_EXPORT bool writeObjectFile(const osg::Object& object, const std::s
* 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.*/
extern OSGDB_EXPORT bool writeImageFile(const osg::Image& image, const std::string& filename);
inline bool writeImageFile(const osg::Image& image, const std::string& filename)
{
return writeImageFile( image, filename, Registry::instance()->getOptions() );
}
/** Write an osg::HeightField to file.
* Return true on success,
* return false 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 write the specified file.*/
extern OSGDB_EXPORT bool writeHeightFieldFile(const osg::HeightField& hf, const std::string& filename, const ReaderWriter::Options* options );
/** Write an osg::HeightField to file.
* Return true on success,
@@ -47,7 +80,19 @@ extern OSGDB_EXPORT bool writeImageFile(const osg::Image& image, const std::stri
* 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.*/
extern OSGDB_EXPORT bool writeHeightFieldFile(const osg::HeightField& hf, const std::string& filename);
inline bool writeHeightFieldFile(const osg::HeightField& hf, const std::string& filename)
{
return writeHeightFieldFile( hf, filename, Registry::instance()->getOptions() );
}
/** Write an osg::Node to file.
* Return true on success,
* return false 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 write the specified file.*/
extern OSGDB_EXPORT bool writeNodeFile(const osg::Node& node, const std::string& filename, const ReaderWriter::Options* options );
/** Write an osg::Node to file.
* Return true on success,
@@ -55,8 +100,10 @@ extern OSGDB_EXPORT bool writeHeightFieldFile(const osg::HeightField& hf, const
* 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.*/
extern OSGDB_EXPORT bool writeNodeFile(const osg::Node& node, const std::string& filename);
inline bool writeNodeFile(const osg::Node& node, const std::string& filename)
{
return writeNodeFile( node, filename, Registry::instance()->getOptions() );
}
}