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

#include <RV_VKQuery.h>

Public Types

enum  QueryType { RV_QUERY_SIMPLE_OCCLUSION, RV_QUERY_PRECISE_OCCLUSION, RV_QUERY_TIMESTAMP, RV_QUERY_ACCEL_STRUCT_COMPACT_SIZE }
 

Public Member Functions

QueryType getType () const
 
bool isGPUExclusive () const
 
int getSize () const
 
bool begin (RV_VKCommandBuffer *cb, int idx=0)
 
void end (RV_VKCommandBuffer *cb, int idx=0)
 
void reset (RV_VKCommandBuffer *cb, int idx=0)
 
void softReset (int idx=0)
 
void writeTimestamp (RV_VKCommandBuffer *cb, VkPipelineStageFlagBits stage=VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT, int idx=0)
 
void writeAccelStructCompactSize (RV_VKCommandBuffer *cb, const VkAccelerationStructureKHR *accel_struct, int idx=0)
 
bool isResultAvailable (RV_Instance *inst, int idx=0)
 
int32 getResult (RV_Instance *inst, int idx=0)
 
int64 getLongResult (RV_Instance *inst, int idx=0)
 
int32 getResult (RV_Render *r, int idx=0)
 
int64 getLongResult (RV_Render *inst, int idx=0)
 
void writeResult (RV_VKCommandBuffer *cb, RV_VKBuffer *buf, bool wait, int idx=0)
 
int64 writeLongResult (RV_VKCommandBuffer *cb, RV_VKBuffer *buf, bool wait, int idx=0)
 
bool isReset (int idx=0)
 
bool isDoneRecording (int idx=0)
 
bool isSubmitted (int idx=0)
 
bool isWaiting (int idx=0)
 
 ~RV_VKQuery ()
 
 RV_VKQuery (RV_Instance *inst, int count, VkQueryPool pool, QueryType type, bool gpu_exclusive, const PassKey &)
 

Static Public Member Functions

static UT_UniquePtr< RV_VKQuerycreateQuery (RV_Instance *inst, int count, QueryType type, bool gpu_exclusive)
 

Protected Member Functions

void markSubmitted (int idx)
 

Friends

class RV_FinishQueryTask
 

Detailed Description

Definition at line 30 of file RV_VKQuery.h.

Member Enumeration Documentation

Enumerator
RV_QUERY_SIMPLE_OCCLUSION 
RV_QUERY_PRECISE_OCCLUSION 
RV_QUERY_TIMESTAMP 
RV_QUERY_ACCEL_STRUCT_COMPACT_SIZE 

Definition at line 33 of file RV_VKQuery.h.

Constructor & Destructor Documentation

RV_VKQuery::~RV_VKQuery ( )
RV_VKQuery::RV_VKQuery ( RV_Instance inst,
int  count,
VkQueryPool  pool,
QueryType  type,
bool  gpu_exclusive,
const PassKey &   
)

Member Function Documentation

bool RV_VKQuery::begin ( RV_VKCommandBuffer cb,
int  idx = 0 
)
static UT_UniquePtr<RV_VKQuery> RV_VKQuery::createQuery ( RV_Instance inst,
int  count,
QueryType  type,
bool  gpu_exclusive 
)
static
void RV_VKQuery::end ( RV_VKCommandBuffer cb,
int  idx = 0 
)
int64 RV_VKQuery::getLongResult ( RV_Instance inst,
int  idx = 0 
)
int64 RV_VKQuery::getLongResult ( RV_Render inst,
int  idx = 0 
)
int32 RV_VKQuery::getResult ( RV_Instance inst,
int  idx = 0 
)
int32 RV_VKQuery::getResult ( RV_Render r,
int  idx = 0 
)
int RV_VKQuery::getSize ( ) const
inline

Definition at line 49 of file RV_VKQuery.h.

QueryType RV_VKQuery::getType ( ) const
inline

Definition at line 47 of file RV_VKQuery.h.

bool RV_VKQuery::isDoneRecording ( int  idx = 0)
inline

Definition at line 101 of file RV_VKQuery.h.

bool RV_VKQuery::isGPUExclusive ( ) const
inline

Definition at line 48 of file RV_VKQuery.h.

bool RV_VKQuery::isReset ( int  idx = 0)
inline

Definition at line 94 of file RV_VKQuery.h.

bool RV_VKQuery::isResultAvailable ( RV_Instance inst,
int  idx = 0 
)
bool RV_VKQuery::isSubmitted ( int  idx = 0)
inline

Definition at line 107 of file RV_VKQuery.h.

bool RV_VKQuery::isWaiting ( int  idx = 0)
inline

Definition at line 113 of file RV_VKQuery.h.

void RV_VKQuery::markSubmitted ( int  idx)
protected
void RV_VKQuery::reset ( RV_VKCommandBuffer cb,
int  idx = 0 
)
void RV_VKQuery::softReset ( int  idx = 0)
void RV_VKQuery::writeAccelStructCompactSize ( RV_VKCommandBuffer cb,
const VkAccelerationStructureKHR *  accel_struct,
int  idx = 0 
)
int64 RV_VKQuery::writeLongResult ( RV_VKCommandBuffer cb,
RV_VKBuffer buf,
bool  wait,
int  idx = 0 
)
void RV_VKQuery::writeResult ( RV_VKCommandBuffer cb,
RV_VKBuffer buf,
bool  wait,
int  idx = 0 
)
void RV_VKQuery::writeTimestamp ( RV_VKCommandBuffer cb,
VkPipelineStageFlagBits  stage = VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT,
int  idx = 0 
)

Friends And Related Function Documentation

friend class RV_FinishQueryTask
friend

Definition at line 135 of file RV_VKQuery.h.


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