Jolt Physics
A multi core friendly Game Physics Engine
Loading...
Searching...
No Matches
ComputeBufferCPU Class Referencefinal

Buffer that can be used with the CPU compute system. More...

#include <ComputeBufferCPU.h>

Inheritance diagram for ComputeBufferCPU:
ComputeBuffer RefTarget< ComputeBuffer > NonCopyable

Public Member Functions

JPH_OVERRIDE_NEW_DELETE ComputeBufferCPU (EType inType, uint64 inSize, uint inStride, const void *inData)
 Constructor / destructor.
 
virtual ~ComputeBufferCPU () override
 
ComputeBufferResult CreateReadBackBuffer () const override
 
void * GetData () const
 
- Public Member Functions inherited from ComputeBuffer
 ComputeBuffer (EType inType, uint64 inSize, uint inStride)
 Constructor / Destructor.
 
virtual ~ComputeBuffer ()
 
EType GetType () const
 Properties.
 
uint64 GetSize () const
 
uint GetStride () const
 
void * Map (EMode inMode)
 Map / unmap buffer (get pointer to data).
 
template<typename T >
T * Map (EMode inMode)
 
void Unmap ()
 
- Public Member Functions inherited from RefTarget< ComputeBuffer >
 RefTarget ()=default
 Constructor.
 
 RefTarget (const RefTarget &)
 
 ~RefTarget ()
 assert no one is referencing us
 
void SetEmbedded () const
 
RefTargetoperator= (const RefTarget &)
 Assignment operator.
 
uint32 GetRefCount () const
 Get current refcount of this object.
 
void AddRef () const
 Add or release a reference to this object.
 
void Release () const
 
- Public Member Functions inherited from NonCopyable
 NonCopyable ()=default
 
 NonCopyable (const NonCopyable &)=delete
 
void operator= (const NonCopyable &)=delete
 

Additional Inherited Members

- Public Types inherited from ComputeBuffer
enum class  EType {
  UploadBuffer , ReadbackBuffer , ConstantBuffer , Buffer ,
  RWBuffer
}
 Type of buffer. More...
 
enum class  EMode { Read , Write }
 Mode in which the buffer is accessed. More...
 
- Static Public Member Functions inherited from RefTarget< ComputeBuffer >
static int sInternalGetRefCountOffset ()
 INTERNAL HELPER FUNCTION USED BY SERIALIZATION.
 
- Protected Member Functions inherited from ComputeBuffer
- Protected Attributes inherited from ComputeBuffer
EType mType
 
uint64 mSize
 
uint mStride
 
- Protected Attributes inherited from RefTarget< ComputeBuffer >
atomic< uint32mRefCount
 Current reference count.
 
- Static Protected Attributes inherited from RefTarget< ComputeBuffer >
static constexpr uint32 cEmbedded
 A large value that gets added to the refcount to mark the object as embedded.
 

Detailed Description

Buffer that can be used with the CPU compute system.

Constructor & Destructor Documentation

◆ ComputeBufferCPU()

JPH_NAMESPACE_BEGIN ComputeBufferCPU::ComputeBufferCPU ( EType inType,
uint64 inSize,
uint inStride,
const void * inData )

Constructor / destructor.

◆ ~ComputeBufferCPU()

ComputeBufferCPU::~ComputeBufferCPU ( )
overridevirtual

Member Function Documentation

◆ CreateReadBackBuffer()

ComputeBufferResult ComputeBufferCPU::CreateReadBackBuffer ( ) const
overridevirtual

Create a readback buffer of the same size and stride that can be used to read the data stored in this buffer on CPU. Note that this could also be implemented as 'return this' in case the underlying implementation allows locking GPU data on CPU directly.

Implements ComputeBuffer.

◆ GetData()

void * ComputeBufferCPU::GetData ( ) const
inline

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