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"
36 struct ID3D11DeviceContext;
37 struct ID3D11Texture2D;
38 struct ID3D11ShaderResourceView;
41 # pragma warning(push)
42 # pragma warning(disable : 4251)
57 void setDirect3DTexture(ID3D11Texture2D* tex);
66 ID3D11Texture2D* getDirect3DTexture()
const;
75 ID3D11ShaderResourceView* getDirect3DShaderResourceView()
const;
84 void setOriginalDataSize(
const Sizef& sz);
87 const String& getName()
const;
88 const Sizef& getSize()
const;
89 const Sizef& getOriginalDataSize()
const;
90 const Vector2f& getTexelScaling()
const;
91 void loadFromFile(
const String& filename,
const String& resourceGroup);
92 void loadFromMemory(
const void* buffer,
const Sizef& buffer_size,
94 void blitFromMemory(
const void* sourceData,
const Rectf& area);
95 void blitToMemory(
void* targetData);
96 bool isPixelFormatSupported(
const PixelFormat fmt)
const;
114 const String& resourceGroup);
123 void cleanupDirect3D11Texture();
125 void updateCachedScaleValues();
127 void updateTextureSize();
129 void initialiseShaderResourceView();
150 #if defined(_MSC_VER)
151 # pragma warning(pop)
154 #endif // end of guard _CEGUIDirect3D11Texture_h_
void destroyTexture(Texture &texture)
Destroy a Texture object that was previously created by calling the createTexture functions...
PixelFormat
Enumerated type containing the supported pixel formats that can be passed to loadFromMemory.
Definition: Texture.h:61
Main namespace for Crazy Eddie's GUI Library.
Definition: arch_overview.dox:1
Vector2f d_texelScaling
cached pixel to texel mapping scale values.
Definition: RendererModules/Direct3D11/Texture.h:142
IDevice11 & d_device
D3D device used to do the business.
Definition: RendererModules/Direct3D11/Texture.h:132
Texture & createTexture(const String &name)
Create a 'null' Texture object.
Sizef d_size
Size of the texture.
Definition: RendererModules/Direct3D11/Texture.h:138
Definition: RendererModules/Direct3D11/Renderer.h:66
ID3D11Texture2D * d_texture
The D3D 10 texture we're wrapping.
Definition: RendererModules/Direct3D11/Texture.h:134
Abstract base class specifying the required interface for Texture objects.
Definition: Texture.h:52
Sizef d_dataSize
original pixel of size data loaded into texture
Definition: RendererModules/Direct3D11/Texture.h:140
const String d_name
The name we were created with.
Definition: RendererModules/Direct3D11/Texture.h:144
ID3D11ShaderResourceView * d_resourceView
Shader resource view for the texture.
Definition: RendererModules/Direct3D11/Texture.h:136
Texture implementation for the Direct3D11Renderer.
Definition: RendererModules/Direct3D11/Texture.h:49
String class used within the GUI system.
Definition: String.h:62