BaseList4D Class Reference

#include <c4d_baselist4d.h>

Inheritance diagram for BaseList4D:

Public Types

typedef BaseList2D SUPER
 
- Public Types inherited from BaseList2D
typedef GeListNode SUPER
 
- Public Types inherited from GeListNode
typedef PrivateChunk SUPER
 

Public Member Functions

virtual Bool IsInstanceOf (melange::Int32 id) const
 
- Public Member Functions inherited from BaseList2D
 BaseList2D ()
 
virtual ~BaseList2D ()
 
BaseList2DGetNext ()
 
BaseList2DGetPred ()
 
NodeDataGetNodeData ()
 
void SetNodeData (NodeData *data)
 
void SetBit (Int32 mask)
 
Bool GetBit (Int32 mask)
 
void DelBit (Int32 mask)
 
void ToggleBit (Int32 mask)
 
Int32 GetAllBits ()
 
void SetAllBits (Int32 bits)
 
BaseContainer GetData ()
 
BaseContainerGetDataInstance ()
 
BaseContainerGetDataInstanceRef ()
 
const StringGetName ()
 
void SetName (const String &new_name)
 
const GeMarkerGetMarker () const
 
void SetMarker (const GeMarker &m)
 
Bool AddUniqueID (Int32 appid, const Char *const mem, Int bytes)
 
Bool FindUniqueID (Int32 appid, const Char *&mem, Int &bytes) const
 
Int32 GetUniqueIDCount () const
 
Bool GetUniqueIDIndex (Int32 idx, Int32 &id, const Char *&mem, Int &bytes) const
 
BaseShaderGetFirstShader ()
 
Bool InsertShader (BaseShader *shader, BaseShader *pred=nullptr)
 
Bool InsertShaderLast (BaseShader *shader)
 
RootCTrackGetCTrackRoot ()
 
CTrackGetFirstCTrack ()
 
CTrackFindCTrack (const DescID &id)
 
Bool AppendCTrack (CTrack *t)
 
void InsertTrackSorted (CTrack *track)
 
virtual Int32 GetType () const
 
virtual Int32 GetDiskType () const
 
LayerObjectGetLayerObject ()
 
void SetLayerObject (LayerObject *layer)
 
const LayerDataGetLayerData (BaseDocument *doc, Bool rawdata=false)
 
Bool SetLayerData (BaseDocument *doc, const LayerData &data)
 
virtual BaseList2DGetClone (COPYFLAGS flags, AliasTrans *trans)
 
DynamicDescriptionGetDynamicDescription ()
 
virtual Bool IsBaseList ()
 
Bool SetDescIDState (const DescID &id, DESCIDSTATE descidstate)
 
DESCIDSTATE GetDescIDState (const DescID &id, Bool tolerant) const
 
RootPluginNodeGetOverrideRoot ()
 
BaseOverrideGetFirstOverride ()
 
virtual Bool TranslateDescID (const DescID &id, DescID &res_id, GeListNode *&res_at)
 
- Public Member Functions inherited from GeListNode
 GeListNode ()
 
 ~GeListNode ()
 
virtual Bool GetNBit (Int32 bit) const
 
virtual Bool ChangeNBit (NBIT bit, NBITCONTROL bitmode)
 
BaseDocumentGetDocument ()
 
virtual Int32 GetInfo ()
 
GeListNodeGetPred ()
 
GeListNodeGetNext ()
 
GeListNodeGetUp ()
 
GeListNodeGetDown ()
 
GeListNodeGetDownLast ()
 
void InsertBefore (GeListNode *op)
 
void InsertAfter (GeListNode *op)
 
void Remove ()
 
void InsertUnder (GeListNode *op)
 
void InsertUnderLast (GeListNode *op)
 
RootList2DGetListHead ()
 
Int32 GetNodeID (Int32 index=0) const
 
- Public Member Functions inherited from PrivateChunk
 PrivateChunk ()
 
Bool ReadChunk (HyperFile *hf, Bool keepin=false, Bool noheader=false)
 
virtual Bool IsListHead ()
 
Bool ReadObject (HyperFile *hf, Bool readheader)
 
Bool WriteObject (HyperFile *hf, Int32 type)
 
Bool CopyTo (PrivateChunk *dest, COPYFLAGS flags, AliasTrans *trans)
 
Bool GetParameter (Int32 id, GeData &data)
 
Bool SetParameter (Int32 id, const GeData &data)
 
Bool GetParameter (const DescID &id, GeData &data)
 
Bool SetParameter (const DescID &id, const GeData &data)
 
virtual Int32 GetChunkLevel ()
 
- Public Member Functions inherited from GeTempPublicNode2D< PrivateChunk >
PrivateChunkGetNext () const
 
PrivateChunkGetPrev () const
 
void InsertBefore (PrivateChunk *n)
 
void InsertAfter (PrivateChunk *n)
 
void Remove ()
 

Protected Member Functions

 BaseList4D ()
 
 ~BaseList4D ()
 
virtual Bool HandleSubChunk (HyperFile *hf, Int32 id, Int32 level)
 
virtual Bool Write (HyperFile *hf)
 
- Protected Member Functions inherited from BaseList2D
void SetID (Int32 id)
 
virtual Bool GetDParameter (const DescID &id, GeData &data)
 
virtual Bool SetDParameter (const DescID &id, const GeData &data)
 
virtual Bool CopyToX (PrivateChunk *dest, COPYFLAGS flags, AliasTrans *trans)
 
virtual Int32 GetInstanceType () const
 

Navigation

BaseList4DGetUp ()
 
BaseList4DGetDown ()
 
BaseList4DGetDownLast ()
 

Insertion

void InsertBefore (BaseList4D *bl)
 
void InsertAfter (BaseList4D *bl)
 
void InsertUnder (BaseList4D *bl)
 
void InsertUnderLast (BaseList4D *bl)
 

Removal

virtual void Remove ()
 

Additional Inherited Members

- Protected Attributes inherited from BaseList2D
Int32 m_id
 
RootShader mp_rootshader
 
RootShader root_shader_repository
 
Int32 l_bitfeld
 
RootCTrack mp_rootctrack
 
RootPluginNode root_override
 
NotifyListnotify_events
 
DescIdStorekeyframestore
 
DescIdStorepropstore
 
BaseContainer m_bc
 
NodeDatam_data
 
- Protected Attributes inherited from GeListNode
GeAliasGoal m_xgoal
 
UInt32 m_bits [4]
 
RootList2Dt_rootlist_parent
 
RootList2Dm_children
 
BaseDocumentparent_doc
 
void * unknownData
 
Int unknownDataSize
 
Int32 unknownDataLevel
 
Int32 pluginID
 

Detailed Description

Represents a node in a 4D list.

See also
BaseList2D

Member Typedef Documentation

◆ SUPER

typedef BaseList2D SUPER

Constructor & Destructor Documentation

◆ BaseList4D()

BaseList4D ( )
protected

◆ ~BaseList4D()

~BaseList4D ( )
protected

Member Function Documentation

◆ IsInstanceOf()

virtual Bool IsInstanceOf ( melange::Int32  id) const
virtual

◆ HandleSubChunk()

virtual Bool HandleSubChunk ( HyperFile hf,
Int32  id,
Int32  level 
)
protectedvirtual

Private.

Reimplemented from BaseList2D.

Reimplemented in RenderData, BaseShader, BaseObject, MultipassObject, SplineObject, and LayerObject.

◆ Write()

virtual Bool Write ( HyperFile hf)
protectedvirtual

Private.

Reimplemented from BaseList2D.

Reimplemented in RenderData, BaseShader, MultipassObject, BaseObject, SplineObject, and LayerObject.

◆ GetUp()

BaseList4D* GetUp ( )

Gets the parent node.

Returns
The parent node, or nullptr if there is none. Melange owns the pointed node.

◆ GetDown()

BaseList4D* GetDown ( )

Gets the first child node.

Returns
The first child node, or nullptr if there is none. Melange owns the pointed node.

◆ GetDownLast()

BaseList4D* GetDownLast ( )

Gets the last child node.

Returns
The last child node, or nullptr if there is none. Melange owns the pointed node.

◆ InsertBefore()

void InsertBefore ( BaseList4D bl)

Inserts the node before bl.

Warning
Make sure that the insertion is sane. For example it is not allowed to insert a key into the object list.
It is also necessary to call Remove() first if the object is already inserted into another list.
Parameters
[in]blThe node to insert before. The caller owns the pointed node.

◆ InsertAfter()

void InsertAfter ( BaseList4D bl)

Inserts the node after bl.

Warning
Make sure that the insertion is sane. For example it is not allowed to insert a key into the object list.
It is also necessary to call Remove() first if the object is already inserted into another list.
Parameters
[in]blThe node to insert after. The caller owns the pointed node.

◆ InsertUnder()

void InsertUnder ( BaseList4D bl)

Inserts the node under bl as the first child.

Warning
Make sure that the insertion is sane. For example it is not allowed to insert a key into the object list.
It is also necessary to call Remove() first if the object is already inserted into another list.
Parameters
[in]blThe node to insert under. The caller owns the pointed node.

◆ InsertUnderLast()

void InsertUnderLast ( BaseList4D bl)

Insert the node as the last child of bl.

Warning
Make sure that the insertion is sane. For example it is not allowed to insert a key into the object list.
It is also necessary to call Remove() first if the object is already inserted into another list.
Parameters
[in]blThe node to insert under as last child. The caller owns the pointed node.

◆ Remove()

virtual void Remove ( )
virtual

Removes the node from its list.

Warning
When a node is removed the owner becomes responsible for freeing it or passing its ownership to another list.

Reimplemented from BaseList2D.