HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
GR_InstanceManager Class Reference

#include <GR_InstanceManager.h>

+ Inheritance diagram for GR_InstanceManager:

Classes

class  gr_BBoxRequest
 
class  gr_DrawRequest
 

Public Types

enum  gr_DrawRequestResult {
  NO_DRAW, PARTIAL_DRAW, POINTS_ONLY_DRAW, FULL_DRAW,
  ERROR_NO_SUCH_ID, ERROR_NOT_PROCESSED
}
 

Public Member Functions

bool isActive () const
 
bool canQueueRequests () const
 
void queueUncullableDraw (int num_gl_prims)
 
int queueDrawRequest (const RE_Render *r, int num_gl_prims, const UT_BoundingBox &box, const UT_Matrix4D &world_mat, GR_RenderMode rmode, GR_RenderFlags rflags, const GR_DrawParms &dp, bool wireframe, int32 prim_id, bool selected, UT_Vector3F *color=nullptr)
 
int queueInstanceDrawRequest (const RE_Render *r, int num_gl_prims, const UT_BoundingBox &box, const UT_Matrix4D &obj_transform, const UT_Matrix4DArray &instances, UT_IntArray &result_visible_indices, GR_RenderMode rmode, GR_RenderFlags rflags, const GR_DrawParms &dp, bool wireframe, const GT_DataArrayHandle &prim_ids, const UT_Array< uint8 > *selected, const UT_Vector3FArray *colors, bool all_selected=false)
 
int queuePartialInstanceDrawRequest (const RE_Render *r, int num_gl_prims, const UT_BoundingBox &box, const UT_Matrix4D &obj_transform, const UT_Matrix4DArray &instances, const UT_IntArray &visible_indices, UT_IntArray &result_visible_indices, GR_RenderMode rmode, GR_RenderFlags rflags, const GR_DrawParms &dp, bool wireframe, const GT_DataArrayHandle &prim_ids, const UT_Array< uint8 > *selected, const UT_Vector3FArray *colors, bool all_selected=false)
 
void queueBBoxDraw (const RE_Render *r, const UT_BoundingBox &box, const UT_Matrix4D &obj_transform, bool wireframe, int32 prim_id, bool selected, UT_Vector3F *color=nullptr)
 
void queueBBoxDraw (const RE_Render *r, const UT_BoundingBox &box, const UT_Matrix4D &obj_transform, const UT_Matrix4DArray &instances, bool wireframe, const GT_DataArrayHandle &prim_ids, const UT_Array< uint8 > *selected, const UT_Vector3FArray *colors, bool all_selected=false)
 
void queuePartialBBoxDraw (const RE_Render *r, const UT_BoundingBox &box, const UT_Matrix4D &obj_transform, const UT_Matrix4DArray &instances, const UT_IntArray &visible_indices, bool wireframe, const GT_DataArrayHandle &prim_ids, const UT_Array< uint8 > *selected, const UT_Vector3FArray *colors, bool all_selected=false)
 
gr_DrawRequestResult getDrawRequestResult (int draw_id, GR_RenderMode &mode, GR_RenderFlags &flags, GR_DrawParms &parms) const
 

Static Public Member Functions

static GR_InstanceManagerget ()
 

Friends

class GUI_SceneFeel
 
class DM_VPortAgent
 

Additional Inherited Members

- Protected Member Functions inherited from UT_NonCopyableNS::UT_NonCopyable
 UT_NonCopyable ()=default
 
 ~UT_NonCopyable ()=default
 
 UT_NonCopyable (const UT_NonCopyable &)=delete
 
UT_NonCopyableoperator= (const UT_NonCopyable &)=delete
 

Detailed Description

Definition at line 31 of file GR_InstanceManager.h.

Member Enumeration Documentation

Enumerator
NO_DRAW 
PARTIAL_DRAW 
POINTS_ONLY_DRAW 
FULL_DRAW 
ERROR_NO_SUCH_ID 
ERROR_NOT_PROCESSED 

Definition at line 141 of file GR_InstanceManager.h.

Member Function Documentation

bool GR_InstanceManager::canQueueRequests ( ) const
inline

Definition at line 47 of file GR_InstanceManager.h.

static GR_InstanceManager& GR_InstanceManager::get ( )
inlinestatic

Definition at line 34 of file GR_InstanceManager.h.

gr_DrawRequestResult GR_InstanceManager::getDrawRequestResult ( int  draw_id,
GR_RenderMode mode,
GR_RenderFlags flags,
GR_DrawParms parms 
) const
bool GR_InstanceManager::isActive ( ) const
inline

Definition at line 45 of file GR_InstanceManager.h.

void GR_InstanceManager::queueBBoxDraw ( const RE_Render r,
const UT_BoundingBox box,
const UT_Matrix4D obj_transform,
bool  wireframe,
int32  prim_id,
bool  selected,
UT_Vector3F color = nullptr 
)
void GR_InstanceManager::queueBBoxDraw ( const RE_Render r,
const UT_BoundingBox box,
const UT_Matrix4D obj_transform,
const UT_Matrix4DArray instances,
bool  wireframe,
const GT_DataArrayHandle prim_ids,
const UT_Array< uint8 > *  selected,
const UT_Vector3FArray colors,
bool  all_selected = false 
)
int GR_InstanceManager::queueDrawRequest ( const RE_Render r,
int  num_gl_prims,
const UT_BoundingBox box,
const UT_Matrix4D world_mat,
GR_RenderMode  rmode,
GR_RenderFlags  rflags,
const GR_DrawParms dp,
bool  wireframe,
int32  prim_id,
bool  selected,
UT_Vector3F color = nullptr 
)
int GR_InstanceManager::queueInstanceDrawRequest ( const RE_Render r,
int  num_gl_prims,
const UT_BoundingBox box,
const UT_Matrix4D obj_transform,
const UT_Matrix4DArray instances,
UT_IntArray result_visible_indices,
GR_RenderMode  rmode,
GR_RenderFlags  rflags,
const GR_DrawParms dp,
bool  wireframe,
const GT_DataArrayHandle prim_ids,
const UT_Array< uint8 > *  selected,
const UT_Vector3FArray colors,
bool  all_selected = false 
)
void GR_InstanceManager::queuePartialBBoxDraw ( const RE_Render r,
const UT_BoundingBox box,
const UT_Matrix4D obj_transform,
const UT_Matrix4DArray instances,
const UT_IntArray visible_indices,
bool  wireframe,
const GT_DataArrayHandle prim_ids,
const UT_Array< uint8 > *  selected,
const UT_Vector3FArray colors,
bool  all_selected = false 
)
int GR_InstanceManager::queuePartialInstanceDrawRequest ( const RE_Render r,
int  num_gl_prims,
const UT_BoundingBox box,
const UT_Matrix4D obj_transform,
const UT_Matrix4DArray instances,
const UT_IntArray visible_indices,
UT_IntArray result_visible_indices,
GR_RenderMode  rmode,
GR_RenderFlags  rflags,
const GR_DrawParms dp,
bool  wireframe,
const GT_DataArrayHandle prim_ids,
const UT_Array< uint8 > *  selected,
const UT_Vector3FArray colors,
bool  all_selected = false 
)
void GR_InstanceManager::queueUncullableDraw ( int  num_gl_prims)

For primitives that cannot be culled, this at least notifies the manager of the GL primitive count so it can be taken into account.

Friends And Related Function Documentation

friend class DM_VPortAgent
friend

Definition at line 278 of file GR_InstanceManager.h.

friend class GUI_SceneFeel
friend

Definition at line 277 of file GR_InstanceManager.h.


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