NAVTOR SDK  v.3.0
Software Development Kit for fast and efficient development of ECDIS, ECS and generic marine applications
render_target_direct2d_interface.h
Go to the documentation of this file.
1 
11 #ifndef SDK_RENDER_TARGET_DIRECT2D_INTERFACE_H_
12 #define SDK_RENDER_TARGET_DIRECT2D_INTERFACE_H_
13 
14 #include <base/inc/platform.h>
15 #include <base/inc/base_types.h>
17 #include <base/inc/sdk_ref_ptr.h>
18 #include "../os_specific_types.h"
19 #include "../2d_render_target_interface.h"
20 
21 // This functionality is available only for Windows
22 #if defined(SDK_OS_WIN) && defined(SDK_GRAPHICS_USE_DIRECTX_10_1)
23 
24 namespace sdk {
25 namespace gfx {
26 namespace d2d {
27 
31 class I2DRenderTargetDC : public sdk::ISDKComponent
32 {
33  public:
35  virtual SDKResult SDK_CALLTYPE SetUpDC(const HDC& dc, const RECT& bound_rect) throw() = 0;
36 
38  SDK_IMPLEMENT_IID(I2DRenderTargetDC)
39  SDK_END_INTERFACE(I2DRenderTargetDC)
40 };
41 SDK_DECLARE_IID(I2DRenderTargetDC)
42 
43 class I2DRenderTargetHWND : public sdk::ISDKComponent
47 {
48 public:
50  virtual SDKResult SDK_CALLTYPE GetHWND(HWND& hwnd) throw() = 0;
52  virtual SDKResult SDK_CALLTYPE CheckWindowState(D2D1_WINDOW_STATE& state) throw() = 0;
54  virtual SDKResult SDK_CALLTYPE Resize(const D2D1_SIZE_U& size) throw() = 0;
55 
57  SDK_IMPLEMENT_IID(I2DRenderTargetHWND)
58  SDK_END_INTERFACE(I2DRenderTargetHWND)
59 };
60 SDK_DECLARE_IID(I2DRenderTargetHWND)
61 } // namespace d2d
62 } // namespace gfx
63 } // namespace sdk
64 
65 #endif // SDK_OS_WIN && SDK_GRAPHICS_USE_DIRECTX_10_1
66 #endif // SDK_RENDER_TARGET_DIRECT2D_INTERFACE_H_
base_types.h
SDK base types.
sdk_ref_ptr.h
Interfaces wrapper with reference count control.
SDKResult
SDKInt32 SDKResult
Type of all error or return codes which SDK functions can end with.
Definition: sdk_results.h:17
sdk_component_interface.h
Common base SDK interfaces.
platform.h
Describes the platform constants.