SceneLoaderData Class Referenceabstract

#include <c4d_filterdata.h>

Inheritance diagram for SceneLoaderData:

Detailed Description

A data class for creating scene loader plugins.
Use RegisterSceneLoaderPlugin() to register a scene loader plugin.

Public Member Functions

virtual Bool Identify (BaseSceneLoader *node, const Filename &name, UChar *probe, Int32 size)=0
 
virtual FILEERROR Load (BaseSceneLoader *node, const Filename &name, BaseDocument *doc, SCENEFILTER filterflags, String *error, BaseThread *bt)=0
 
- Public Member Functions inherited from NodeData
 NodeData ()
 
GeListNodeGet (void) const
 
virtual Bool Message (GeListNode *node, Int32 type, void *data)
 
virtual void GetBubbleHelp (GeListNode *node, String &str)
 
virtual BaseDocumentGetDocument (GeListNode *node)
 
virtual Int32 GetBranchInfo (GeListNode *node, BranchInfo *info, Int32 max, GETBRANCHINFO flags)
 
virtual Bool IsInstanceOf (const GeListNode *node, Int32 type) const
 
virtual Bool IsDocumentRelated (const GeListNode *node, Bool &docrelated) const
 
virtual Bool Init (GeListNode *node)
 
virtual void Free (GeListNode *node)
 
virtual Bool Read (GeListNode *node, HyperFile *hf, Int32 level)
 
virtual Bool Write (GeListNode *node, HyperFile *hf)
 
virtual Bool CopyTo (NodeData *dest, GeListNode *snode, GeListNode *dnode, COPYFLAGS flags, AliasTrans *trn)
 
virtual Bool GetDDescription (GeListNode *node, Description *description, DESCFLAGS_DESC &flags)
 
virtual Bool GetDParameter (GeListNode *node, const DescID &id, GeData &t_data, DESCFLAGS_GET &flags)
 
virtual Bool SetDParameter (GeListNode *node, const DescID &id, const GeData &t_data, DESCFLAGS_SET &flags)
 
virtual Bool GetDEnabling (GeListNode *node, const DescID &id, const GeData &t_data, DESCFLAGS_ENABLE flags, const BaseContainer *itemdesc)
 
virtual Bool TranslateDescID (GeListNode *node, const DescID &id, DescID &res_id, C4DAtom *&res_at)
 
- Public Member Functions inherited from BaseData
 BaseData ()
 
virtual ~BaseData (void)
 
void Destructor (void)
 

Additional Inherited Members

- Protected Attributes inherited from NodeData
GeListNodeprivate_link
 

Member Function Documentation

§ Identify()

virtual Bool Identify ( BaseSceneLoader node,
const Filename name,
UChar probe,
Int32  size 
)
pure virtual

Called to identify the file type as one that can be loaded using the scene loader.
If possible, the file should not be identified through the suffix, but through the probe data.

Parameters
[in]nodeEqual to static_cast<BaseSceneLoader*>->Get(). Provided for speed and convenience. Cinema 4D owns the pointed node.
[in]nameThe name of the file.
[in]probeThe start of a small chunk of data from the start of the file to identify the file type. Cinema 4D owns the pointed array.
[in]sizeThe size of the probe chunk, usually 1024 bytes.
Returns
true if the scene loader recognizes the file type, otherwise false.

§ Load()

virtual FILEERROR Load ( BaseSceneLoader node,
const Filename name,
BaseDocument doc,
SCENEFILTER  filterflags,
String error,
BaseThread bt 
)
pure virtual

Loads a file into a document.

Parameters
[in]nodeEqual to static_cast<BaseSceneLoader*>->Get(). Provided for speed and convenience. Cinema 4D owns the pointed node.
[in]nameThe name of the file.
[in]docThe document to load the scene into. Cinema 4D owns the pointed document.
[in]filterflagsThe scene filter flags: SCENEFILTER
[in]errorA string to hold any error message if loading fails. Cinema 4D owns the pointed string.
[in]btThe thread for the loading. Cinema 4D owns the pointed thread.
Returns
The result of loading the file: FILEERROR