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

For GL3+, most (if not all) buffers, can be treated with the same code. More...

#include <OgreNULLBufferInterface.h>

+ Inheritance diagram for Ogre::NULLBufferInterface:

Public Member Functions

 NULLBufferInterface (size_t vboPoolIdx)
 
 ~NULLBufferInterface () override
 
void _firstUpload (const void *data, size_t elementStart, size_t elementCount)
 Only use this function for the first upload. More...
 
void _notifyBuffer (BufferPacked *buffer) override
 
void advanceFrame () override
 
void copyTo (BufferInterface *dstBuffer, size_t dstOffsetBytes, size_t srcOffsetBytes, size_t sizeBytes) override
 
uint8getNullDataPtr ()
 
size_t getVboPoolIndex ()
 
void *RESTRICT_ALIAS_RETURN map (size_t elementStart, size_t elementCount, MappingState prevMappingState, bool advanceFrame=true) override
 
void nullDataPtr ()
 will null the data ptr so it wont be freed on destruction More...
 
void regressFrame () override
 
void unmap (UnmapOptions unmapOption, size_t flushStartElem=0, size_t flushSizeElem=0) override
 
- Public Member Functions inherited from Ogre::BufferInterface
 BufferInterface ()
 
virtual ~BufferInterface ()
 
virtual void _ensureDelayedImmutableBuffersAreReady ()
 
BufferPackedgetBufferPacked ()
 
void upload (const void *data, size_t elementStart, size_t elementCount)
 

Detailed Description

For GL3+, most (if not all) buffers, can be treated with the same code.

Hence most equivalent functionality is encapsulated here.

Constructor & Destructor Documentation

◆ NULLBufferInterface()

Ogre::NULLBufferInterface::NULLBufferInterface ( size_t  vboPoolIdx)

◆ ~NULLBufferInterface()

Ogre::NULLBufferInterface::~NULLBufferInterface ( )
override

Member Function Documentation

◆ _firstUpload()

void Ogre::NULLBufferInterface::_firstUpload ( const void *  data,
size_t  elementStart,
size_t  elementCount 
)

Only use this function for the first upload.

◆ _notifyBuffer()

void Ogre::NULLBufferInterface::_notifyBuffer ( BufferPacked buffer)
overridevirtual

Reimplemented from Ogre::BufferInterface.

◆ advanceFrame()

void Ogre::NULLBufferInterface::advanceFrame ( )
overridevirtual

Implements Ogre::BufferInterface.

◆ copyTo()

void Ogre::NULLBufferInterface::copyTo ( BufferInterface dstBuffer,
size_t  dstOffsetBytes,
size_t  srcOffsetBytes,
size_t  sizeBytes 
)
overridevirtual

Implements Ogre::BufferInterface.

◆ getNullDataPtr()

uint8* Ogre::NULLBufferInterface::getNullDataPtr ( )
inline

◆ getVboPoolIndex()

size_t Ogre::NULLBufferInterface::getVboPoolIndex ( )
inline

◆ map()

void* RESTRICT_ALIAS_RETURN Ogre::NULLBufferInterface::map ( size_t  elementStart,
size_t  elementCount,
MappingState  prevMappingState,
bool  advanceFrame = true 
)
overridevirtual

Implements Ogre::BufferInterface.

◆ nullDataPtr()

void Ogre::NULLBufferInterface::nullDataPtr ( )
inline

will null the data ptr so it wont be freed on destruction

◆ regressFrame()

void Ogre::NULLBufferInterface::regressFrame ( )
overridevirtual

Implements Ogre::BufferInterface.

◆ unmap()

void Ogre::NULLBufferInterface::unmap ( UnmapOptions  unmapOption,
size_t  flushStartElem = 0,
size_t  flushSizeElem = 0 
)
overridevirtual

Implements Ogre::BufferInterface.


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