OGRE-Next 3.0.0
Object-Oriented Graphics Rendering Engine
Loading...
Searching...
No Matches
Ogre::MetalReadOnlyBufferPacked Class Referencefinal

#include <OgreMetalTexBufferPacked.h>

Inheritance diagram for Ogre::MetalReadOnlyBufferPacked:

Public Member Functions

 MetalReadOnlyBufferPacked (size_t internalBufStartBytes, size_t numElements, uint32 bytesPerElement, uint32 numElementsPadding, BufferType bufferType, void *initialData, bool keepAsShadow, VaoManager *vaoManager, MetalBufferInterface *bufferInterface, PixelFormatGpu pf, MetalDevice *device)
BufferPackedTypes getBufferPackedType () const override
 Useful to query which one is the derived class.
Public Member Functions inherited from Ogre::MetalTexBufferPacked
 MetalTexBufferPacked (size_t internalBufStartBytes, size_t numElements, uint32 bytesPerElement, uint32 numElementsPadding, BufferType bufferType, void *initialData, bool keepAsShadow, VaoManager *vaoManager, MetalBufferInterface *bufferInterface, PixelFormatGpu pf, MetalDevice *device)
 ~MetalTexBufferPacked () override
void bindBufferCS (uint16 slot, size_t offset=0, size_t sizeBytes=0) override
void bindBufferDS (uint16 slot, size_t offset=0, size_t sizeBytes=0) override
void bindBufferForDescriptor (__unsafe_unretained id< MTLBuffer > *buffers, NSUInteger *offsets, size_t offset)
void bindBufferGS (uint16 slot, size_t offset=0, size_t sizeBytes=0) override
void bindBufferHS (uint16 slot, size_t offset=0, size_t sizeBytes=0) override
void bindBufferPS (uint16 slot, size_t offset=0, size_t sizeBytes=0) override
void bindBufferVS (uint16 slot, size_t offset=0, size_t sizeBytes=0) override
 Binds the texture buffer to the given slot in the Vertex/Pixel/Geometry/Hull/Domain/Compute Shader.
BufferPackedTypes getBufferPackedType () const override
 Useful to query which one is the derived class.
Public Member Functions inherited from Ogre::ReadOnlyBufferPacked
 ReadOnlyBufferPacked (size_t internalBufferStartBytes, size_t numElements, uint32 bytesPerElement, uint32 numElementsPadding, BufferType bufferType, void *initialData, bool keepAsShadow, VaoManager *vaoManager, BufferInterface *bufferInterface, PixelFormatGpu pf)
BufferPackedTypes getBufferPackedType () const override
 Useful to query which one is the derived class.
Public Member Functions inherited from Ogre::TexBufferPacked
 TexBufferPacked (size_t internalBufferStartBytes, size_t numElements, uint32 bytesPerElement, uint32 numElementsPadding, BufferType bufferType, void *initialData, bool keepAsShadow, VaoManager *vaoManager, BufferInterface *bufferInterface, PixelFormatGpu pf)
virtual void _bindBufferDirectly (uint16 slot, size_t offset, size_t sizeBytes)
 To be overriden only by GL3+.
BufferPackedTypes getBufferPackedType () const override
 Useful to query which one is the derived class.
PixelFormatGpu getPixelFormat () 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.
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.
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.
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.
BufferInterfacegetBufferInterface () const
BufferType getBufferType () const
uint32 getBytesPerElement () const
MappingState getMappingState () const
 Returns the mapping state.
size_t getNumElements () const
virtual BufferPackedgetOriginalBufferType ()
 If this buffer has been reinterpreted from an UavBufferPacked, returns the original version, otherwise returns 'this'.
const void * getShadowCopy () const
size_t getTotalSizeBytes () const
bool isCurrentlyMapped () const
 Returns whether the buffer is currently mapped.
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.
AsyncTicketPtr readRequest (size_t elementStart, size_t elementCount)
 Async data read request.
void regressFrame ()
 Performs the opposite of.
void unmap (UnmapOptions unmapOption, size_t flushStartElem=0, size_t flushSizeElem=0)
 Unmaps or flushes the region mapped with.
virtual void upload (const void *data, size_t elementStart, size_t elementCount)
 Sends the provided data to the GPU.
Public Member Functions inherited from Ogre::GpuTrackedResource
virtual ~GpuTrackedResource ()
virtual bool isTextureGpu () const

Constructor & Destructor Documentation

◆ MetalReadOnlyBufferPacked()

Ogre::MetalReadOnlyBufferPacked::MetalReadOnlyBufferPacked ( size_t internalBufStartBytes,
size_t numElements,
uint32 bytesPerElement,
uint32 numElementsPadding,
BufferType bufferType,
void * initialData,
bool keepAsShadow,
VaoManager * vaoManager,
MetalBufferInterface * bufferInterface,
PixelFormatGpu pf,
MetalDevice * device )

Member Function Documentation

◆ getBufferPackedType()

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

Useful to query which one is the derived class.

Implements Ogre::BufferPacked.

References Ogre::BP_TYPE_READONLY.


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