![]() |
Divide Framework 0.1
A free and open-source 3D Framework under heavy development
|
#include <NonePlaceholderObjects.h>
Public Member Functions | |
noGenericVertexData (GFXDevice &context, const U16 ringBufferLength, const std::string_view name) | |
void | reset () override |
Also clears GPU memory. | |
void | draw (const GenericDrawCommand &command, VDIUserData *data) noexcept override |
BufferLock | setIndexBuffer (const IndexBuffer &indices) override |
BufferLock | setBuffer (const SetBufferParams ¶ms) noexcept override |
BufferLock | updateBuffer (U32 buffer, U32 elementCountOffset, U32 elementCountRange, bufferPtr data) noexcept override |
![]() | |
GenericVertexData (GFXDevice &context, U16 ringBufferLength, const std::string_view name) | |
virtual BufferLock | setIndexBuffer (const IndexBuffer &indices)=0 |
virtual void | reset ()=0 |
Also clears GPU memory. | |
virtual BufferLock | setBuffer (const SetBufferParams ¶ms)=0 |
virtual BufferLock | updateBuffer (U32 buffer, U32 elementCountOffset, U32 elementCountRange, bufferPtr data)=0 |
![]() | |
VertexDataInterface (GFXDevice &context, const std::string_view name) | |
virtual | ~VertexDataInterface () override |
virtual void | draw (const GenericDrawCommand &command, VDIUserData *data)=0 |
PROPERTY_R (Handle, handle) | |
PROPERTY_RW (bool, primitiveRestartRequired, false) | |
![]() | |
GUIDWrapper () noexcept | |
GUIDWrapper (const GUIDWrapper &old) noexcept | |
GUIDWrapper (GUIDWrapper &&old) noexcept | |
virtual | ~GUIDWrapper ()=default |
FORCE_INLINE I64 | getGUID () const noexcept |
GUIDWrapper & | operator= (const GUIDWrapper &old)=delete |
GUIDWrapper & | operator= (GUIDWrapper &&other)=delete |
![]() | |
virtual | ~GraphicsResource () |
GFXDevice & | context () const noexcept |
U64 | nameHash () const noexcept |
![]() | |
NonCopyable (const NonCopyable &)=delete | |
NonCopyable & | operator= (const NonCopyable &)=delete |
NonCopyable (NonCopyable &&)=default | |
NonCopyable & | operator= (NonCopyable &&)=default |
![]() | |
NonMovable (NonMovable &&)=delete | |
NonMovable & | operator= (NonMovable &&)=delete |
NonMovable (const NonMovable &)=default | |
NonMovable & | operator= (const NonMovable &)=default |
![]() | |
RingBuffer (U16 queueLength) noexcept | |
virtual | ~RingBuffer ()=default |
virtual void | resize (U16 queueLength) noexcept |
U16 | queueLength () const noexcept |
I32 | queueIndex () const noexcept |
void | incQueue () noexcept |
void | decQueue () noexcept |
Additional Inherited Members | |
![]() | |
using | Handle = PoolHandle |
using | VDIPool = ObjectPool< VertexDataInterface, 256, true > |
![]() | |
enum class | Type : U8 { RENDER_TARGET , SHADER_BUFFER , BUFFER , SHADER , SHADER_PROGRAM , TEXTURE , COUNT } |
![]() | |
static I64 | generateGUID () noexcept |
![]() | |
static constexpr Handle | INVALID_VDI_HANDLE {U16_MAX, 0u} |
static VDIPool | s_VDIPool |
![]() | |
GraphicsResource (GFXDevice &context, Type type, I64 GUID, U64 nameHash) | |
![]() | |
NonCopyable ()=default | |
~NonCopyable ()=default | |
![]() | |
NonMovable ()=default | |
~NonMovable ()=default | |
![]() | |
Str< 256 > | _name |
![]() | |
const I64 | _guid |
![]() | |
GFXDevice & | _context |
Definition at line 51 of file NonePlaceholderObjects.h.
|
inline |
Definition at line 53 of file NonePlaceholderObjects.h.
|
inlineoverridevirtualnoexcept |
Implements Divide::VertexDataInterface.
Definition at line 58 of file NonePlaceholderObjects.h.
|
inlineoverridevirtual |
Also clears GPU memory.
Implements Divide::GenericVertexData.
Definition at line 57 of file NonePlaceholderObjects.h.
|
inlineoverridevirtualnoexcept |
When reading and writing to the same buffer, we use a round-robin approach and offset the reading and writing to multiple copies of the data
Implements Divide::GenericVertexData.
Definition at line 61 of file NonePlaceholderObjects.h.
|
inlineoverridevirtual |
Implements Divide::GenericVertexData.
Definition at line 60 of file NonePlaceholderObjects.h.
|
inlineoverridevirtualnoexcept |
Implements Divide::GenericVertexData.
Definition at line 62 of file NonePlaceholderObjects.h.