Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | Static Private Attributes | List of all members
gte::DX11StructuredBuffer Class Reference

#include <GteDX11StructuredBuffer.h>

Inheritance diagram for gte::DX11StructuredBuffer:
Inheritance graph
[legend]

Public Member Functions

virtual bool CopyGpuToCpu (ID3D11DeviceContext *context)
 
 DX11StructuredBuffer (ID3D11Device *device, StructuredBuffer const *sbuffer)
 
ID3D11Buffer * GetCounterStagingBuffer () const
 
bool GetNumActiveElements (ID3D11DeviceContext *context)
 
ID3D11ShaderResourceView * GetSRView () const
 
StructuredBufferGetStructuredBuffer () const
 
ID3D11UnorderedAccessView * GetUAView () const
 
virtual void SetName (std::string const &name)
 
virtual ~DX11StructuredBuffer ()
 
- Public Member Functions inherited from gte::DX11Buffer
virtual bool CopyCpuToGpu (ID3D11DeviceContext *context) override
 
virtual void CopyGpuToGpu (ID3D11DeviceContext *context, ID3D11Resource *target) override
 
BufferGetBuffer () const
 
ID3D11Buffer * GetDXBuffer () const
 
virtual bool Update (ID3D11DeviceContext *context) override
 
- Public Member Functions inherited from gte::DX11Resource
ID3D11Resource * GetDXResource () const
 
ResourceGetResource () const
 
ID3D11Resource * GetStagingResource () const
 
D3D11_MAPPED_SUBRESOURCE MapForWrite (ID3D11DeviceContext *context, unsigned int sri)
 
void Unmap (ID3D11DeviceContext *context, unsigned int sri)
 
virtual ~DX11Resource ()
 
- Public Member Functions inherited from gte::DX11GraphicsObject
ID3D11DeviceChild * GetDXDeviceChild () const
 
virtual ~DX11GraphicsObject ()
 
- Public Member Functions inherited from gte::GEObject
GraphicsObjectGetGraphicsObject () const
 
std::string const & GetName () const
 
virtual ~GEObject ()
 

Static Public Member Functions

static std::shared_ptr< GEObjectCreate (void *device, GraphicsObject const *object)
 

Private Member Functions

void CreateCounterStaging (ID3D11Device *device)
 
void CreateSRView (ID3D11Device *device)
 
void CreateUAView (ID3D11Device *device)
 

Private Attributes

ID3D11Buffer * mCounterStaging
 
ID3D11ShaderResourceView * mSRView
 
ID3D11UnorderedAccessView * mUAView
 

Static Private Attributes

static unsigned int const msUAVFlag []
 

Additional Inherited Members

- Protected Member Functions inherited from gte::DX11Buffer
void CreateStaging (ID3D11Device *device, D3D11_BUFFER_DESC const &bf)
 
 DX11Buffer (Buffer const *buffer)
 
- Protected Member Functions inherited from gte::DX11Resource
 DX11Resource (Resource const *gtResource)
 
bool PreparedForCopy (D3D11_CPU_ACCESS_FLAG access) const
 
- Protected Member Functions inherited from gte::DX11GraphicsObject
 DX11GraphicsObject (GraphicsObject const *gtObject)
 
- Protected Member Functions inherited from gte::GEObject
 GEObject (GraphicsObject const *gtObject)
 
- Protected Attributes inherited from gte::DX11Buffer
D3D11_MAP mUpdateMapMode
 
- Protected Attributes inherited from gte::DX11Resource
ID3D11Resource * mStaging
 
- Protected Attributes inherited from gte::DX11GraphicsObject
ID3D11DeviceChild * mDXObject
 
- Protected Attributes inherited from gte::GEObject
GraphicsObjectmGTObject
 
std::string mName
 
- Static Protected Attributes inherited from gte::DX11Resource
static UINT const msStagingAccess []
 

Detailed Description

Definition at line 16 of file GteDX11StructuredBuffer.h.

Constructor & Destructor Documentation

DX11StructuredBuffer::~DX11StructuredBuffer ( )
virtual

Definition at line 12 of file GteDX11StructuredBuffer.cpp.

DX11StructuredBuffer::DX11StructuredBuffer ( ID3D11Device *  device,
StructuredBuffer const *  sbuffer 
)

Definition at line 19 of file GteDX11StructuredBuffer.cpp.

Member Function Documentation

bool DX11StructuredBuffer::CopyGpuToCpu ( ID3D11DeviceContext *  context)
virtual

Reimplemented from gte::DX11Buffer.

Definition at line 102 of file GteDX11StructuredBuffer.cpp.

std::shared_ptr< GEObject > DX11StructuredBuffer::Create ( void device,
GraphicsObject const *  object 
)
static

Definition at line 89 of file GteDX11StructuredBuffer.cpp.

void DX11StructuredBuffer::CreateCounterStaging ( ID3D11Device *  device)
private

Definition at line 182 of file GteDX11StructuredBuffer.cpp.

void DX11StructuredBuffer::CreateSRView ( ID3D11Device *  device)
private

Definition at line 151 of file GteDX11StructuredBuffer.cpp.

void DX11StructuredBuffer::CreateUAView ( ID3D11Device *  device)
private

Definition at line 166 of file GteDX11StructuredBuffer.cpp.

ID3D11Buffer * gte::DX11StructuredBuffer::GetCounterStagingBuffer ( ) const
inline

Definition at line 73 of file GteDX11StructuredBuffer.h.

bool DX11StructuredBuffer::GetNumActiveElements ( ID3D11DeviceContext *  context)

Definition at line 114 of file GteDX11StructuredBuffer.cpp.

ID3D11ShaderResourceView * gte::DX11StructuredBuffer::GetSRView ( ) const
inline

Definition at line 63 of file GteDX11StructuredBuffer.h.

StructuredBuffer * gte::DX11StructuredBuffer::GetStructuredBuffer ( ) const
inline

Definition at line 58 of file GteDX11StructuredBuffer.h.

ID3D11UnorderedAccessView * gte::DX11StructuredBuffer::GetUAView ( ) const
inline

Definition at line 68 of file GteDX11StructuredBuffer.h.

void DX11StructuredBuffer::SetName ( std::string const &  name)
virtual

Reimplemented from gte::DX11Resource.

Definition at line 137 of file GteDX11StructuredBuffer.cpp.

Member Data Documentation

ID3D11Buffer* gte::DX11StructuredBuffer::mCounterStaging
private

Definition at line 52 of file GteDX11StructuredBuffer.h.

ID3D11ShaderResourceView* gte::DX11StructuredBuffer::mSRView
private

Definition at line 50 of file GteDX11StructuredBuffer.h.

unsigned int const DX11StructuredBuffer::msUAVFlag
staticprivate
Initial value:
=
{
D3D11_BUFFER_UAV_FLAG_APPEND,
D3D11_BUFFER_UAV_FLAG_COUNTER
}

Definition at line 55 of file GteDX11StructuredBuffer.h.

ID3D11UnorderedAccessView* gte::DX11StructuredBuffer::mUAView
private

Definition at line 51 of file GteDX11StructuredBuffer.h.


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


geometric_tools_engine
Author(s): Yijiang Huang
autogenerated on Thu Jul 18 2019 04:00:06