CFx SDK Documentation 2024 SP0
Loading...
Searching...
No Matches
Public Types | Public Member Functions | List of all members
OdGiTransientManager Class Referenceabstract

#include <GiTransientManager.h>

Inheritance diagram for OdGiTransientManager:
OdRxObject

Public Types

enum  OdGiTransientDrawingMode {
  kOdGiMain = 0 , kOdGiSprite , kOdGiDirectShortTerm , kOdGiHighlight ,
  kOdGiDirectTopmost , kOdGiContrast , kOdGiDrawingModeCount
}
 

Public Member Functions

 ODRX_DECLARE_MEMBERS (OdGiTransientManager)
 
virtual bool addTransient (OdGiDrawable *pDrawable, OdGiTransientDrawingMode mode, OdInt32 subMode, const OdUInt32Array &viewportIds)=0
 
virtual bool eraseTransient (OdGiDrawable *pDrawable, const OdUInt32Array &viewportIds)=0
 
virtual bool eraseTransients (OdGiTransientDrawingMode mode, OdInt32 subMode, const OdUInt32Array &viewportIds)=0
 
virtual void updateTransient (OdGiDrawable *pDrawable, const OdUInt32Array &viewportIds) const =0
 
virtual bool addChildTransient (OdGiDrawable *pDrawable, OdGiDrawable *pParent)=0
 
virtual bool eraseChildTransient (OdGiDrawable *pDrawable, OdGiDrawable *pParent)=0
 
virtual void updateChildTransient (OdGiDrawable *pDrawable, OdGiDrawable *pParent) const =0
 
virtual OdInt32 getFreeSubDrawingMode (OdGiTransientDrawingMode mode, OdInt32 &subMode, const OdUInt32Array &viewportIds) const =0
 
- Public Member Functions inherited from OdRxObject
 ODRX_HEAP_OPERATORS ()
 
 OdRxObject ()
 
virtual ~OdRxObject ()
 
virtual OdRxObjectqueryX (const OdRxClass *pClass) const
 
virtual OdRxObjectx (const OdRxClass *pClass) const
 
virtual OdRxClassisA () const
 
virtual void addRef ()=0
 
virtual void release ()=0
 
virtual long numRefs () const
 
bool isKindOf (const OdRxClass *pClass) const
 
virtual OdRxObjectPtr clone () const
 
virtual void copyFrom (const OdRxObject *pSource)
 
virtual OdRx::Ordering comparedTo (const OdRxObject *pOther) const
 
virtual bool isEqualTo (const OdRxObject *pOther) const
 

Additional Inherited Members

- Static Public Member Functions inherited from OdRxObject
static OdRxObjectPtr cast (const OdRxObject *pointer)
 
static OdRxClassdesc ()
 

Detailed Description

This class provides transient drawables manager functionality.

<group OdGi_Classes>

Definition at line 40 of file GiTransientManager.h.

Member Enumeration Documentation

◆ OdGiTransientDrawingMode

Represents a drawing mode of a transient. Drawing modes can be used to specify the draw order. For 2D graphics system the topmost level is kOdGiContrast while the bottom-most level is kAcGiMain. For 3D graphics system kOdGiDirectShortTerm, kOdGiHighlight and kOdGiContrast members also indicate the draw order, the kOdGiDirectShortTerm mode is the bottom-most level.

Enumerator
kOdGiMain 

Main drawing mode (for internal use). For a 3D graphics system, this mode uses the main Z-Buffer.

kOdGiSprite 

Sprite drawing mode (for internal use). For a 3D graphics system, this mode uses a separate Z-Buffer for sprites.

kOdGiDirectShortTerm 

ShortTerm drawing mode. For a 3D graphics system, renders directly to the device.

kOdGiHighlight 

Highlight drawing mode. For 2D and 3D graphics systems, renders transient directly to the device highlight effects.

kOdGiDirectTopmost 

Renders transient above all other render modes except the contrast mode.

kOdGiContrast 

For 2D and 3D graphics systems renders transient directly to the device in contrast style.

kOdGiDrawingModeCount 

Count of drawing modes.

Definition at line 50 of file GiTransientManager.h.

Member Function Documentation

◆ addChildTransient()

virtual bool OdGiTransientManager::addChildTransient ( OdGiDrawable pDrawable,
OdGiDrawable pParent 
)
pure virtual

Appends child drawable to parent drawable in the transient drawables manager.

Parameters
pDrawable[in] Drawable pointer.
pParent[in] Parent drawable pointer.
Returns
true in current implementation, after the transient is updated.

◆ addTransient()

virtual bool OdGiTransientManager::addTransient ( OdGiDrawable pDrawable,
OdGiTransientDrawingMode  mode,
OdInt32  subMode,
const OdUInt32Array viewportIds 
)
pure virtual

Adds new drawable into transient drawables manager.

Parameters
pDrawable[in] Drawable pointer.
mode[in] Transient drawable mode.
subMode[in] Draw order index.
viewportIds[in] List of viewport indices.
Returns
true if the drawable is successfully added or false in one of the following cases: The passed pointer does not point to a drawable; The passed mode is greater or equals to the kOdGiDrawingModeCount; The specified draw order index exceeds the maximum value of the signed integer;

◆ eraseChildTransient()

virtual bool OdGiTransientManager::eraseChildTransient ( OdGiDrawable pDrawable,
OdGiDrawable pParent 
)
pure virtual

Erases child drawable from parent drawable in the transient drawables manager.

Parameters
pDrawable[in] Drawable pointer.
pParent[in] Parent drawable pointer.
Returns
true in current implementation, after the transient is updated.

◆ eraseTransient()

virtual bool OdGiTransientManager::eraseTransient ( OdGiDrawable pDrawable,
const OdUInt32Array viewportIds 
)
pure virtual

Erases drawable from transient drawables manager.

Parameters
pDrawable[in] Drawable pointer.
viewportIds[in] List of viewport indices.
Returns
true if the drawable is erased or false in one of the following cases: The passed pointer does not point to a drawable; The drawable could not be erased by a registered path;

◆ eraseTransients()

virtual bool OdGiTransientManager::eraseTransients ( OdGiTransientDrawingMode  mode,
OdInt32  subMode,
const OdUInt32Array viewportIds 
)
pure virtual

Erases all drawables from specified drawable mode and order.

Parameters
mode[in] Transient drawable mode.
subMode[in] Draw order index.
viewportIds[in] List of viewport indices.
Returns
true if the drawables are erased or false in one of the following cases: The passed mode is greater or equals to the kOdGiDrawingModeCount; The specified draw order index exceeds the maximum value of the signed integer;

◆ getFreeSubDrawingMode()

virtual OdInt32 OdGiTransientManager::getFreeSubDrawingMode ( OdGiTransientDrawingMode  mode,
OdInt32 subMode,
const OdUInt32Array viewportIds 
) const
pure virtual

Finds free order for specified drawable mode.

Parameters
mode[in] Transient drawable mode.
subMode[out] Draw order index.
viewportIds[in] List of viewport indices.
Returns
Returns 0 if specified input draw order isn't free and transient manager couldn't find free draw order. Returns 1 if specified input draw order is free. Returns 2 if specified input draw order isn't free but transient manager found free draw order.

◆ ODRX_DECLARE_MEMBERS()

OdGiTransientManager::ODRX_DECLARE_MEMBERS ( OdGiTransientManager  )

◆ updateChildTransient()

virtual void OdGiTransientManager::updateChildTransient ( OdGiDrawable pDrawable,
OdGiDrawable pParent 
) const
pure virtual

Updates child drawable of parent drawable in the transient drawables manager.

Parameters
pDrawable[in] Drawable pointer.
pParent[in] Parent drawable pointer.

◆ updateTransient()

virtual void OdGiTransientManager::updateTransient ( OdGiDrawable pDrawable,
const OdUInt32Array viewportIds 
) const
pure virtual

Updates drawable in the transient drawables manager.

Parameters
pDrawable[in] Drawable pointer.
viewportIds[in] List of viewport indices.

The documentation for this class was generated from the following file: