MultipassObject Class Reference

#include <c4d_multipassobject.h>

Inheritance diagram for MultipassObject:

Public Types

typedef BaseList4D SUPER
 
- Public Types inherited from BaseList4D
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 (cineware::Int32 id) const
 
- Public Member Functions inherited from BaseList4D
BaseList4D * GetUp ()
 
BaseList4D * GetDown ()
 
BaseList4D * GetDownLast ()
 
void InsertBefore (BaseList4D *bl)
 
void InsertAfter (BaseList4D *bl)
 
void InsertUnder (BaseList4D *bl)
 
void InsertUnderLast (BaseList4D *bl)
 
virtual void Remove ()
 
- Public Member Functions inherited from BaseList2D
 BaseList2D ()
 
virtual ~BaseList2D ()
 
BaseList2D * GetNext ()
 
BaseList2D * GetPred ()
 
NodeData * GetNodeData ()
 
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 ()
 
BaseContainer * GetDataInstance ()
 
BaseContainer & GetDataInstanceRef ()
 
const String & GetName ()
 
void SetName (const String &new_name)
 
const GeMarker & GetMarker () 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
 
BaseShader * GetFirstShader ()
 
Bool InsertShader (BaseShader *shader, BaseShader *pred=nullptr)
 
Bool InsertShaderLast (BaseShader *shader)
 
RootCTrack * GetCTrackRoot ()
 
CTrack * GetFirstCTrack ()
 
CTrack * FindCTrack (const DescID &id)
 
Bool AppendCTrack (CTrack *t)
 
void InsertTrackSorted (CTrack *track)
 
virtual Int32 GetType () const
 
virtual Int32 GetDiskType () const
 
LayerObject * GetLayerObject ()
 
void SetLayerObject (LayerObject *layer)
 
const LayerData * GetLayerData (BaseDocument *doc, Bool rawdata=false)
 
Bool SetLayerData (BaseDocument *doc, const LayerData &data)
 
DynamicDescription * GetDynamicDescription ()
 
virtual Bool IsBaseList ()
 
Bool SetDescIDState (const DescID &id, DESCIDSTATE descidstate)
 
DESCIDSTATE GetDescIDState (const DescID &id, Bool tolerant) const
 
RootPluginNode * GetOverrideRoot ()
 
BaseOverride * GetFirstOverride ()
 
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)
 
BaseDocument * GetDocument ()
 
virtual Int32 GetInfo ()
 
GeListNode * GetPred ()
 
GeListNode * GetNext ()
 
GeListNode * GetUp ()
 
GeListNode * GetDown ()
 
GeListNode * GetDownLast ()
 
void InsertBefore (GeListNode *op)
 
void InsertAfter (GeListNode *op)
 
void Remove ()
 
void InsertUnder (GeListNode *op)
 
void InsertUnderLast (GeListNode *op)
 
RootList2D * GetListHead ()
 
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 >
PrivateChunk * GetNext () const
 
PrivateChunk * GetPrev () const
 
void InsertBefore (PrivateChunk *n)
 
void InsertAfter (PrivateChunk *n)
 
void Remove ()
 

Private Attributes

BaseContainer inheritance_container
 

Constructor

 MultipassObject ()
 
static MultipassObject * Alloc ()
 
static void Free (MultipassObject *&mp)
 

navigation

MultipassObject * GetNext ()
 
MultipassObject * GetPred ()
 

Miscellaneous

Int32 GetMultipassType ()
 
Int32 GetMultipassObjectBufferGroupID ()
 

Clone

BaseList2D * GetClone (COPYFLAGS flags, AliasTrans *trans)
 

Private

virtual Bool CopyToX (PrivateChunk *dst, COPYFLAGS flags, AliasTrans *trn)
 
virtual Bool HandleSubChunk (HyperFile *hf, Int32 id, Int32 level)
 
virtual Bool Write (HyperFile *hf)
 

Additional Inherited Members

- Protected Member Functions inherited from BaseList4D
 BaseList4D ()
 
 ~BaseList4D ()
 
- 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 Int32 GetInstanceType () const
 
- Protected Attributes inherited from BaseList2D
Int32 m_id
 
RootShader mp_rootshader
 
RootShader mp_rootshader_hidden
 
RootShader root_shader_repository
 
Int32 l_bitfeld
 
RootCTrack mp_rootctrack
 
RootPluginNode root_override
 
NotifyList * notify_events
 
DescIdStore * keyframestore
 
DescIdStore * propstore
 
BaseContainer m_bc
 
NodeData * m_data
 
- Protected Attributes inherited from GeListNode
GeAliasGoal m_xgoal
 
UInt32 m_bits [4]
 
RootList2D * t_rootlist_parent
 
RootList2D * m_children
 
BaseDocument * parent_doc
 
void * unknownData
 
Int unknownDataSize
 
Int32 unknownDataLevel
 
Int32 pluginID
 

Detailed Description

Represents Cinema 4D's multipass settings.

Note
Has to be created with Alloc() and destroyed with Free().

Member Typedef Documentation

◆ SUPER

typedef BaseList4D SUPER

Constructor & Destructor Documentation

◆ MultipassObject()

Default constructor.

Member Function Documentation

◆ IsInstanceOf()

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

Reimplemented from BaseList4D.

◆ Alloc()

static MultipassObject* Alloc ( )
static

Allocates a multipass object. Destroy the allocated multipass object with Free().

Returns
The allocated multipass object, or nullptr if the allocation failed.

◆ Free()

static void Free ( MultipassObject *&  mp)
static

Destructs multipass objects allocated with Alloc().

Parameters
[in,out]mpThe multipass object to destruct. If the pointer is nullptr nothing happens. The pointer is assigned nullptr afterwards.

◆ GetNext()

MultipassObject* GetNext ( )

Gets the next multipass object in the list.

Returns
The next multipass object, or nullptr if there is none. Cineware SDK owns the pointed multipass object.

◆ GetPred()

MultipassObject* GetPred ( )

Gets the previous multipass object in the list.

Returns
The previous multipass object, or nullptr if there is none. Cineware SDK owns the pointed multipass object.

◆ GetMultipassType()

Int32 GetMultipassType ( )

Gets the type of the multipass object.

Returns
The multipass type.

◆ GetMultipassObjectBufferGroupID()

Int32 GetMultipassObjectBufferGroupID ( )

Gets the object buffer group ID for the multipass object.

Returns
The buffer group ID.

◆ GetClone()

BaseList2D* GetClone ( COPYFLAGS  flags,
AliasTrans *  trans 
)
virtual

Gets a clone/copy of the multipass object.

Parameters
[in]flagsFlags for the clone.
[in]transAn alias translator for the operation. Can be nullptr. The caller owns the pointed alias translator.
Returns
The cloned multipass object. The caller owns the pointed multipass object.

Reimplemented from BaseList2D.

◆ CopyToX()

virtual Bool CopyToX ( PrivateChunk *  dst,
COPYFLAGS  flags,
AliasTrans *  trn 
)
virtual

Private.

Reimplemented from BaseList2D.

◆ HandleSubChunk()

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

Private.

Reimplemented from BaseList4D.

◆ Write()

virtual Bool Write ( HyperFile *  hf)
virtual

Private.

Reimplemented from BaseList4D.

Member Data Documentation

◆ inheritance_container

BaseContainer inheritance_container
private