1 | // GENERATED FILE - DO NOT EDIT. |
2 | // Generated by gen_packed_gl_enums.py using data from packed_egl_enums.json. |
3 | // |
4 | // Copyright 2019 The ANGLE Project Authors. All rights reserved. |
5 | // Use of this source code is governed by a BSD-style license that can be |
6 | // found in the LICENSE file. |
7 | // |
8 | // PackedEGLEnums_autogen.h: |
9 | // Declares ANGLE-specific enums classes for EGLenums and functions operating |
10 | // on them. |
11 | |
12 | #ifndef COMMON_PACKEDEGLENUMS_AUTOGEN_H_ |
13 | #define COMMON_PACKEDEGLENUMS_AUTOGEN_H_ |
14 | |
15 | #include <EGL/egl.h> |
16 | #include <EGL/eglext.h> |
17 | #include <angle_gl.h> |
18 | |
19 | #include <cstdint> |
20 | |
21 | namespace egl |
22 | { |
23 | |
24 | template <typename Enum> |
25 | Enum FromEGLenum(EGLenum from); |
26 | |
27 | enum class CompositorTiming : uint8_t |
28 | { |
29 | CompositeDeadline = 0, |
30 | CompositInterval = 1, |
31 | CompositToPresentLatency = 2, |
32 | |
33 | InvalidEnum = 3, |
34 | EnumCount = 3, |
35 | }; |
36 | |
37 | template <> |
38 | CompositorTiming FromEGLenum<CompositorTiming>(EGLenum from); |
39 | EGLenum ToEGLenum(CompositorTiming from); |
40 | |
41 | enum class MessageType : uint8_t |
42 | { |
43 | Critical = 0, |
44 | Error = 1, |
45 | Warn = 2, |
46 | Info = 3, |
47 | |
48 | InvalidEnum = 4, |
49 | EnumCount = 4, |
50 | }; |
51 | |
52 | template <> |
53 | MessageType FromEGLenum<MessageType>(EGLenum from); |
54 | EGLenum ToEGLenum(MessageType from); |
55 | |
56 | enum class ObjectType : uint8_t |
57 | { |
58 | Thread = 0, |
59 | Display = 1, |
60 | Context = 2, |
61 | Surface = 3, |
62 | Image = 4, |
63 | Sync = 5, |
64 | Stream = 6, |
65 | |
66 | InvalidEnum = 7, |
67 | EnumCount = 7, |
68 | }; |
69 | |
70 | template <> |
71 | ObjectType FromEGLenum<ObjectType>(EGLenum from); |
72 | EGLenum ToEGLenum(ObjectType from); |
73 | |
74 | enum class TextureFormat : uint8_t |
75 | { |
76 | NoTexture = 0, |
77 | RGB = 1, |
78 | RGBA = 2, |
79 | |
80 | InvalidEnum = 3, |
81 | EnumCount = 3, |
82 | }; |
83 | |
84 | template <> |
85 | TextureFormat FromEGLenum<TextureFormat>(EGLenum from); |
86 | EGLenum ToEGLenum(TextureFormat from); |
87 | |
88 | enum class Timestamp : uint8_t |
89 | { |
90 | RequestedPresentTime = 0, |
91 | RenderingCompleteTime = 1, |
92 | CompositionLatchTime = 2, |
93 | FirstCompositionStartTime = 3, |
94 | LastCompositionStartTime = 4, |
95 | FirstCompositionGPUFinishedTime = 5, |
96 | DisplayPresentTime = 6, |
97 | DequeueReadyTime = 7, |
98 | ReadsDoneTime = 8, |
99 | |
100 | InvalidEnum = 9, |
101 | EnumCount = 9, |
102 | }; |
103 | |
104 | template <> |
105 | Timestamp FromEGLenum<Timestamp>(EGLenum from); |
106 | EGLenum ToEGLenum(Timestamp from); |
107 | |
108 | } // namespace egl |
109 | |
110 | #endif // COMMON_PACKEDEGLENUMS_AUTOGEN_H_ |
111 | |