aboutsummaryrefslogtreecommitdiff
path: root/include/cru/win/graph/win_native_factory.hpp
blob: f5ad033c9b0230ec7ee9bde72483819dae172ff7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#pragma once
#include "../win_pre_config.hpp"

#include "cru/common/base.hpp"

namespace cru::win::graph {
// Interface provides access to root d2d resources.
struct IWinNativeFactory : virtual Interface {
  virtual ID2D1Factory1* GetD2D1Factory() const = 0;
  virtual ID2D1DeviceContext* GetD2D1DeviceContext() const = 0;
  virtual ID3D11Device* GetD3D11Device() const = 0;
  virtual IDXGIFactory2* GetDxgiFactory() const = 0;
  virtual IDWriteFactory* GetDWriteFactory() const = 0;
  virtual IDWriteFontCollection* GetSystemFontCollection() const = 0;
};
}