Harlinn.Windows 0.1
Loading...
Searching...
No Matches
Harlinn::Windows::Graphics::Device6 Class Reference

Represents a resource domain whose objects and device contexts can be used together. This class performs all the same functions as the Device5 (ID2D1Device5) class, plus it enables the creation of ID2D1DeviceContext6 objects. More...

#include <HWGraphics.h>

Inheritance diagram for Harlinn::Windows::Graphics::Device6:
[legend]
Collaboration diagram for Harlinn::Windows::Graphics::Device6:
[legend]

Public Member Functions

void CreateDeviceContext (D2D1_DEVICE_CONTEXT_OPTIONS options, ID2D1DeviceContext6 **deviceContext6) const
 Creates a new device context with no initially assigned target.
 
DeviceContext6 CreateDeviceContext (D2D1_DEVICE_CONTEXT_OPTIONS options=D2D1_DEVICE_CONTEXT_OPTIONS_NONE) const
 
DeviceContext6 CreateDeviceContext6 (D2D1_DEVICE_CONTEXT_OPTIONS options=D2D1_DEVICE_CONTEXT_OPTIONS_NONE) const
 
- Public Member Functions inherited from Harlinn::Windows::Graphics::Device5
void CreateDeviceContext (D2D1_DEVICE_CONTEXT_OPTIONS options, ID2D1DeviceContext5 **deviceContext5) const
 Creates a new device context with no initially assigned target.
 
DeviceContext5 CreateDeviceContext (D2D1_DEVICE_CONTEXT_OPTIONS options=D2D1_DEVICE_CONTEXT_OPTIONS_NONE) const
 
DeviceContext5 CreateDeviceContext5 (D2D1_DEVICE_CONTEXT_OPTIONS options=D2D1_DEVICE_CONTEXT_OPTIONS_NONE) const
 
- Public Member Functions inherited from Harlinn::Windows::Graphics::Device4
void CreateDeviceContext (D2D1_DEVICE_CONTEXT_OPTIONS options, _COM_Outptr_ ID2D1DeviceContext4 **deviceContext4) const
 Creates a new device context with no initially assigned target.
 
DeviceContext4 CreateDeviceContext (D2D1_DEVICE_CONTEXT_OPTIONS options=D2D1_DEVICE_CONTEXT_OPTIONS_NONE) const
 
DeviceContext4 CreateDeviceContext4 (D2D1_DEVICE_CONTEXT_OPTIONS options=D2D1_DEVICE_CONTEXT_OPTIONS_NONE) const
 
void SetMaximumColorGlyphCacheMemory (UINT64 maximumInBytes) const
 Sets the maximum capacity of the color glyph cache. This cache is used to store color bitmap glyphs and SVG glyphs, enabling faster performance if the same glyphs are needed again. If the application still references a glyph using GetColorBitmapGlyphImage or GetSvgGlyphImage after it has been evicted, this glyph does not count toward the cache capacity.
 
UINT64 GetMaximumColorGlyphCacheMemory () const
 Gets the maximum capacity of the color glyph cache.
 
- Public Member Functions inherited from Harlinn::Windows::Graphics::Device3
void CreateDeviceContext (D2D1_DEVICE_CONTEXT_OPTIONS options, ID2D1DeviceContext3 **deviceContext3) const
 Creates a new ID2D1DeviceContext3 from this Direct2D device with no initially assigned target.
 
void CreateDeviceContext (ID2D1DeviceContext3 **deviceContext3) const
 
DeviceContext3 CreateDeviceContext (D2D1_DEVICE_CONTEXT_OPTIONS options=D2D1_DEVICE_CONTEXT_OPTIONS_NONE) const
 
DeviceContext3 CreateDeviceContext3 (D2D1_DEVICE_CONTEXT_OPTIONS options=D2D1_DEVICE_CONTEXT_OPTIONS_NONE) const
 
- Public Member Functions inherited from Harlinn::Windows::Graphics::Device2
void CreateDeviceContext (D2D1_DEVICE_CONTEXT_OPTIONS options, ID2D1DeviceContext2 **deviceContext2) const
 Creates a new ID2D1DeviceContext2 from a Direct2D device with no initially assigned target.
 
DeviceContext2 CreateDeviceContext (D2D1_DEVICE_CONTEXT_OPTIONS options=D2D1_DEVICE_CONTEXT_OPTIONS_NONE) const
 
DeviceContext2 CreateDeviceContext2 (D2D1_DEVICE_CONTEXT_OPTIONS options=D2D1_DEVICE_CONTEXT_OPTIONS_NONE) const
 
void FlushDeviceContexts (ID2D1Bitmap *bitmap) const
 Flush all device contexts that reference a given bitmap.
 
void FlushDeviceContexts (const Bitmap &bitmap) const
 
void GetDxgiDevice (IDXGIDevice **dxgiDevice) const
 Returns the DXGI device associated with this D2D device.
 
DXGI::Device GetDxgiDevice () const
 
- Public Member Functions inherited from Harlinn::Windows::Graphics::Device1
D2D1_RENDERING_PRIORITY GetRenderingPriority () const
 Retrieves the rendering priority currently set on the device.
 
void SetRenderingPriority (D2D1_RENDERING_PRIORITY renderingPriority) const
 Sets the rendering priority of the device.
 
void CreateDeviceContext (D2D1_DEVICE_CONTEXT_OPTIONS options, ID2D1DeviceContext1 **deviceContext1) const
 Creates a new device context with no initially assigned target.
 
DeviceContext1 CreateDeviceContext (D2D1_DEVICE_CONTEXT_OPTIONS options=D2D1_DEVICE_CONTEXT_OPTIONS_NONE) const
 
DeviceContext1 CreateDeviceContext1 (D2D1_DEVICE_CONTEXT_OPTIONS options=D2D1_DEVICE_CONTEXT_OPTIONS_NONE) const
 
- Public Member Functions inherited from Harlinn::Windows::Graphics::Device
void CreateDeviceContext (D2D1_DEVICE_CONTEXT_OPTIONS options, ID2D1DeviceContext **deviceContext) const
 Creates a new device context with no initially assigned target.
 
DeviceContext CreateDeviceContext (D2D1_DEVICE_CONTEXT_OPTIONS options=D2D1_DEVICE_CONTEXT_OPTIONS_NONE) const
 
DeviceContext CreateDeviceContext0 (D2D1_DEVICE_CONTEXT_OPTIONS options) const
 
void CreatePrintControl (IWICImagingFactory *wicFactory, IPrintDocumentPackageTarget *documentTarget, const D2D1_PRINT_CONTROL_PROPERTIES *printControlProperties, ID2D1PrintControl **printControl) const
 Creates an ID2D1PrintControl object that converts Direct2D primitives stored in ID2D1CommandList into a fixed page representation. The print sub-system then consumes the primitives.
 
void CreatePrintControl (IWICImagingFactory *wicFactory, IPrintDocumentPackageTarget *documentTarget, const D2D1_PRINT_CONTROL_PROPERTIES &printControlProperties, ID2D1PrintControl **printControl) const
 
HW_EXPORT void CreatePrintControl (const Imaging::ImagingFactory &wicFactory, const DocumentTarget::PrintDocumentPackageTarget &documentTarget, const D2D1_PRINT_CONTROL_PROPERTIES *printControlProperties, ID2D1PrintControl **printControl) const
 
PrintControl CreatePrintControl (IWICImagingFactory *wicFactory, IPrintDocumentPackageTarget *documentTarget, const D2D1_PRINT_CONTROL_PROPERTIES *printControlProperties=nullptr) const
 
HW_EXPORT PrintControl CreatePrintControl (const Imaging::ImagingFactory &wicFactory, const DocumentTarget::PrintDocumentPackageTarget &documentTarget, const D2D1_PRINT_CONTROL_PROPERTIES *printControlProperties=nullptr) const
 
void SetMaximumTextureMemory (UINT64 maximumTextureMemoryInBytes) const
 Sets the maximum amount of texture memory Direct2D accumulates before it purges the image caches and cached texture allocations.
 
UINT64 GetMaximumTextureMemory () const
 Gets the maximum amount of texture memory to maintain before evicting caches.
 
void ClearResources (UINT32 millisecondsSinceUse=0) const
 Clears all resources that are cached but not held in use by the application through an interface reference.
 
- Public Member Functions inherited from Harlinn::Windows::Graphics::Resource
template<typename T = Factory>
requires std::is_base_of_v< Factory, T>
T GetFactory ()
 
- Public Member Functions inherited from Harlinn::Common::Core::Unknown
constexpr Unknown () noexcept
 
 Unknown (IUnknown *unknown, bool addref=false) noexcept
 
 Unknown (REFIID iid, const Unknown &unknown, bool throwIfNoInterface=true)
 
 Unknown (const Unknown &other) noexcept
 
 Unknown (Unknown &&other) noexcept
 
 ~Unknown () noexcept
 
constexpr operator bool () const noexcept
 
Unknownoperator= (const Unknown &other) noexcept
 
Unknownoperator= (Unknown &&other) noexcept
 
void swap (Unknown &other) noexcept
 
void ResetPtr (IUnknown *other=nullptr, bool addRef=false) noexcept
 
Unknownoperator= (nullptr_t)
 
IUnknown * Detach ()
 
template<typename T >
requires std::is_base_of_v<Unknown, T >
T As () const
 
template<typename T >
requires std::is_base_of_v<Unknown, T>
bool Is () const noexcept
 
template<typename T >
requires std::is_base_of_v<IUnknown, T>
ComPtr< TAs () const
 
template<typename T >
requires std::is_base_of_v<IUnknown, T>
bool Is () const noexcept
 This function can be used to detect if an object supports a particular COM interface derived from IUnknown.
 
template<typename T = IUnknown>
TGetInterfacePointer () const noexcept
 
bool QueryInterface (REFIID riid, void **itf) const
 Queries a COM object for a pointer to one of its interface; identifying the interface by a reference to its interface identifier (IID). If the COM object implements the interface, then it returns a pointer to that interface after calling IUnknown::AddRef on it.
 
template<typename T >
requires std::is_base_of_v<IUnknown, T>
bool QueryInterface (T **itf) const
 
constexpr bool operator== (const Unknown &other) const noexcept
 
constexpr bool operator!= (const Unknown &other) const noexcept
 
constexpr bool operator== (const IUnknown *other) const noexcept
 
constexpr bool operator!= (const IUnknown *other) const noexcept
 

Additional Inherited Members

- Public Types inherited from Harlinn::Windows::Graphics::Device2
using Base = Device1
 
- Public Types inherited from Harlinn::Windows::Graphics::Device1
using Base = Device
 
- Public Types inherited from Harlinn::Windows::Graphics::Device
using Base = Resource
 
- Public Types inherited from Harlinn::Common::Core::Unknown
typedef IUnknown InterfaceType
 
- Static Public Member Functions inherited from Harlinn::Common::Core::Unknown
template<typename T >
requires std::is_base_of_v<Unknown, T>
static T CoCreateInstanceFromClassId (const CLSID &clsid, DWORD classContext=CLSCTX_INPROC_SERVER)
 
template<typename T >
requires std::is_base_of_v<Unknown, T>
static T CoCreateInstanceFromClassId (const wchar_t *clsid, DWORD classContext=CLSCTX_INPROC_SERVER)
 
template<typename T >
requires std::is_base_of_v<Unknown, T>
static T CoCreateInstanceFromClassId (const WideString &clsid, DWORD classContext=CLSCTX_INPROC_SERVER)
 
template<typename T >
requires std::is_base_of_v<Unknown, T>
static T CoCreateInstanceFromProgId (const wchar_t *progId, DWORD classContext=CLSCTX_INPROC_SERVER)
 
template<typename T >
requires std::is_base_of_v<Unknown, T>
static T CoCreateInstanceFromProgId (const WideString &progId, DWORD classContext=CLSCTX_INPROC_SERVER)
 
template<typename T >
requires std::is_base_of_v<Unknown, T>
static T CoCreateInstanceFromDll (const ModuleHandle &dll, const CLSID &clsid)
 
- Protected Attributes inherited from Harlinn::Common::Core::Unknown
IUnknown * unknown_
 

Detailed Description

Represents a resource domain whose objects and device contexts can be used together. This class performs all the same functions as the Device5 (ID2D1Device5) class, plus it enables the creation of ID2D1DeviceContext6 objects.

Member Function Documentation

◆ CreateDeviceContext() [1/2]

void Harlinn::Windows::Graphics::Device6::CreateDeviceContext ( D2D1_DEVICE_CONTEXT_OPTIONS options,
ID2D1DeviceContext6 ** deviceContext6 ) const
inline

Creates a new device context with no initially assigned target.

Parameters
optionsOptions for creating the device context. The default is D2D1_DEVICE_CONTEXT_OPTIONS_NONE
deviceContext6The created device context.

◆ CreateDeviceContext() [2/2]

DeviceContext6 Harlinn::Windows::Graphics::Device6::CreateDeviceContext ( D2D1_DEVICE_CONTEXT_OPTIONS options = D2D1_DEVICE_CONTEXT_OPTIONS_NONE) const
inline

◆ CreateDeviceContext6()

DeviceContext6 Harlinn::Windows::Graphics::Device6::CreateDeviceContext6 ( D2D1_DEVICE_CONTEXT_OPTIONS options = D2D1_DEVICE_CONTEXT_OPTIONS_NONE) const
inline

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