blob: b8f76dec396ee7ee8893422226621d2000c8c038 [file] [log] [blame]
Cooper Partin88d3b8c2014-10-08 10:41:56 -07001//
2// Copyright (c) 2014 The ANGLE Project Authors. All rights reserved.
3// Use of this source code is governed by a BSD-style license that can be
4// found in the LICENSE file.
5//
6// angle_windowsstore.h:
7
8#ifndef ANGLE_WINDOWSSTORE_H_
9#define ANGLE_WINDOWSSTORE_H_
10
11// The following properties can be set on the CoreApplication to support additional
12// ANGLE configuration options.
13//
14// The Visual Studio sample templates provided with this version of ANGLE have examples
15// of how to set these property values.
16
17//
18// Property: EGLNativeWindowTypeProperty
19// Type: IInspectable
20// Description: Set this property to specify the window type to use for creating a surface.
21// If this property is missing, surface creation will fail.
22//
23const wchar_t EGLNativeWindowTypeProperty[] = L"EGLNativeWindowTypeProperty";
24
25//
26// Property: EGLRenderSurfaceSizeProperty
27// Type: Size
28// Description: Set this property to specify a preferred size in pixels of the render surface.
29// The render surface size width and height must be greater than 0.
30// If this property is set, then the render surface size is fixed.
Austin Kinrossda056462015-06-16 17:00:11 -070031// The render surface will then be scaled to the window dimensions.
Cooper Partin88d3b8c2014-10-08 10:41:56 -070032// If this property is missing, a default behavior will be provided.
33// The default behavior uses the window size if a CoreWindow is specified or
34// the size of the SwapChainPanel control if one is specified.
35//
36const wchar_t EGLRenderSurfaceSizeProperty[] = L"EGLRenderSurfaceSizeProperty";
37
Austin Kinrossda056462015-06-16 17:00:11 -070038//
39// Property: EGLRenderResolutionScaleProperty
40// Type: Single
41// Description: Use this to specify a preferred scale for the render surface compared to the window.
42// For example, if the window is 800x480, and:
43// - scale is set to 0.5f then the surface will be 400x240
44// - scale is set to 1.2f then the surface will be 960x576
45// If the window resizes or rotates then the surface will resize accordingly.
46// EGLRenderResolutionScaleProperty and EGLRenderSurfaceSizeProperty cannot both be set.
47// The scale factor should be > 0.0f.
48//
49const wchar_t EGLRenderResolutionScaleProperty[] = L"EGLRenderResolutionScaleProperty";
50
Cooper Partin88d3b8c2014-10-08 10:41:56 -070051#endif // ANGLE_WINDOWSSTORE_H_