OGRE-Next  4.0.0unstable
Object-Oriented Graphics Rendering Engine
Ogre::IndexBufferPacked Class Reference

#include <OgreIndexBufferPacked.h>

+ Inheritance diagram for Ogre::IndexBufferPacked:

Public Types

typedef Ogre::IndexType IndexType
 

Public Member Functions

 IndexBufferPacked (size_t internalBufferStartBytes, size_t numElements, uint32 bytesPerElement, uint32 numElementsPadding, BufferType bufferType, void *initialData, bool keepAsShadow, VaoManager *vaoManager, BufferInterface *bufferInterface)
 
BufferPackedTypes getBufferPackedType () const override
 Useful to query which one is the derived class. More...
 
IndexType getIndexType () const
 
- Public Member Functions inherited from Ogre::BufferPacked
 BufferPacked (size_t internalBufferStartBytes, size_t numElements, uint32 bytesPerElement, uint32 numElementsPadding, BufferType bufferType, void *initialData, bool keepAsShadow, VaoManager *vaoManager, BufferInterface *bufferInterface)
 Generic constructor. More...
 
virtual ~BufferPacked ()
 
size_t _getFinalBufferStart () const
 
size_t _getInternalBufferStart () const
 
size_t _getInternalNumElements () const
 
size_t _getInternalTotalSizeBytes () const
 
void _setBufferInterface (BufferInterface *bufferInterface)
 For internal use. More...
 
void _setShadowCopy (void *copy)
 This will not delete the existing shadow copy so it can be used for other purposes if it is not needed call OGRE_FREE_SIMD( m->getShadowCopy(), MEMCATEGORY_GEOMETRY ) before calling this function. More...
 
void advanceFrame ()
 
void copyTo (BufferPacked *dstBuffer, size_t dstElemStart=0, size_t srcElemStart=0, size_t srcNumElems=std::numeric_limits< size_t >::max())
 Copies the contents of this buffer to another, using GPU -> GPU transfers. More...
 
BufferInterfacegetBufferInterface () const
 
BufferType getBufferType () const
 
uint32 getBytesPerElement () const
 
MappingState getMappingState () const
 Returns the mapping state. More...
 
size_t getNumElements () const
 
virtual BufferPackedgetOriginalBufferType ()
 If this buffer has been reinterpreted from an UavBufferPacked, returns the original version, otherwise returns 'this'. More...
 
const void * getShadowCopy () const
 
size_t getTotalSizeBytes () const
 
bool isCurrentlyMapped () const
 Returns whether the buffer is currently mapped. More...
 
void *RESTRICT_ALIAS_RETURN map (size_t elementStart, size_t elementCount, bool bAdvanceFrame=true)
 Maps the specified region to a pointer the CPU can access. More...
 
AsyncTicketPtr readRequest (size_t elementStart, size_t elementCount)
 Async data read request. More...
 
void regressFrame ()
 Performs the opposite of. More...
 
void unmap (UnmapOptions unmapOption, size_t flushStartElem=0, size_t flushSizeElem=0)
 Unmaps or flushes the region mapped with. More...
 
virtual void upload (const void *data, size_t elementStart, size_t elementCount)
 Sends the provided data to the GPU. More...
 
- Public Member Functions inherited from Ogre::GpuTrackedResource
virtual ~GpuTrackedResource ()
 
virtual bool isTextureGpu () const
 

Static Public Attributes

static const IndexType IT_16BIT = Ogre::IT_16BIT
 
static const IndexType IT_32BIT = Ogre::IT_32BIT
 

Member Typedef Documentation

◆ IndexType

Constructor & Destructor Documentation

◆ IndexBufferPacked()

Ogre::IndexBufferPacked::IndexBufferPacked ( size_t  internalBufferStartBytes,
size_t  numElements,
uint32  bytesPerElement,
uint32  numElementsPadding,
BufferType  bufferType,
void *  initialData,
bool  keepAsShadow,
VaoManager vaoManager,
BufferInterface bufferInterface 
)
inline

Member Function Documentation

◆ getBufferPackedType()

BufferPackedTypes Ogre::IndexBufferPacked::getBufferPackedType ( ) const
inlineoverridevirtual

Useful to query which one is the derived class.

Implements Ogre::BufferPacked.

References Ogre::BP_TYPE_INDEX.

◆ getIndexType()

IndexType Ogre::IndexBufferPacked::getIndexType ( ) const
inline

References Ogre::IT_16BIT, and Ogre::IT_32BIT.

Member Data Documentation

◆ IT_16BIT

const IndexType Ogre::IndexBufferPacked::IT_16BIT = Ogre::IT_16BIT
static

◆ IT_32BIT

const IndexType Ogre::IndexBufferPacked::IT_32BIT = Ogre::IT_32BIT
static

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