28#ifndef DVD_CEGUIDVDTexture_h_
29#define DVD_CEGUIDVDTexture_h_
31#include "CEGUI/Base.h"
32#include "CEGUI/Renderer.h"
33#include "CEGUI/Texture.h"
39# pragma warning(disable : 4251)
48#pragma region Texture Interface
49 [[nodiscard]]
const String&
getName()
const override;
50 [[nodiscard]]
const Sizef&
getSize()
const override;
55 void loadFromFile(
const String& filename,
const String& resourceGroup)
override;
56 void loadFromMemory(
const void* buffer,
const Sizef& buffer_size, PixelFormat pixel_format)
override;
57 void blitFromMemory(
const void* sourceData,
const Rectf& area)
override;
Texture & createTexture(const String &name) override
void destroyTexture(Texture &texture) override
bool isPixelFormatSupported(PixelFormat fmt) const override
bool _isCompressed
Whether Texture format is a compressed format.
void updateCachedScaleValues()
updates cached scale value used to map pixels to texture co-ords.
Divide::Handle< Divide::Texture > _texture
The Divide texture used for storing this DVDTexture's data.
void blitFromMemory(const void *sourceData, const Rectf &area) override
void setTextureSize(const Sizef &sz)
set the size of the internal texture.
Divide::SamplerDescriptor _sampler
A Divide sampler hash used for sampling from this texture in shaders.
const Sizef & getSize() const override
void setDVDTexture(Divide::Handle< Divide::Texture > tex, const Sizef &size)
set the Divide::Texture that this Texture is based on to the specified texture, with the specified si...
const String & getName() const override
const String _name
The name given for this texture.
Vector2f _texelScaling
cached pixel to texel mapping scale values.
void loadFromMemory(const void *buffer, const Sizef &buffer_size, PixelFormat pixel_format) override
Sizef _dataSize
original size of pixel data loaded into texture
const Sizef & getOriginalDataSize() const override
CEGUIRenderer & _owner
CEGUIRenderer that created and owns this DVDTexture.
void generateDVDTexture()
generate the DVD texture and set some initial options.
Divide::Handle< Divide::Texture > getDVDTexture() const
Return the internal Divide::Texture pointer used by this Texture object.
void setTextureSize_impl(const Sizef &sz, PixelFormat format)
internal texture resize function (does not reset format or other fields)
void blitToMemory(void *targetData) override
void loadFromFile(const String &filename, const String &resourceGroup) override
const Vector2f & getTexelScaling() const override
PixelFormat _format
Texture format.
Sizef _size
Size of the texture.