45 void *
Map(
EMode inMode) {
return MapInternal(inMode); }
46 template <
typename T> T *
Map(
EMode inMode) {
JPH_ASSERT(
sizeof(T) == mStride);
return reinterpret_cast<T *
>(MapInternal(inMode)); }
#define JPH_EXPORT
Definition Core.h:275
std::uint64_t uint64
Definition Core.h:504
unsigned int uint
Definition Core.h:500
#define JPH_NAMESPACE_END
Definition Core.h:425
#define JPH_NAMESPACE_BEGIN
Definition Core.h:419
#define JPH_ASSERT(...)
Definition IssueReporting.h:33
#define JPH_OVERRIDE_NEW_DELETE
Macro to override the new and delete functions.
Definition Memory.h:50
Buffer that can be read from / written to by a compute shader.
Definition ComputeBuffer.h:14
uint mStride
Definition ComputeBuffer.h:56
EType mType
Definition ComputeBuffer.h:54
uint64 mSize
Definition ComputeBuffer.h:55
virtual void * MapInternal(EMode inMode)=0
virtual ~ComputeBuffer()=default
EType GetType() const
Properties.
Definition ComputeBuffer.h:33
void * Map(EMode inMode)
Map / unmap buffer (get pointer to data).
Definition ComputeBuffer.h:45
ComputeBuffer(EType inType, uint64 inSize, uint inStride)
Constructor / Destructor.
Definition ComputeBuffer.h:29
EMode
Mode in which the buffer is accessed.
Definition ComputeBuffer.h:39
EType
Type of buffer.
Definition ComputeBuffer.h:20
uint GetStride() const
Definition ComputeBuffer.h:35
T * Map(EMode inMode)
Definition ComputeBuffer.h:46
virtual Ref< ComputeBuffer > CreateReadBackBuffer() const =0
uint64 GetSize() const
Definition ComputeBuffer.h:34
Class that makes another class non-copyable. Usage: Inherit from NonCopyable.
Definition NonCopyable.h:11
Definition Reference.h:107
Definition Reference.h:35