#include <daeIOPlugin.h>
Public Member Functions | |
virtual daeString | getOption (daeString option)=0 |
virtual const std::vector < std::string > & | getSupportedProtocols () |
virtual daeInt | setMeta (daeMetaElement *topMeta)=0 |
virtual daeInt | setOption (daeString option, daeString value)=0 |
virtual | ~daeIOPlugin () |
Operations | |
virtual daeInt | read (const daeURI &uri, daeString docBuffer)=0 |
virtual daeInt | write (const daeURI &name, daeDocument *document, daeBool replace)=0 |
Database setup | |
virtual void | setDatabase (daeDatabase *database)=0 |
Protected Attributes | |
std::vector< std::string > | supportedProtocols |
The daeIOPlugin
class provides the input/output plugin interface, which is the interface between the COLLADA runtime and the backend storage. A native COLLADA XML plugin implementation is provided along with this interface.
Definition at line 25 of file daeIOPlugin.h.
virtual daeIOPlugin::~daeIOPlugin | ( | ) | [inline, virtual] |
Destructor
Definition at line 31 of file daeIOPlugin.h.
getOption retrieves the value of an option from this IOPlugin. Which options a plugin supports is dependent on the plugin itself.
option | The option to get. |
Implemented in daeIOEmpty, daeTinyXMLPlugin, and daeLIBXMLPlugin.
virtual const std::vector<std::string>& daeIOPlugin::getSupportedProtocols | ( | ) | [inline, virtual] |
Returns a list of the URI protocols that this plugin supports.
Definition at line 88 of file daeIOPlugin.h.
Imports content into the database from an input. The input can be a file, a database or another runtime.
uri | the URI of the COLLADA document to load, not all plugins accept all types of URIs, check the documentation for the IO plugin you are using. | |
docBuffer | A string containing the text of the document to load. This is an optional attribute and should only be used if the document has already been loaded into memory. |
DAE::load()
. Implemented in daeIOEmpty, and daeIOPluginCommon.
virtual void daeIOPlugin::setDatabase | ( | daeDatabase * | database | ) | [pure virtual] |
Sets the database to use. All daeIOPlugins
use the same interface to the daeDatabase
, setDatabase()
tells the daeIOPlugin
which daeDatabase
object it should use for storage and queries.
database | Database to set. |
Implemented in daeIOEmpty, and daeIOPluginCommon.
virtual daeInt daeIOPlugin::setMeta | ( | daeMetaElement * | topMeta | ) | [pure virtual] |
Sets the top meta object. Called by dae::setIOPlugin()
when the IO plugin changes. It passes to this function the top meta object, which is the root of a hierarchy of daeMetaElement
objects. This top meta object is capable of creating any of the root objects in the DOM tree.
topMeta | Top meta object to use to create objects to fill the database. |
Implemented in daeIOEmpty, and daeIOPluginCommon.
setOption allows you to set options for this IOPlugin. Which options a plugin supports is dependent on the plugin itself. There is currently no list of options that plugins are suggested to implement.
option | The option to set. | |
value | The value to set the option. |
Implemented in daeIOEmpty, daeTinyXMLPlugin, and daeLIBXMLPlugin.
virtual daeInt daeIOPlugin::write | ( | const daeURI & | name, | |
daeDocument * | document, | |||
daeBool | replace | |||
) | [pure virtual] |
Writes a specific document to an output.
name | URI to write the document to, not all IO plugins support all types of URIs check the documentation for the IO plugin you are using. | |
document | Pointer to the document that we're going to write out. | |
replace | True if write should overwrite an existing file. False otherwise. |
DAE::saveAs()
Implemented in daeIOEmpty, daeTinyXMLPlugin, and daeLIBXMLPlugin.
std::vector<std::string> daeIOPlugin::supportedProtocols [protected] |
Definition at line 113 of file daeIOPlugin.h.