FCPArchive Class Reference
[FCollada Library Classes.]

A FCollada content archiving plugin. More...

#include <FColladaPlugin.h>

Inheritance diagram for FCPArchive:

FUPlugin FUTrackable FUObject List of all members.

Public Member Functions

virtual bool IsImportSupported ()=0
 Determine if this plug-in supports import into FCollada.
virtual bool IsExportSupported ()=0
 Determine if this plug-in supports export from FCollada.
virtual bool IsPartialExportSupported ()=0
 Determine if this plug-in supports exporting part of the FCollada assets.
virtual bool IsExtensionSupported (const char *ext)=0
 Determine if this plug-in supports the given file extension.
virtual int GetSupportedExtensionsCount ()=0
 Determine the number of file extension this plug-in supports.
virtual const char * GetSupportedExtensionAt (int index)=0
 Retrieve one supported extension.
virtual bool AddExtraExtension (const char *)
 Adds an extra extension to the list of supported extension by this plugin.
virtual bool RemoveExtraExtension (const char *)
 Removes an extension that has previously been added to the extra extension list.
virtual bool ImportFile (const fchar *filePath, FCDocument *document)=0
 Import a file into FCollada.
virtual bool ImportFileFromMemory (const fchar *filePath, FCDocument *document, const void *contents, size_t length)=0
 Import a file from the given memory address.
virtual bool ExportFile (FCDocument *document, const fchar *filePath)=0
 Export a file from FCollada.
virtual bool StartExport (const fchar *absoluteFilePath)=0
 Start exporting parts of the FCollada assets.
virtual bool ExportObject (FCDObject *object)=0
 Export one object in FCollada.
virtual bool EndExport (fm::vector< uint8 > &outData)=0
 End the export of the current document started by 'StartExport()'.
virtual bool EndExport (const fchar *filePath)=0
 End the export of the current document started by 'StartExport()'.
virtual bool ImportObject (FCDObject *object, const fm::vector< uint8 > &data)=0
 Load the save data onto an object.

Protected Member Functions

virtual ~FCPArchive ()
 Destructor.

Detailed Description

A FCollada content archiving plugin.

FCollada utilizes these plugins to import from and export to different 3D formats. Aside from supporting the standard XML format, binary fomrats can also be supported(E.g. X3D, IFF, OpenFlight).

See also:
FUPlugin


Constructor & Destructor Documentation

virtual FCPArchive::~FCPArchive  )  [inline, protected, virtual]
 

Destructor.

Don't destroy directly, use the Release function.


Member Function Documentation

virtual bool FCPArchive::AddExtraExtension const char *   )  [inline, virtual]
 

Adds an extra extension to the list of supported extension by this plugin.

Parameters:
ext The new extension to support.
Returns:
Whether the extension was added.

virtual bool FCPArchive::EndExport const fchar *  filePath  )  [pure virtual]
 

End the export of the current document started by 'StartExport()'.

Only valid if 'IsPartlyExportSupported()' returns 'true'. This function will release any resources associated with the export.

Parameters:
filePath A full file path specifying the location to write the currently exported document too.
Returns:
Whether the call is valid, and the file is written to disk without error.

virtual bool FCPArchive::EndExport fm::vector< uint8 > &  outData  )  [pure virtual]
 

End the export of the current document started by 'StartExport()'.

Only valid if 'IsPartlyExportSupported()' returns 'true'. This function will release any resources associated with the export.

Parameters:
outData [out] Void pointer to recieve a pointer to the memory chunk to write
Returns:
Whether the request is valid, and the outData has been filled.

virtual bool FCPArchive::ExportFile FCDocument document,
const fchar *  filePath
[pure virtual]
 

Export a file from FCollada.

Parameters:
document a document to be be exported.
filePath full file path to the file to be exported.
Returns:
Whether the file is exported successfully.

virtual bool FCPArchive::ExportObject FCDObject object  )  [pure virtual]
 

Export one object in FCollada.

Only valid if 'IsPartlyExportSupported()' returns 'true'.

Parameters:
document the FCDocument that contains the object to be exported.
object the FCDObject to be exported to the file specified in 'StartExport()'
Returns:
Whether the given object is successfully exported.

virtual const char* FCPArchive::GetSupportedExtensionAt int  index  )  [pure virtual]
 

Retrieve one supported extension.

Parameters:
index the index at which the extension is to be retrieved. Ideally to be less then that returned by GetSupportedExtensionsCount().
Returns:
the string of the file extension at the given index. NULL is returned if the given index is invalid.

virtual int FCPArchive::GetSupportedExtensionsCount  )  [pure virtual]
 

Determine the number of file extension this plug-in supports.

Returns:
number of supported file extensions.

virtual bool FCPArchive::ImportFile const fchar *  filePath,
FCDocument document
[pure virtual]
 

Import a file into FCollada.

Parameters:
filePath full file path to the file to be imported.
document an empty document to be filled with imported content.
Returns:
Whether the file is imported successfully.

virtual bool FCPArchive::ImportFileFromMemory const fchar *  filePath,
FCDocument document,
const void *  contents,
size_t  length
[pure virtual]
 

Import a file from the given memory address.

It is the plugin managers duty to ensure that the appropriate plugin is selected based on the content of this memory address.

Parameters:
document An empty document to load imported content into.
contents The content to load into the document, in a format suitable to be read by this plugin.
length The length of the content buffer.
Returns:
Whether the file is imported successfully.

virtual bool FCPArchive::ImportObject FCDObject object,
const fm::vector< uint8 > &  data
[pure virtual]
 

Load the save data onto an object.

This allows for loads of partial documents

Parameters:
object The object to recieve the loaded data
data The data to load
Returns:
Whether the load was successful

virtual bool FCPArchive::IsExportSupported  )  [pure virtual]
 

Determine if this plug-in supports export from FCollada.

Returns:
Whether this plug-in supports export.

virtual bool FCPArchive::IsExtensionSupported const char *  ext  )  [pure virtual]
 

Determine if this plug-in supports the given file extension.

Parameters:
ext string for the file extension
Returns:
'true' if the given file extension is supported by this plug-in.

virtual bool FCPArchive::IsImportSupported  )  [pure virtual]
 

Determine if this plug-in supports import into FCollada.

Returns:
Whether this plug-in supports import.

virtual bool FCPArchive::IsPartialExportSupported  )  [pure virtual]
 

Determine if this plug-in supports exporting part of the FCollada assets.

Returns:
Whether partial export is supported.

virtual bool FCPArchive::RemoveExtraExtension const char *   )  [inline, virtual]
 

Removes an extension that has previously been added to the extra extension list.

Parameters:
ext The extension to remove.
Returns:
Whether the extension was supported and can be removed.

virtual bool FCPArchive::StartExport const fchar *  absoluteFilePath  )  [pure virtual]
 

Start exporting parts of the FCollada assets.

Only valid if 'IsPartlyExportSupported()' returns 'true'.

Parameters:
filePath A full file path specifying the location of the target path This is in order to process relative file paths correctly. If this parameter is NULL then all paths will be exported absolutely.
Returns:
Whether the operation succeeded.


The documentation for this class was generated from the following file:
Generated on Thu Feb 14 16:58:40 2008 for FCollada by  doxygen 1.4.6-NO