Open Search
    Description

    Detailed Description

    Groups

     COLOR
     
     COLORA
     
     CUSTOMGUI
     
     DESC
     
     DTYPE
     
     VECTOR
     
     VECTOR4D
     

    Classes

    struct  DescLevel
     
    class  DescID
     
    class  ConstDescIDMem< T >
     
    class  Description
     
    class  DynamicDescription
     
    struct  DescriptionBaseMessage
     
    struct  DescriptionCommand
     
    struct  DescriptionPopup
     
    struct  DescriptionCheckDragAndDrop
     
    struct  DescriptionInExDeleted
     
    struct  DescriptionInExAdded
     
    struct  DescriptionInExSelChanged
     
    struct  DescriptionCustomGuiNotification
     
    struct  DescriptionGetBitmap
     
    struct  DescriptionGetObjects
     
    struct  DescriptionAllowOverride
     
    struct  DescriptionTakeChanged
     
    struct  DescriptionImExportVerifySuffix
     
    struct  DescriptionImExportVerifyFilename
     

    Macros

    #define DESCID_ROOT
     
    #define ID_USERDATA
     
    #define DESCID_DYNAMICSUB
     
    #define BOOL_PAGEMODE
     
    #define VECTOR_NO_Z_COMPONENT
     
    #define CUSTOMDATATYPE_DESCID
     
    #define YDescLevel(A, B, C, ...)
     
    #define XDescLevel(...)
     
    #define AddDescX(t, i, a)
     
    #define ConstDescID(...)
     
    #define CreateDescID(...)
     

    Typedefs

    using Array = DescLevel[sizeof...(T)/3]
     

    Functions

    DescriptionLib * CheckDescriptionLib (Int32 offset)
     
    constexpr DescLevel (Int32 t_id)
     
    constexpr DescLevel (Int32 t_id, Int32 t_datatype, Int32 t_creator)
     
    Bool operator== (const DescLevel &d) const
     
    Bool operator!= (const DescLevel &d) const
     
    String ToString (const maxon::FormatStatement *formatStatement=nullptr) const
     
    static const ArrayToArray ()
     
     Description ()
     
     ~Description ()
     
    Bool LoadDescription (const BCResourceObj *bc, Bool copy)
     
    Bool LoadDescription (Int32 id)
     
    Bool LoadDescription (const String &id)
     
    Bool SortGroups ()
     
    const BCResourceObj * GetDescription ()
     
    const BaseContainerGetParameter (const DescID &id, BaseContainer &temp, AtomArray *ar) const
     
    BaseContainerGetParameterI (const DescID &id, AtomArray *ar)
     
    Bool SetParameter (const DescID &id, const BaseContainer &param, const DescID &groupid)
     
    void * BrowseInit () const
     
    Bool GetNext (void *handle, const BaseContainer **bc, DescID &id, DescID &groupid) const
     
    void BrowseFree (void *&handle) const
     
    DescEntry * GetFirst (const AtomArray &op)
     
    DescEntry * GetNext (DescEntry *de)
     
    DescEntry * GetDown (DescEntry *de)
     
    void GetDescEntry (DescEntry *de, const BaseContainer **bc, DescID &descid)
     
    SubDialogCreateDialogI ()
     
    void FreeDialog (SubDialog *dlg)
     
    Bool CreatePopupMenu (BaseContainer &menu)
     
    Bool GetPopupId (Int32 id, const DescID &descid)
     
    Bool CheckDescID (const DescID &searchid, const AtomArray &ops, DescID *completeid)
     
    Bool GetSubDescriptionWithData (const DescID &did, const AtomArray &op, RESOURCEDATATYPEPLUGIN *resdatatypeplugin, const BaseContainer &bc, DescID *singledescid)
     
    const DescIDGetSingleDescID ()
     
    void SetSingleDescriptionMode (const DescID &descid)
     
     DynamicDescription ()
     
     ~DynamicDescription ()
     
    DescID Alloc (const BaseContainer &datadescription)
     
    Bool Set (const DescID &descid, const BaseContainer &datadescription, BaseList2D *bl)
     
    const BaseContainerFind (const DescID &descid) const
     
    Bool Remove (const DescID &descid)
     
    Bool CopyTo (DynamicDescription *dest) const
     
    void * BrowseInit ()
     
    const void * BrowseInit () const
     
    Bool BrowseGetNext (void *handle, DescID *id, const BaseContainer **data)
     
    Bool BrowseGetNext (const void *handle, DescID *id, const BaseContainer **data) const
     
    void BrowseFree (void *&handle)
     
    void BrowseFree (const void *&handle) const
     
    Bool FillDefaultContainer (BaseContainer &res, Int32 type, const String &name)
     
    UInt32 GetDirty () const
     
    Bool Description_Register (Int32 id, const String &idstr, LocalResource *res)
     

    Variables

    Int32 id
     
    Int32 dtype
     
    Int32 creator
     
    maxon::StrongCOWRef< Int >   _refData
     
    maxon::Block< const DescLevel >   _constData
     
    union {
       maxon::StrongCOWRef< Int >   _refData
     
       maxon::Block< const DescLevel >   _constData
     
    }; 
     
    static constexpr Int32 _ids []
     

    Constructor/Destructor

     DescID ()
     
     DescID (const DescID &src)
     
     DescID (DescID &&src)
     
    template<int elementCount>
    constexpr DescID (maxon::IN_PLACE_TYPE v, const DescLevel(&ids)[elementCount])
     
     DescID (maxon::IN_PLACE_TYPE v, const maxon::Block< const DescLevel > &ids)
     
    template<typename... T>
    static DescID Create (const T &... ids)
     
     ~DescID ()
     

    Set/Push/Pop Level

    void SetId (const DescLevel &subid)
     
    void PushId (const DescLevel &subid)
     
    void PushId (const std::initializer_list< DescLevel > &subids)
     
    void PopId ()
     

    Operator

    const DescLeveloperator[] (Int32 pos) const
     
    const DescIDoperator= (const DescID &id)
     
    const DescIDoperator= (DescID &&id)
     
    Bool operator== (const DescID &d) const
     
    Bool operator!= (const DescID &d) const
     
    const DescID operator<< (Int32 shift) const
     
    const DescIDoperator+= (const DescID &s)
     
    const DescID operator+ (const DescID &v1, const DescID &v2)
     

    Read/Write

    Bool Read (HyperFile *hf)
     
    Bool Write (HyperFile *hf) const
     

    Miscellaneous

    Int32 GetDepth () const
     
    Bool IsPopulated () const
     
    Bool IsEmpty () const
     
    Bool IsPartOf (const DescID &cmp, Int32 *pos) const
     
    maxon::HashInt GetHashCode () const
     

    Alloc/Free

    static DescriptionAlloc ()
     
    static void Free (Description *&description)
     

    Macro Definition Documentation

    ◆ DESCID_ROOT

    #define DESCID_ROOT

    Root description ID.

    ◆ ID_USERDATA

    #define ID_USERDATA

    User data ID.

    ◆ DESCID_DYNAMICSUB

    #define DESCID_DYNAMICSUB

    User data/dynamic parameters description level.

    ◆ BOOL_PAGEMODE

    #define BOOL_PAGEMODE

    Page mode for boolean elements. If set it means that this boolean will have no checkbox. (Used for the Material Editor navigation.)

    ◆ VECTOR_NO_Z_COMPONENT

    #define VECTOR_NO_Z_COMPONENT

    Private. Restricts the displayed vector to two instead of three components.

    ◆ CUSTOMDATATYPE_DESCID

    #define CUSTOMDATATYPE_DESCID

    DescID custom data type ID.

    ◆ YDescLevel

    #define YDescLevel (   A,
      B,
      C,
      ... 
    )

    ◆ XDescLevel

    #define XDescLevel (   ...)

    ◆ AddDescX

    #define AddDescX (   t,
      i,
     
    )

    ◆ ConstDescID

    #define ConstDescID (   ...)

    ◆ CreateDescID

    #define CreateDescID (   ...)

    Typedef Documentation

    ◆ Array

    using Array = DescLevel[sizeof...(T) / 3]

    Function Documentation

    ◆ CheckDescriptionLib()

    DescriptionLib* cinema::CheckDescriptionLib ( Int32  offset)

    ◆ DescLevel() [1/2]

    constexpr DescLevel ( Int32  t_id)
    constexpr

    Constructor, specifying only the ID.

    Parameters
    [in]t_idInitial value for id.

    ◆ DescLevel() [2/2]

    constexpr DescLevel ( Int32  t_id,
    Int32  t_datatype,
    Int32  t_creator 
    )
    constexpr
    Parameters
    [in]t_idInitial value for id.
    [in]t_datatypeInitial value for dtype.
    [in]t_creatorInitial value for creator.

    ◆ operator==() [1/2]

    Bool operator== ( const DescLevel d) const

    Equality operator. Checks if description levels are equals i.e all vales are equal.

    Parameters
    [in]dA description level to compare with.
    Returns
    true if description levels are equal, otherwise false.

    ◆ operator!=() [1/2]

    Bool operator!= ( const DescLevel d) const

    Inequality operator. Checks if description levels are not equal i.e any vales is different.

    Parameters
    [in]dA description level to compare with.
    Returns
    true if description levels are not equal, otherwise false.

    ◆ ToString()

    String ToString ( const maxon::FormatStatement formatStatement = nullptr) const

    ◆ DescID() [1/5]

    DescID ( )

    Default constructor.

    ◆ DescID() [2/5]

    DescID ( const DescID src)

    Copy constructor.

    Parameters
    [in]srcSource DescID.

    ◆ DescID() [3/5]

    DescID ( DescID &&  src)

    Move constructor.

    Parameters
    [in]srcSource DescID.

    ◆ DescID() [4/5]

    constexpr DescID ( maxon::IN_PLACE_TYPE  v,
    const DescLevel(&)  ids[elementCount] 
    )
    explicitconstexpr

    Creates an ID with any number of levels. Must be used only with ConstDescID or memory which is never deleted.

    Parameters
    [in]idsarray with DescLevels.

    ◆ DescID() [5/5]

    DescID ( maxon::IN_PLACE_TYPE  v,
    const maxon::Block< const DescLevel > &  ids 
    )
    explicit

    Creates an ID with any number of levels. Must be used only with ConstDescID or memory which is never deleted.

    Parameters
    [in]idsarray with DescLevels.

    ◆ Create()

    static DescID Create ( const T &...  ids)
    static

    Creates an ID with any number of levels.

    Parameters
    [in]idsarray with DescLevels.

    ◆ ~DescID()

    ~DescID ( )

    Default destructor.

    ◆ SetId()

    void SetId ( const DescLevel subid)

    Sets the highest level to subid.

    Parameters
    [in]subidNew top level.

    ◆ PushId() [1/2]

    void PushId ( const DescLevel subid)

    Pushes a new level onto the stack.

    Parameters
    [in]subidLevel to push.

    ◆ PushId() [2/2]

    void PushId ( const std::initializer_list< DescLevel > &  subids)

    Pushes a new level onto the stack.

    Parameters
    [in]subidsLevels to push.

    ◆ PopId()

    void PopId ( )

    Pop the highest level from the stack.

    ◆ operator[]()

    const DescLevel& operator[] ( Int32  pos) const

    Accesses the level at position pos in the stack.

    Parameters
    [in]posThe position: 0 <= pos < GetDepth()
    Returns
    The level at the specified position.

    ◆ operator=() [1/2]

    const DescID& operator= ( const DescID id)

    Assignment operator. Assigns id to the description ID.

    Parameters
    [in]idRight operand. Source description ID.
    Returns
    Left operant.

    ◆ operator=() [2/2]

    const DescID& operator= ( DescID &&  id)

    Move Assignment operator. Assigns id to the description ID.

    Parameters
    [in]idRight operand. Source description ID.
    Returns
    Left operant.

    ◆ operator==() [2/2]

    Bool operator== ( const DescID d) const

    Equality operator. Checks if all levels are equal.

    Parameters
    [in]dRight operand description ID.
    Returns
    true if description IDs are equal, otherwise false.

    ◆ operator!=() [2/2]

    Bool operator!= ( const DescID d) const

    Inequality operator. Checks if any level is different.

    Parameters
    [in]dRight operand description ID.
    Returns
    true if description IDs are not equal, otherwise false.

    ◆ operator<<()

    const DescID operator<< ( Int32  shift) const

    Get the result of popping levels from the bottom of the stack.

    Parameters
    [in]shiftNumber of levels to pop. 0 <= shift < GetDepth().
    Returns
    Resulting description ID after popping level(s).

    ◆ operator+=()

    const DescID& operator+= ( const DescID s)

    Add operator. Merges two description IDs.

    Parameters
    [in]sRight operand. Source description ID.
    Returns
    Left operant.

    ◆ Read()

    Bool Read ( HyperFile hf)

    Reads the description ID from hf.

    Parameters
    [in]hfThe hyper file to read from. The caller owns the pointed hyper file.
    Returns
    true if successful, otherwise false.

    ◆ Write()

    Bool Write ( HyperFile hf) const

    Writes the description ID to hf.

    Parameters
    [in]hfThe hyper file to write to. The caller owns the pointed hyper file.
    Returns
    true if successful, otherwise false.

    ◆ GetDepth()

    Int32 GetDepth ( ) const

    Gets the depth of the stack, i.e. the number of levels.

    Returns
    The depth of the stack.

    ◆ IsPopulated()

    Bool IsPopulated ( ) const

    Returns True if Id is set to any value.

    ◆ IsEmpty()

    Bool IsEmpty ( ) const

    Returns True if Id is not set to any value.

    ◆ IsPartOf()

    Bool IsPartOf ( const DescID cmp,
    Int32 pos 
    ) const

    Checks if the description ID is part of cmp and assigns the length of the match to pos.

    Parameters
    [in]cmpThe super description ID.
    [out]posIf not nullptr this is assigned the length of the match.
    Returns
    true if the description ID matches the lowest part of cmp, otherwise false.

    ◆ GetHashCode()

    maxon::HashInt GetHashCode ( ) const

    Gets a hash code for the description ID.

    Since
    R17.032
    Returns
    The hash code.

    ◆ ToArray()

    static const Array& ToArray ( )
    static

    ◆ Description()

    Description ( )
    private

    ◆ ~Description()

    ~Description ( )
    private

    ◆ Alloc() [1/2]

    static Description* Alloc ( )
    static

    Allocates a description. Destroy the allocated description with Free(). Use AutoAlloc to automate the allocation and destruction based on scope.

    Returns
    The allocated description, or nullptr if the allocation failed.

    ◆ Free()

    static void Free ( Description *&  description)
    static

    Destructs descriptions allocated with Alloc(). Use AutoAlloc to automate the allocation and destruction based on scope.

    Parameters
    [in,out]descriptionThe description to destruct. If the pointer is nullptr nothing happens. The pointer is assigned nullptr afterwards.

    ◆ LoadDescription() [1/3]

    Bool LoadDescription ( const BCResourceObj *  bc,
    Bool  copy 
    )

    Loads a description from a BCResourceObj, such as the one returned from GetDescription().

    Warning
    Existing entries are lost.
    Parameters
    [in]bcThe BCResourceObj to load the description from.
    [in]copytrue if the description should be copied, otherwise the objects will share the same internal data so that changes to one affects the other.
    Returns
    true if the description was loaded, otherwise false.

    ◆ LoadDescription() [2/3]

    Bool LoadDescription ( Int32  id)

    Loads a description by ID. The ID must have been registered with RegisterDescription().

    Warning
    Existing entries are lost.
    Parameters
    [in]idThe description ID, for example Obase.
    Returns
    true if the description was loaded, otherwise false.

    ◆ LoadDescription() [3/3]

    Bool LoadDescription ( const String id)

    Loads a description by name. The description name must have been registered with RegisterDescription().

    Warning
    Existing entries are lost.
    Parameters
    [in]idThe description name, for example "Obase".
    Returns
    true if the description was loaded, otherwise false.

    ◆ SortGroups()

    Bool SortGroups ( )

    Private.

    ◆ GetDescription()

    const BCResourceObj* GetDescription ( )

    Retrieves the internal pointer of the description.

    Returns
    The internal description pointer.

    ◆ GetParameter()

    const BaseContainer* GetParameter ( const DescID id,
    BaseContainer temp,
    AtomArray ar 
    ) const

    Retrieves the information container for a description parameter.

    Parameters
    [in]idThe description ID.
    [out]tempWhen the parameter is of a dynamic type that does not already exist as predefined container, i.e. not returnable as pointer, the result is the address of temp, where temp allows to store the data.
    In this case nullptr is returned.
    [out]arMost of the time this can be just AtomArray(). However dynamic descriptions (like sub-descriptions of a gradient or dynamic XPresso node) need an array of elements the parameter is assigned to.
    Returns
    The information container, or nullptr if temp was used. The description owns the pointed container.

    ◆ GetParameterI()

    BaseContainer* GetParameterI ( const DescID id,
    AtomArray ar 
    )

    Retrieves a pointer to the information container for a description parameter.

    Parameters
    [in]idThe description ID.
    [out]arMost of the time this can be just AtomArray(). However dynamic descriptions (like sub-descriptions of a gradient or dynamic XPresso node) need an array of elements the parameter is assigned to.
    Returns
    The information container. The description owns the pointed container.

    ◆ SetParameter()

    Bool SetParameter ( const DescID id,
    const BaseContainer param,
    const DescID groupid 
    )

    Inserts a description parameter into the collection.

    Parameters
    [in]idThe description ID.
    [in]paramThe settings for the new parameter.
    [in]groupidThe ID of the parameter's group, or DESCID_ROOT.
    Returns
    true if the parameter was inserted, otherwise false.

    ◆ BrowseInit() [1/3]

    void* BrowseInit ( ) const

    Starts browsing the parameters linearly.

    Warning
    After browsing is done done BrowseFree() must be called.
    Returns
    The browse handle.

    ◆ GetNext() [1/2]

    Bool GetNext ( void *  handle,
    const BaseContainer **  bc,
    DescID id,
    DescID groupid 
    ) const

    Retrieves the next parameter in a browse sequence initialized with BrowseInit().

    Parameters
    [in]handleThe browse handle returned by BrowseInit().
    [out]bcAssigned the settings for the retrieved parameter. The caller owns the pointed base container.
    [out]idAssigned the ID of the retrieved parameter.
    [out]groupidAssigned the group ID of the retrieved parameter.
    Returns
    true if a new parameter was retrieved, otherwise the sequence is finished.

    ◆ BrowseFree() [1/3]

    void BrowseFree ( void *&  handle) const

    Frees browse handles from BrowseInit().

    Parameters
    [in,out]handleThe handle to free. Assigned nullptr.

    ◆ GetFirst()

    DescEntry* GetFirst ( const AtomArray op)

    Gets a handle to the first description entry. Use GetDescEntry() to access the information and GetNext() or GetDown() to browse the hierarchy.

    Parameters
    [in]opMost of the time this can be just AtomArray(). However dynamic descriptions (like sub-descriptions of a gradient or dynamic XPresso node) need an array of elements the parameter is assigned to.
    Returns
    The description entry handle.

    ◆ GetNext() [2/2]

    DescEntry* GetNext ( DescEntry *  de)

    Gets the next description entry handle.

    Parameters
    [in]deThe current description entry handle.
    Returns
    The next description entry handle.

    ◆ GetDown()

    DescEntry* GetDown ( DescEntry *  de)

    Gets the child description entry handle.

    Parameters
    [in]deThe current description entry handle.
    Returns
    The child description entry handle.

    ◆ GetDescEntry()

    void GetDescEntry ( DescEntry *  de,
    const BaseContainer **  bc,
    DescID descid 
    )

    Retrieves the data for a description entry handle.

    Parameters
    [in]deThe current description entry handle.
    [out]bcAssigned the settings for the retrieved parameter. The caller owns the pointed base container.
    [out]descidAssigned the ID of the retrieved parameter.

    ◆ CreateDialogI()

    SubDialog* CreateDialogI ( )

    Private.

    ◆ FreeDialog()

    void FreeDialog ( SubDialog dlg)

    Private.

    ◆ CreatePopupMenu()

    Bool CreatePopupMenu ( BaseContainer menu)

    Builds a popup menu for choosing a parameter in the description.

    Parameters
    [out]menuAssigned the menu container.
    Returns
    true if the menu was built, otherwise false.

    ◆ GetPopupId()

    Bool GetPopupId ( Int32  id,
    const DescID descid 
    )

    Private.

    ◆ CheckDescID()

    Bool CheckDescID ( const DescID searchid,
    const AtomArray ops,
    DescID completeid 
    )

    Checks if a description ID searchid exists for the given objects ops (usually only one single object is passed as otherwise the smallest common nominator is returned).
    If completeid != nullptr and the return value is true the complete ID will be assigned to completeid.

    Note
    Complete ID means that all parts of the DescLevel are filled with appropriate data.
    For example if the DescID passed is:
    ConstDescID(DescLevel(ID_BASEOBJECT_POSITION, 0, 0), DescLevel(VECTOR_X, 0, 0))
    @ VECTOR_X
    X component.
    Definition: lib_description.h:277
    #define ConstDescID(...)
    Definition: lib_description.h:592
    CheckDescID() will return:
    ConstDescID(DescLevel(ID_BASEOBJECT_POSITION, DTYPE_VECTOR, ID_BASEOBJECT_GROUP1), DescLevel(VECTOR_X, DTYPE_REAL, ...))
    @ DTYPE_VECTOR
    Vector
    Definition: lib_description.h:69
    @ DTYPE_REAL
    Float
    Definition: lib_description.h:67
    @ ID_BASEOBJECT_GROUP1
    Definition: obase.h:54
    Parameters
    [in]searchidThe partial ID.
    [in]opsMost of the time this can be just AtomArray(). However dynamic descriptions (like sub-descriptions of a gradient or dynamic XPresso node) need an array of elements the parameter is assigned to.
    [out]completeidAssigned the complete ID.
    Returns
    true if a description ID searchid exists, otherwise false.

    ◆ GetSubDescriptionWithData()

    Bool GetSubDescriptionWithData ( const DescID did,
    const AtomArray op,
    RESOURCEDATATYPEPLUGIN *  resdatatypeplugin,
    const BaseContainer bc,
    DescID singledescid 
    )

    Retrieves dynamic sub-description data (e.g. the gradient data type).

    Parameters
    [in]didThe description ID.
    [in]opThe current objects.
    [in]resdatatypepluginThe resource data type plug, retrieved with FindResourceDataTypePlugin().
    [out]bcThe existing container for the data type.
    [in]singledescidShould be nullptr.
    Returns
    true if successful, otherwise false.

    ◆ GetSingleDescID()

    const DescID* GetSingleDescID ( )

    Private.

    ◆ SetSingleDescriptionMode()

    void SetSingleDescriptionMode ( const DescID descid)

    Private.

    ◆ DynamicDescription()

    DynamicDescription ( )
    private

    ◆ ~DynamicDescription()

    ~DynamicDescription ( )
    private

    ◆ Alloc() [2/2]

    DescID Alloc ( const BaseContainer datadescription)

    Allocates a new user data and return its ID.

    Parameters
    [in]datadescriptionThe settings of the new user data.
    Returns
    The ID of the new user data.

    ◆ Set()

    Bool Set ( const DescID descid,
    const BaseContainer datadescription,
    BaseList2D bl 
    )

    Inserts a new user data with the specified ID.

    Parameters
    [in]descidThe ID of the new user data.
    [in]datadescriptionThe settings of the new user data.
    [in]blTODO
    Returns
    true if the user data was inserted, otherwise false.

    ◆ Find()

    const BaseContainer* Find ( const DescID descid) const

    Finds user data settings from its description ID.

    Parameters
    [in]descidThe ID of the user data.
    Returns
    The found settings, or nullptr. The description owns the pointed base container.

    ◆ Remove()

    Bool Remove ( const DescID descid)

    Removes user data by ID.

    Parameters
    [in]descidThe ID of the user data.
    Returns
    true if the user data was removed, otherwise false.

    ◆ CopyTo()

    Bool CopyTo ( DynamicDescription dest) const

    Copies the dynamic description.

    Parameters
    [in]destThe destination dynamic description. The caller owns the pointed dynamic description.
    Returns
    true if the description was copied, otherwise false.

    ◆ BrowseInit() [2/3]

    void* BrowseInit ( )

    Starts browsing the parameters linearly.

    Warning
    After browsing is done done BrowseFree() must be called.
    Returns
    The browse handle.

    ◆ BrowseInit() [3/3]

    const void* BrowseInit ( ) const

    ◆ BrowseGetNext() [1/2]

    Bool BrowseGetNext ( void *  handle,
    DescID id,
    const BaseContainer **  data 
    )

    Retrieves the next parameter in a browse sequence initialized with BrowseInit().

    Parameters
    [in]handleThe browse handle returned by BrowseInit().
    [out]idAssigned the ID of the retrieved parameter.
    [out]dataAssigned the settings for the retrieved parameter. The caller owns the pointed base container.
    Returns
    true if a new parameter was retrieved, otherwise the sequence is finished.

    ◆ BrowseGetNext() [2/2]

    Bool BrowseGetNext ( const void *  handle,
    DescID id,
    const BaseContainer **  data 
    ) const

    ◆ BrowseFree() [2/3]

    void BrowseFree ( void *&  handle)

    Frees browse handles from BrowseInit().

    Parameters
    [in,out]handleThe handle to free. Assigned nullptr.

    ◆ BrowseFree() [3/3]

    void BrowseFree ( const void *&  handle) const

    ◆ FillDefaultContainer()

    Bool FillDefaultContainer ( BaseContainer res,
    Int32  type,
    const String name 
    )

    Fills the default settings container for a certain data type with the specified name.

    Parameters
    [out]resAssigned the default settings.
    [in]typeThe datatype ID. Either a custom ID or one of: DTYPE.
    [in]nameThe name of the user data.
    Returns
    true if the settings were filled, otherwise false.

    ◆ GetDirty()

    UInt32 GetDirty ( ) const

    Gets the dirty count. Can be used to check if something has changed.

    Returns
    The dirty counter, incremented when something changes in the system.

    ◆ Description_Register()

    Bool cinema::Description_Register ( Int32  id,
    const String idstr,
    LocalResource *  res 
    )

    Internal. Use RegisterDescription() instead.

    Variable Documentation

    ◆ id

    Int32 id

    ID of the level.

    ◆ dtype

    Int32 dtype

    Data type. Either a custom ID or one of these: DTYPE.

    ◆ creator

    Int32 creator

    Creator ID.

    ◆ _refData [1/2]

    ◆ _refData [2/2]

    ◆ _constData [1/2]

    maxon::Block<const DescLevel> _constData

    ◆ _constData [2/2]

    maxon::Block<const DescLevel> _constData

    ◆ 

    union { ... }

    ◆ _ids

    constexpr Int32 _ids[]
    staticconstexpr

    Friends

    ◆ operator+

    const DescID operator+ ( const DescID v1,
    const DescID v2 
    )
    friend

    Add operator. Merges two description IDs.

    Parameters
    [in]v1Left operand.
    [in]v2Right operand.
    Returns
    Result.