Diligent Engine  v.2.4.g
Namespaces | Macros | Functions
DeviceContextBase.cpp File Reference
#include "DeviceContextBase.hpp"
#include "GraphicsAccessories.hpp"

Namespaces

 Diligent
 The library uses Direct3D-style math:
 

Macros

#define CHECK_PARAMETER(Expr, ...)
 
#define CHECK_DRAW_ATTRIBS(Expr, ...)   CHECK_PARAMETER(Expr, "Draw attribs are invalid: ", __VA_ARGS__)
 
#define CHECK_DRAW_INDEXED_ATTRIBS(Expr, ...)   CHECK_PARAMETER(Expr, "Draw indexed attribs are invalid: ", __VA_ARGS__)
 
#define CHECK_DRAW_MESH_ATTRIBS(Expr, ...)   CHECK_PARAMETER(Expr, "Draw mesh attribs are invalid: ", __VA_ARGS__)
 
#define CHECK_DRAW_INDIRECT_ATTRIBS(Expr, ...)   CHECK_PARAMETER(Expr, "Draw indirect attribs are invalid: ", __VA_ARGS__)
 
#define CHECK_DRAW_INDEXED_INDIRECT_ATTRIBS(Expr, ...)   CHECK_PARAMETER(Expr, "Draw indexed indirect attribs are invalid: ", __VA_ARGS__)
 
#define CHECK_DRAW_MESH_INDIRECT_ATTRIBS(Expr, ...)   CHECK_PARAMETER(Expr, "Draw mesh indirect attribs are invalid: ", __VA_ARGS__)
 
#define CHECK_DRAW_MESH_INDIRECT_COUNT_ATTRIBS(Expr, ...)   CHECK_PARAMETER(Expr, "Draw mesh indirect count attribs are invalid: ", __VA_ARGS__)
 
#define CHECK_DISPATCH_COMPUTE_ATTRIBS(Expr, ...)   CHECK_PARAMETER(Expr, "Dispatch compute attribs are invalid: ", __VA_ARGS__)
 
#define CHECK_DISPATCH_COMPUTE_INDIRECT_ATTRIBS(Expr, ...)   CHECK_PARAMETER(Expr, "Dispatch compute indirect attribs are invalid: ", __VA_ARGS__)
 
#define CHECK_RESOLVE_TEX_SUBRES_ATTRIBS(Expr, ...)   CHECK_PARAMETER(Expr, "Resolve texture subresource attribs are invalid: ", __VA_ARGS__)
 
#define CHECK_BEGIN_RENDER_PASS_ATTRIBS(Expr, ...)   CHECK_PARAMETER(Expr, "Begin render pass attribs are invalid: ", __VA_ARGS__)
 
#define CHECK_STATE_TRANSITION_DESC(Expr, ...)   CHECK_PARAMETER(Expr, "State transition parameters are invalid: ", __VA_ARGS__)
 
#define CHECK_BUILD_BLAS_ATTRIBS(Expr, ...)   CHECK_PARAMETER(Expr, "Build BLAS attribs are invalid: ", __VA_ARGS__)
 
#define CHECK_BUILD_TLAS_ATTRIBS(Expr, ...)   CHECK_PARAMETER(Expr, "Build TLAS attribs are invalid: ", __VA_ARGS__)
 
#define CHECK_COPY_BLAS_ATTRIBS(Expr, ...)   CHECK_PARAMETER(Expr, "Copy BLAS attribs are invalid: ", __VA_ARGS__)
 
#define CHECK_COPY_TLAS_ATTRIBS(Expr, ...)   CHECK_PARAMETER(Expr, "Copy TLAS attribs are invalid: ", __VA_ARGS__)
 
#define CHECK_WRITE_BLAS_SIZE_ATTRIBS(Expr, ...)   CHECK_PARAMETER(Expr, "Write compacted BLAS size attribs are invalid: ", __VA_ARGS__)
 
#define CHECK_WRITE_TLAS_SIZE_ATTRIBS(Expr, ...)   CHECK_PARAMETER(Expr, "Write compacted TLAS size attribs are invalid: ", __VA_ARGS__)
 
#define CHECK_TRACE_RAYS_ATTRIBS(Expr, ...)   CHECK_PARAMETER(Expr, "Trace rays attribs are invalid: ", __VA_ARGS__)
 
#define CHECK_TRACE_RAYS_INDIRECT_ATTRIBS(Expr, ...)   CHECK_PARAMETER(Expr, "Trace rays indirect attribs are invalid: ", __VA_ARGS__)
 

Functions

bool Diligent::VerifyDrawAttribs (const DrawAttribs &Attribs)
 
bool Diligent::VerifyDrawIndexedAttribs (const DrawIndexedAttribs &Attribs)
 
bool Diligent::VerifyDrawMeshAttribs (Uint32 MaxDrawMeshTasksCount, const DrawMeshAttribs &Attribs)
 
bool Diligent::VerifyDrawIndirectAttribs (const DrawIndirectAttribs &Attribs, const IBuffer *pAttribsBuffer)
 
bool Diligent::VerifyDrawIndexedIndirectAttribs (const DrawIndexedIndirectAttribs &Attribs, const IBuffer *pAttribsBuffer)
 
bool Diligent::VerifyDrawMeshIndirectAttribs (const DrawMeshIndirectAttribs &Attribs, const IBuffer *pAttribsBuffer)
 
bool Diligent::VerifyDrawMeshIndirectCountAttribs (const DrawMeshIndirectCountAttribs &Attribs, const IBuffer *pAttribsBuffer, const IBuffer *pCountBuff, Uint32 IndirectCmdStride)
 
bool Diligent::VerifyDispatchComputeAttribs (const DispatchComputeAttribs &Attribs)
 
bool Diligent::VerifyDispatchComputeIndirectAttribs (const DispatchComputeIndirectAttribs &Attribs, const IBuffer *pAttribsBuffer)
 
bool Diligent::VerifyResolveTextureSubresourceAttribs (const ResolveTextureSubresourceAttribs &ResolveAttribs, const TextureDesc &SrcTexDesc, const TextureDesc &DstTexDesc)
 
bool Diligent::VerifyBeginRenderPassAttribs (const BeginRenderPassAttribs &Attribs)
 
bool Diligent::VerifyStateTransitionDesc (const IRenderDevice *pDevice, const StateTransitionDesc &Barrier)
 
bool Diligent::VerifyBuildBLASAttribs (const BuildBLASAttribs &Attribs)
 
bool Diligent::VerifyBuildTLASAttribs (const BuildTLASAttribs &Attribs)
 
bool Diligent::VerifyCopyBLASAttribs (const IRenderDevice *pDevice, const CopyBLASAttribs &Attribs)
 
bool Diligent::VerifyCopyTLASAttribs (const CopyTLASAttribs &Attribs)
 
bool Diligent::VerifyWriteBLASCompactedSizeAttribs (const IRenderDevice *pDevice, const WriteBLASCompactedSizeAttribs &Attribs)
 
bool Diligent::VerifyWriteTLASCompactedSizeAttribs (const IRenderDevice *pDevice, const WriteTLASCompactedSizeAttribs &Attribs)
 
bool Diligent::VerifyTraceRaysAttribs (const TraceRaysAttribs &Attribs)
 
bool Diligent::VerifyTraceRaysIndirectAttribs (const IRenderDevice *pDevice, const TraceRaysIndirectAttribs &Attribs, const IBuffer *pAttribsBuffer, Uint32 SBTSize)
 

Macro Definition Documentation

◆ CHECK_BEGIN_RENDER_PASS_ATTRIBS

#define CHECK_BEGIN_RENDER_PASS_ATTRIBS (   Expr,
  ... 
)    CHECK_PARAMETER(Expr, "Begin render pass attribs are invalid: ", __VA_ARGS__)

◆ CHECK_BUILD_BLAS_ATTRIBS

#define CHECK_BUILD_BLAS_ATTRIBS (   Expr,
  ... 
)    CHECK_PARAMETER(Expr, "Build BLAS attribs are invalid: ", __VA_ARGS__)

◆ CHECK_BUILD_TLAS_ATTRIBS

#define CHECK_BUILD_TLAS_ATTRIBS (   Expr,
  ... 
)    CHECK_PARAMETER(Expr, "Build TLAS attribs are invalid: ", __VA_ARGS__)

◆ CHECK_COPY_BLAS_ATTRIBS

#define CHECK_COPY_BLAS_ATTRIBS (   Expr,
  ... 
)    CHECK_PARAMETER(Expr, "Copy BLAS attribs are invalid: ", __VA_ARGS__)

◆ CHECK_COPY_TLAS_ATTRIBS

#define CHECK_COPY_TLAS_ATTRIBS (   Expr,
  ... 
)    CHECK_PARAMETER(Expr, "Copy TLAS attribs are invalid: ", __VA_ARGS__)

◆ CHECK_DISPATCH_COMPUTE_ATTRIBS

#define CHECK_DISPATCH_COMPUTE_ATTRIBS (   Expr,
  ... 
)    CHECK_PARAMETER(Expr, "Dispatch compute attribs are invalid: ", __VA_ARGS__)

◆ CHECK_DISPATCH_COMPUTE_INDIRECT_ATTRIBS

#define CHECK_DISPATCH_COMPUTE_INDIRECT_ATTRIBS (   Expr,
  ... 
)    CHECK_PARAMETER(Expr, "Dispatch compute indirect attribs are invalid: ", __VA_ARGS__)

◆ CHECK_DRAW_ATTRIBS

#define CHECK_DRAW_ATTRIBS (   Expr,
  ... 
)    CHECK_PARAMETER(Expr, "Draw attribs are invalid: ", __VA_ARGS__)

◆ CHECK_DRAW_INDEXED_ATTRIBS

#define CHECK_DRAW_INDEXED_ATTRIBS (   Expr,
  ... 
)    CHECK_PARAMETER(Expr, "Draw indexed attribs are invalid: ", __VA_ARGS__)

◆ CHECK_DRAW_INDEXED_INDIRECT_ATTRIBS

#define CHECK_DRAW_INDEXED_INDIRECT_ATTRIBS (   Expr,
  ... 
)    CHECK_PARAMETER(Expr, "Draw indexed indirect attribs are invalid: ", __VA_ARGS__)

◆ CHECK_DRAW_INDIRECT_ATTRIBS

#define CHECK_DRAW_INDIRECT_ATTRIBS (   Expr,
  ... 
)    CHECK_PARAMETER(Expr, "Draw indirect attribs are invalid: ", __VA_ARGS__)

◆ CHECK_DRAW_MESH_ATTRIBS

#define CHECK_DRAW_MESH_ATTRIBS (   Expr,
  ... 
)    CHECK_PARAMETER(Expr, "Draw mesh attribs are invalid: ", __VA_ARGS__)

◆ CHECK_DRAW_MESH_INDIRECT_ATTRIBS

#define CHECK_DRAW_MESH_INDIRECT_ATTRIBS (   Expr,
  ... 
)    CHECK_PARAMETER(Expr, "Draw mesh indirect attribs are invalid: ", __VA_ARGS__)

◆ CHECK_DRAW_MESH_INDIRECT_COUNT_ATTRIBS

#define CHECK_DRAW_MESH_INDIRECT_COUNT_ATTRIBS (   Expr,
  ... 
)    CHECK_PARAMETER(Expr, "Draw mesh indirect count attribs are invalid: ", __VA_ARGS__)

◆ CHECK_PARAMETER

#define CHECK_PARAMETER (   Expr,
  ... 
)
Value:
do \
{ \
if (!(Expr)) \
{ \
LOG_ERROR_MESSAGE(__VA_ARGS__); \
return false; \
} \
} while (false)

◆ CHECK_RESOLVE_TEX_SUBRES_ATTRIBS

#define CHECK_RESOLVE_TEX_SUBRES_ATTRIBS (   Expr,
  ... 
)    CHECK_PARAMETER(Expr, "Resolve texture subresource attribs are invalid: ", __VA_ARGS__)

◆ CHECK_STATE_TRANSITION_DESC

#define CHECK_STATE_TRANSITION_DESC (   Expr,
  ... 
)    CHECK_PARAMETER(Expr, "State transition parameters are invalid: ", __VA_ARGS__)

◆ CHECK_TRACE_RAYS_ATTRIBS

#define CHECK_TRACE_RAYS_ATTRIBS (   Expr,
  ... 
)    CHECK_PARAMETER(Expr, "Trace rays attribs are invalid: ", __VA_ARGS__)

◆ CHECK_TRACE_RAYS_INDIRECT_ATTRIBS

#define CHECK_TRACE_RAYS_INDIRECT_ATTRIBS (   Expr,
  ... 
)    CHECK_PARAMETER(Expr, "Trace rays indirect attribs are invalid: ", __VA_ARGS__)

◆ CHECK_WRITE_BLAS_SIZE_ATTRIBS

#define CHECK_WRITE_BLAS_SIZE_ATTRIBS (   Expr,
  ... 
)    CHECK_PARAMETER(Expr, "Write compacted BLAS size attribs are invalid: ", __VA_ARGS__)

◆ CHECK_WRITE_TLAS_SIZE_ATTRIBS

#define CHECK_WRITE_TLAS_SIZE_ATTRIBS (   Expr,
  ... 
)    CHECK_PARAMETER(Expr, "Write compacted TLAS size attribs are invalid: ", __VA_ARGS__)