Open Search
    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, maxon::String *error, BaseThread *bt)=0
     
    - Public Member Functions inherited from NodeData
     NodeData ()
     
    GeListNodeGet ()
     
    const GeListNodeGet () const
     
    virtual Bool Message (GeListNode *node, Int32 type, void *data)
     
    virtual void GetBubbleHelp (GeListNode *node, maxon::String &str)
     
    virtual const BaseDocumentGetDocument (const GeListNode *node) const
     
    virtual maxon::Result< BoolGetBranchInfo (const GeListNode *node, const maxon::ValueReceiver< const BranchInfo & > &info, GETBRANCHINFO flags) const
     
    virtual Bool IsInstanceOf (const GeListNode *node, Int32 type) const
     
    virtual Bool IsDocumentRelated (const GeListNode *node, Bool &docrelated) const
     
    virtual maxon::Result< BoolGetAccessedObjects (const BaseList2D *node, METHOD_ID method, AccessedObjectsCallback &access) const
     
    virtual maxon::Result< maxon::GenericDataGroupChanges (BaseList2D *node)
     
    virtual Bool Init (GeListNode *node, Bool isCloneInit)
     
    virtual void Free (GeListNode *node)
     
    virtual Bool Read (GeListNode *node, HyperFile *hf, Int32 level)
     
    virtual Bool Write (const GeListNode *node, HyperFile *hf) const
     
    virtual Bool CopyTo (NodeData *dest, const GeListNode *snode, GeListNode *dnode, COPYFLAGS flags, AliasTrans *trn) const
     
    virtual Bool GetDDescription (const GeListNode *node, Description *description, DESCFLAGS_DESC &flags) const
     
    virtual Bool GetDParameter (const GeListNode *node, const DescID &id, GeData &t_data, DESCFLAGS_GET &flags) const
     
    virtual Bool SetDParameter (GeListNode *node, const DescID &id, const GeData &t_data, DESCFLAGS_SET &flags)
     
    virtual Bool GetDEnabling (const GeListNode *node, const DescID &id, const GeData &t_data, DESCFLAGS_ENABLE flags, const BaseContainer *itemdesc) const
     
    virtual Bool TranslateDescID (GeListNode *node, const DescID &id, DescID &res_id, C4DAtom *&res_at)
     
    - Public Member Functions inherited from BaseData
    virtual ~BaseData ()
     
    void Destructor ()
     

    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<*>->Get(). Provided for speed and convenience. Cinema 4D owns the pointed node. name The name of the file. probe The start of a small chunk of data from the start of the file to identify the file type. Cinema 4D owns the pointed array. size The size of the probe chunk, usually 1024 bytes.
    Returns
    true if the scene loader recognizes the file type, otherwise false.

    ◆ Load()