26#ifndef _CEGUIDirect3D11Texture_h_
27#define _CEGUIDirect3D11Texture_h_
29#include "../../Texture.h"
30#include "CEGUI/RendererModules/Direct3D11/Renderer.h"
31#include "../../Size.h"
32#include "../../Vector.h"
36struct ID3D11DeviceContext;
37struct ID3D11Texture2D;
38struct ID3D11ShaderResourceView;
42# pragma warning(disable : 4251)
114 const String& resourceGroup);
Texture & createTexture(const String &name)
Create a 'null' Texture object.
void destroyTexture(Texture &texture)
Destroy a Texture object that was previously created by calling the createTexture functions.
Texture implementation for the Direct3D11Renderer.
Definition: RendererModules/Direct3D11/Texture.h:50
const Sizef & getSize() const
Returns the current pixel size of the texture.
void initialiseShaderResourceView()
creates shader resource view for the current D3D texture
Direct3D11Texture(IDevice11 &device, const String &name)
Basic constructor.
void cleanupDirect3D11Texture()
clean up the internal texture.
ID3D11ShaderResourceView * d_resourceView
Shader resource view for the texture.
Definition: RendererModules/Direct3D11/Texture.h:136
ID3D11Texture2D * d_texture
The D3D 10 texture we're wrapping.
Definition: RendererModules/Direct3D11/Texture.h:134
Direct3D11Texture(IDevice11 &device, const String &name, const String &filename, const String &resourceGroup)
Construct texture from an image file.
void loadFromFile(const String &filename, const String &resourceGroup)
Loads the specified image file into the texture. The texture is resized as required to hold the image...
bool isPixelFormatSupported(const PixelFormat fmt) const
Return whether the specified pixel format is supported by the system for the CEGUI::Texture implement...
void blitFromMemory(const void *sourceData, const Rectf &area)
Performs an area memory blit to the texture.
void updateCachedScaleValues()
updates cached scale value used to map pixels to texture co-ords.
Direct3D11Texture(IDevice11 &device, const String &name, ID3D11Texture2D *tex)
Construct texture that wraps an existing D3D10 texture.
const Sizef & getOriginalDataSize() const
Returns the original pixel size of the data loaded into the texture.
ID3D11Texture2D * getDirect3DTexture() const
Return the internal D3D10 texture used by this Texture object.
const String d_name
The name we were created with.
Definition: RendererModules/Direct3D11/Texture.h:144
Direct3D11Texture(IDevice11 &device, const String &name, const Sizef &sz)
Construct texture with a given size.
ID3D11ShaderResourceView * getDirect3DShaderResourceView() const
Return the internal D3D10 shader resource view for the texture.
void updateTextureSize()
set d_size to actual texture size (d_dataSize is used if query fails)
void loadFromMemory(const void *buffer, const Sizef &buffer_size, PixelFormat pixel_format)
Loads (copies) an image in memory into the texture. The texture is resized as required to hold the im...
void blitToMemory(void *targetData)
Performs a complete blit from the texture surface to memory.
Sizef d_dataSize
original pixel of size data loaded into texture
Definition: RendererModules/Direct3D11/Texture.h:140
void setDirect3DTexture(ID3D11Texture2D *tex)
set the D3D10 texture that this Texture is based on to the specified texture.
Vector2f d_texelScaling
cached pixel to texel mapping scale values.
Definition: RendererModules/Direct3D11/Texture.h:142
Sizef d_size
Size of the texture.
Definition: RendererModules/Direct3D11/Texture.h:138
const String & getName() const
Returns the name given to the texture when it was created.
IDevice11 & d_device
D3D device used to do the business.
Definition: RendererModules/Direct3D11/Texture.h:132
void setOriginalDataSize(const Sizef &sz)
Sets what the texture should consider as the original data size.
const Vector2f & getTexelScaling() const
Returns pixel to texel scale values that should be used for converting pixel values to texture co-ord...
virtual ~Direct3D11Texture()
Destructor.
String class used within the GUI system.
Definition: String.h:64
Abstract base class specifying the required interface for Texture objects.
Definition: Texture.h:54
PixelFormat
Enumerated type containing the supported pixel formats that can be passed to loadFromMemory.
Definition: Texture.h:62
Main namespace for Crazy Eddie's GUI Library.
Definition: arch_overview.dox:1
Definition: RendererModules/Direct3D11/Renderer.h:72