Open Search
    c4d_objectdata.h File Reference

    Classes

    class  HandleInfo
     
    class  ObjectData
     

    Enumerations

    enum class  HANDLECONSTRAINTTYPE {
      INVALID ,
      LINEAR ,
      PLANAR ,
      FREE ,
      RADIAL ,
      SPHERICAL
    }
     

    Functions

    enum HANDLECONSTRAINTTYPE MAXON_ENUM_LIST (HANDLECONSTRAINTTYPE)
     
    Bool RegisterObjectPlugin (Int32 id, const maxon::String &str, Int32 info, DataAllocator *g, const maxon::String &description, BaseBitmap *icon, Int32 disklevel)
     
    Bool RegisterObjectPlugin (Int32 id, const maxon::String &str, Int32 info, DataAllocator *g, const maxon::String &description, BaseBitmap *icon, Int32 disklevel, OBJECTCATEGORY category)
     

    Variables

     INVALID
     
     LINEAR
     
     PLANAR
     
     FREE
     
     RADIAL
     
     SPHERICAL
     
    class HandleInfo MAXON_ENUM_LIST
     

    Function Documentation

    ◆ RegisterObjectPlugin() [1/2]

    Bool RegisterObjectPlugin ( Int32  id,
    const maxon::String str,
    Int32  info,
    DataAllocator g,
    const maxon::String description,
    BaseBitmap icon,
    Int32  disklevel 
    )

    Registers an object plugin.

    Parameters
    [in]idA unique plugin ID. Must be obtained from http://www.plugincafe.com
    [in]strThe name of the plugin.
    To affect the order that plugins are displayed in menus add "#$n" as a prefix to this name, where n is a number.
    Lower numbers are displayed before higher numbers. If name is "--" it will show up as a menu separator.
    [in]infoThe object plugin info flags: OBJECT PLUGINFLAG
    [in]gThe allocator for the object plugin. This is a pointer to a function that creates a new instance of ObjectData with NewObj().
    [in]descriptionThe name of the description resource file to use for the object plugin without .res extension, for example "Oobjectname".
    The name has to be unique, i.e. "Tdisplay" cannot be used for 2 different descriptions. See Description Resource for more information.
    [in]iconThe icon for the object. The bitmap is copied.
    The icon should be of size 32x32, but will be scaled if needed.
    It must also be 24 bits and should if possible include an alpha to support pattern backgrounds.
    [in]disklevelThe plugin level is similar to a version number. The default level is 0.
    Increase this for new revisions of a plugin to allow for forward and backward compatibility.

    As an example you may have updated a plugin. If you now need to write additional information for new settings or changed types for old settings increase the level.
    During loading either a 0 is passed (if the file was written by the old plugin) or 1 (if the file was written by the new plugin). This allows to easily write/read new values.
    For forward and backward compatibility to work any existing read order from a given level must not be changed. Cinema 4D skips any new settings automatically if they have not been read.

    disklevel is only useful if variables are written/read in NodeData::Write/ NodeData::Read.
    Returns
    true if the object plugin was registered, otherwise false.

    ◆ RegisterObjectPlugin() [2/2]

    Bool RegisterObjectPlugin ( Int32  id,
    const maxon::String str,
    Int32  info,
    DataAllocator g,
    const maxon::String description,
    BaseBitmap icon,
    Int32  disklevel,
    OBJECTCATEGORY  category 
    )

    Registers an object plugin.

    Parameters
    [in]idA unique plugin ID. Must be obtained from http://www.plugincafe.com
    [in]infoThe object plugin info flags: OBJECT PLUGINFLAG
    [in]gThe allocator for the object plugin. This is a pointer to a function that creates a new instance of ObjectData with NewObj().
    [in]descriptionThe name of the description resource file to use for the object plugin without .res extension, for example "Oobjectname".
    The name has to be unique, i.e. "Tdisplay" cannot be used for 2 different descriptions. See Description Resource for more information.
    [in]iconThe icon for the object. The bitmap is copied.
    The icon should be of size 32x32, but will be scaled if needed.
    It must also be 24 bits and should if possible include an alpha to support pattern backgrounds.
    [in]disklevelThe plugin level is similar to a version number. The default level is 0.
    Increase this for new revisions of a plugin to allow for forward and backward compatibility.

    As an example you may have updated a plugin. If you now need to write additional information for new settings or changed types for old settings increase the level.
    During loading either a 0 is passed (if the file was written by the old plugin) or 1 (if the file was written by the new plugin). This allows to easily write/read new values.
    For forward and backward compatibility to work any existing read order from a given level must not be changed. Cinema 4D skips any new settings automatically if they have not been read.

    disklevel is only useful if variables are written/read in NodeData::Write/ NodeData::Read.
    [in]categoryAllow to define the object's category. The object's category will affect how the object is displayed or selectable when changing the display or the selection filter.
    Returns
    true if the object plugin was registered, otherwise false.

    Variable Documentation

    ◆ INVALID

    INVALID

    Invalid handle constraint type, used to temporarily ignore handles (e.g. in the Camera Object with the Front/Back DOF handles).

    ◆ LINEAR

    LINEAR

    Linear handle constraint.

    ◆ PLANAR

    PLANAR

    Planar handle constraint.

    ◆ FREE

    FREE

    No constraint.

    ◆ RADIAL

    RADIAL

    Radial handle constraint.

    ◆ SPHERICAL

    SPHERICAL

    Spherical handle constraint.

    ◆ MAXON_ENUM_LIST

    class HandleInfo MAXON_ENUM_LIST