MultipassObject Class Reference

#include <c4d_basedocument.h>

Inheritance diagram for MultipassObject:

详细描述

The node for multipass. The VPBUFFER type and description parameters are stored in its container.
Here is how to allocate and insert a multipass in the active document:

// Allocate a MultipassObject. MultipassObject * multipass = ( MultipassObject *) MultipassObject::Alloc ( Zmultipass ); if (multipass== nullptr ) return false ;

// Get the multipass container instance. BaseContainer * data = multipass-> GetDataInstance (); if (data== nullptr ) return false ;

// Set the multipass type to RGBA. data-> SetInt32 ( MULTIPASSOBJECT_TYPE , VPBUFFER_RGBA );

RenderData * rd = doc-> GetActiveRenderData (); if (rd== nullptr ) return false ; doc-> StartUndo ();

// Insert the multipass in the active document render data. rd-> InsertMultipass (multipass, nullptr ); doc-> AddUndo ( UNDOTYPE::NEWOBJ , multipass); doc-> EndUndo ();

// Update the render data. rd-> 消息 ( MSG_UPDATE ); EventAdd ();

私有成员函数

  MultipassObject ()
  ~MultipassObject ()

导航

MultipassObject GetNext (void)
MultipassObject GetPred (void)

Additional Inherited Members

-  Public Member Functions inherited from BaseList2D
const Char GetViewportRenderId ( VIEWPORT_RENDER_ID typeId) const
BaseList2D GetNext ()
BaseList2D GetPred ()
void  SetBit ( Int32 mask)
Bool   GetBit ( Int32 mask) const
void  DelBit ( Int32 mask)
void  ToggleBit ( Int32 mask)
Int32   GetAllBits () const
void  SetAllBits ( Int32 bits)
void  SetBitEx ( Int32 mask, Int32 flags)
BaseContainer   GetData ()
void  SetData (const BaseContainer &bc, Bool add=true)
const BaseContainer GetDataInstance () const
BaseContainer GetDataInstance ()
const BaseContainer GetDataInstanceRef () const
BaseContainer GetDataInstanceRef ()
String   GetName () const
void  SetName (const maxon::String &name)
String   GetBubbleHelp ()
Bool   TransferGoal ( BaseList2D *dst, Bool undolink)
Bool   TransferMarker ( BaseList2D *dst) const
Bool   比例 ( Float scale)
Bool   编辑 ()
void  GetIcon ( IconData *dat)
GeListHead GetNLARoot ()
BaseList2D AnimationLayerRemap ( BaseObject **layer=nullptr)
String   GetTypeName ()
BaseList2D GetMain () const
void  InsertTrackSorted ( CTrack *track)
Bool   AddEventNotification ( BaseList2D *bl, NOTIFY_EVENT eventid, NOTIFY_EVENT_FLAG flags, const BaseContainer *data)
Bool   RemoveEventNotification ( BaseDocument *doc, BaseList2D *bl, NOTIFY_EVENT eventid)
Bool   FindEventNotification ( BaseDocument *doc, BaseList2D *bl, NOTIFY_EVENT eventid)
Bool   SetDescIDState (const DescID &id, DESCIDSTATE descidstate)
DESCIDSTATE   GetDescIDState (const DescID &id, Bool tolerant) const
GeListHead GetOverrideRoot ()
BaseOverride GetFirstOverride ()
GeListHead GetShaderRepositoryRoot ()
GeListHead GetHiddenShaderRoot ()
maxon::NimbusInterface *  GetNimbusRef (const maxon::Id &spaceId) const
maxon::Result < maxon::NimbusInterface * >  GetOrCreateNimbusRef (const maxon::Id &spaceId)
void  RemoveNimbusRef (const maxon::Id &spaceId)
maxon::Result < maxon::HashMap < maxon::Id , maxon::ForwardRef < maxon::NimbusRef > > >  GetAllNimbusRefs () const
Bool   IsNodeBased () const
void  GetMarkerStampEx ( UInt32 *l1, UInt32 *l2)
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
Bool   SetAnimatedParameter ( CTrack *track, const DescID &id, const GeData &t_data1, const GeData &t_data2, Float mix, DESCFLAGS_SET flags)
Bool   GetAnimatedParameter (const DescID &id, GeData &t_data1, GeData &t_data2, Float &mix, DESCFLAGS_GET flags)
BaseShader GetFirstShader () const
void  InsertShader ( BaseShader *shader, BaseShader *pred=nullptr)
void  ClearKeyframeSelection ()
Bool   FindKeyframeSelection (const DescID &id)
Bool   SetKeyframeSelection (const DescID &id, Bool selection)
Bool   KeyframeSelectionContent ()
LayerObject GetLayerObject ( BaseDocument *doc)
Bool   SetLayerObject ( LayerObject *layer)
const LayerData GetLayerData ( BaseDocument *doc, Bool rawdata=false)
Bool   SetLayerData ( BaseDocument *doc, const LayerData &data)
GeListHead GetCTrackRoot ()
CTrack GetFirstCTrack ()
CTrack FindCTrack (const DescID &id)
-  Public Member Functions inherited from GeListNode
GeListNode GetNext ()
GeListNode GetPred ()
GeListNode GetDown ()
GeListNode GetUp ()
GeListNode GetDownLast ()
void  InsertBefore ( GeListNode *bl)
void  InsertAfter ( GeListNode *bl)
void  InsertUnder ( GeListNode *bl)
void  InsertUnderLast ( GeListNode *bl)
void  移除 ()
GeListHead GetListHead ()
Int32   GetNodeID ( Int32 index=0) const
template<typename CAST >
const CAST *  GetNodeData ( Int32 index=0) const
template<typename CAST >
CAST *  GetNodeData ( Int32 index=0)
void  SetCustomData ( GeListNode *node)
GeListNode GetCustomData ()
BaseDocument GetDocument ()
Int32   GetBranchInfo ( BranchInfo *info, Int32 max, GETBRANCHINFO flags)
Bool   IsDocumentRelated ()
Int32   GetInfo ()
Bool   GetNBit ( NBIT bit) const
UInt32   GetNBitMask ( Int32 index) const
Bool   ChangeNBit ( NBIT bit, NBITCONTROL bitmode)
-  Public Member Functions inherited from C4DAtom
Int32   GetType () const
Int32   GetRealType () const
Int32   GetDiskType () const
Bool   IsInstanceOf ( Int32 id) const
Int32   GetClassification () const
Bool   消息 ( Int32 type, void *data=nullptr)
Bool   MultiMessage ( MULTIMSG_ROUTE flags, Int32 type, void *data)
C4DAtom GetClone ( COPYFLAGS flags, AliasTrans *trn)
Bool   CopyTo ( C4DAtom *dst, COPYFLAGS flags, AliasTrans *trn)
Bool   读取 ( HyperFile *hf, Int32 id, Int32 level)
Bool   Write ( HyperFile *hf)
Bool   ReadObject ( HyperFile *hf, Bool readheader)
Bool   WriteObject ( HyperFile *hf)
Bool   GetDescription ( 描述 *description, DESCFLAGS_DESC flags)
Bool   GetParameter (const DescID &id, GeData &t_data, DESCFLAGS_GET flags)
Bool   SetParameter (const DescID &id, const GeData &t_data, DESCFLAGS_SET flags)
DynamicDescription GetDynamicDescription ()
Bool   GetEnabling (const DescID &id, const GeData &t_data, DESCFLAGS_ENABLE flags, const BaseContainer *itemdesc)
Bool   TranslateDescID (const DescID &id, DescID &res_id, C4DAtom *&res_at)
UInt32   GetDirty ( DIRTYFLAGS flags) const
void  SetDirty ( DIRTYFLAGS flags)
UInt32   GetHDirty ( HDIRTYFLAGS mask) const
void  SetHDirty ( HDIRTYFLAGS mask)
-  Static Public Member Functions inherited from BaseList2D
static BaseList2D Alloc ( Int32 type)
static void  Free ( BaseList2D *&bl)
-  Static Public Attributes inherited from BaseList2D
static const Int32   SETBIT_FLAG_NODIRTY
static const Int32   SETBIT_FLAG_REMOVE

构造函数 & 析构函数文档编制

◆  MultipassObject()

MultipassObject () private

◆  ~MultipassObject()

~ MultipassObject () private

成员函数文档编制

◆  GetNext()

MultipassObject * GetNext ( void  )

Gets the next multipass channel in the list. Convenience version of GeListNode::GetNext() returning a pointer to a MultipassObject .

返回
The next multipass channel, or nullptr if there is none.

◆  GetPred()

MultipassObject * GetPred ( void  )

Gets the previous multipass channel in the list. Convenience version of GeListNode::GetNext() returning a pointer to a MultipassObject .

返回
The previous multipass channel, or nullptr if there is none.
MULTIPASSOBJECT_TYPE
@ MULTIPASSOBJECT_TYPE
定义: zmultipass.h:6
BaseList2D::GetDataInstance
const BaseContainer * GetDataInstance() const
定义: c4d_baselist.h:2283
BaseContainer::SetInt32
void SetInt32(Int32 id, Int32 l)
定义: c4d_basecontainer.h:505
BaseDocument::AddUndo
Bool AddUndo(UNDOTYPE type, void *data, Bool allowFromThread=false)
RenderData::InsertMultipass
void InsertMultipass(MultipassObject *obj, MultipassObject *pred=nullptr)
BaseList2D::Alloc
static BaseList2D * Alloc(Int32 type)
MSG_UPDATE
#define MSG_UPDATE
Must be sent if the bounding box has to be recalculated. (Otherwise use MSG_CHANGE....
定义: c4d_baselist.h:340
BaseDocument::StartUndo
Bool StartUndo(void)
C4DAtom::Message
Bool Message(Int32 type, void *data=nullptr)
定义: c4d_baselist.h:1394
VPBUFFER_RGBA
#define VPBUFFER_RGBA
RGB and alpha multipass channel.
定义: c4d_videopostdata.h:115
BaseDocument::EndUndo
Bool EndUndo(void)
BaseDocument::GetActiveRenderData
RenderData * GetActiveRenderData(void)
EventAdd
void EventAdd(EVENT eventflag=EVENT::NONE)
UNDOTYPE::NEWOBJ
@ NEWOBJ
New object/material/tag etc. was created. (Needs to be called after action.)
RenderData
定义: c4d_basedocument.h:136
MultipassObject
定义: c4d_basedocument.h:105
Zmultipass
#define Zmultipass
定义: ge_prepass.h:1135
BaseContainer
定义: c4d_basecontainer.h:46