1 /*
2  * This file is auto-generated.  DO NOT MODIFY.
3  * Using: out/host/linux-x86/bin/aidl --lang=ndk -Weverything -Wno-missing-permission-annotation -t --min_sdk_version 29 -pout/soong/.intermediates/hardware/interfaces/graphics/common/aidl/android.hardware.graphics.common_interface/6/preprocessed.aidl --ninja -d out/soong/.intermediates/frameworks/av/media/module/aidlpersistentsurface/graphicbuffersource-aidl-ndk-source/gen/staging/android/media/AidlColorAspects.cpp.d -h out/soong/.intermediates/frameworks/av/media/module/aidlpersistentsurface/graphicbuffersource-aidl-ndk-source/gen/include/staging -o out/soong/.intermediates/frameworks/av/media/module/aidlpersistentsurface/graphicbuffersource-aidl-ndk-source/gen/staging -Iframeworks/native/aidl/gui -Iframeworks/base/core/java -Nframeworks/av/media/module/aidlpersistentsurface/aidl frameworks/av/media/module/aidlpersistentsurface/aidl/android/media/AidlColorAspects.aidl
4  *
5  * DO NOT CHECK THIS FILE INTO A CODE TREE (e.g. git, etc..).
6  * ALWAYS GENERATE THIS FILE FROM UPDATED AIDL COMPILER
7  * AS A BUILD INTERMEDIATE ONLY. THIS IS NOT SOURCE CODE.
8  */
9 #pragma once
10 
11 #include <array>
12 #include <cstdint>
13 #include <memory>
14 #include <optional>
15 #include <string>
16 #include <vector>
17 #include <android/binder_enums.h>
18 #include <android/binder_interface_utils.h>
19 #include <android/binder_parcelable_utils.h>
20 #include <android/binder_to_string.h>
21 #include <aidl/android/media/AidlColorAspects.h>
22 #ifdef BINDER_STABILITY_SUPPORT
23 #include <android/binder_stability.h>
24 #endif  // BINDER_STABILITY_SUPPORT
25 
26 namespace aidl {
27 namespace android {
28 namespace media {
29 class AidlColorAspects {
30 public:
31   typedef std::false_type fixed_size;
32   static const char* descriptor;
33 
34   enum class Range : int32_t {
35     UNSPECIFIED = 0,
36     FULL = 1,
37     LIMITED = 2,
38     OTHER = 255,
39   };
40 
41   enum class Primaries : int32_t {
42     UNSPECIFIED = 0,
43     BT709_5 = 1,
44     BT470_6M = 2,
45     BT601_6_625 = 3,
46     BT601_6_525 = 4,
47     GENERIC_FILM = 5,
48     BT2020 = 6,
49     OTHER = 255,
50   };
51 
52   enum class Transfer : int32_t {
53     UNSPECIFIED = 0,
54     LINEAR = 1,
55     SRGB = 2,
56     SMPTE170M = 3,
57     GAMMA22 = 4,
58     GAMMA28 = 5,
59     ST2084 = 6,
60     HLG = 7,
61     SMPTE240M = 64,
62     XVYCC = 65,
63     BT1361 = 66,
64     ST428 = 67,
65     OTHER = 255,
66   };
67 
68   enum class MatrixCoeffs : int32_t {
69     UNSPECIFIED = 0,
70     BT709_5 = 1,
71     BT470_6M = 2,
72     BT601_6 = 3,
73     SMPTE240M = 4,
74     BT2020 = 5,
75     BT2020CONSTANT = 6,
76     OTHER = 255,
77   };
78 
79   ::aidl::android::media::AidlColorAspects::Range range = ::aidl::android::media::AidlColorAspects::Range(0);
80   ::aidl::android::media::AidlColorAspects::Primaries primaries = ::aidl::android::media::AidlColorAspects::Primaries(0);
81   ::aidl::android::media::AidlColorAspects::Transfer transfer = ::aidl::android::media::AidlColorAspects::Transfer(0);
82   ::aidl::android::media::AidlColorAspects::MatrixCoeffs matrixCoeffs = ::aidl::android::media::AidlColorAspects::MatrixCoeffs(0);
83 
84   binder_status_t readFromParcel(const AParcel* parcel);
85   binder_status_t writeToParcel(AParcel* parcel) const;
86 
87   inline bool operator==(const AidlColorAspects& _rhs) const {
88     return std::tie(range, primaries, transfer, matrixCoeffs) == std::tie(_rhs.range, _rhs.primaries, _rhs.transfer, _rhs.matrixCoeffs);
89   }
90   inline bool operator<(const AidlColorAspects& _rhs) const {
91     return std::tie(range, primaries, transfer, matrixCoeffs) < std::tie(_rhs.range, _rhs.primaries, _rhs.transfer, _rhs.matrixCoeffs);
92   }
93   inline bool operator!=(const AidlColorAspects& _rhs) const {
94     return !(*this == _rhs);
95   }
96   inline bool operator>(const AidlColorAspects& _rhs) const {
97     return _rhs < *this;
98   }
99   inline bool operator>=(const AidlColorAspects& _rhs) const {
100     return !(*this < _rhs);
101   }
102   inline bool operator<=(const AidlColorAspects& _rhs) const {
103     return !(_rhs < *this);
104   }
105 
106   static const ::ndk::parcelable_stability_t _aidl_stability = ::ndk::STABILITY_LOCAL;
toString()107   inline std::string toString() const {
108     std::ostringstream _aidl_os;
109     _aidl_os << "AidlColorAspects{";
110     _aidl_os << "range: " << ::android::internal::ToString(range);
111     _aidl_os << ", primaries: " << ::android::internal::ToString(primaries);
112     _aidl_os << ", transfer: " << ::android::internal::ToString(transfer);
113     _aidl_os << ", matrixCoeffs: " << ::android::internal::ToString(matrixCoeffs);
114     _aidl_os << "}";
115     return _aidl_os.str();
116   }
117 };
118 }  // namespace media
119 }  // namespace android
120 }  // namespace aidl
121 namespace aidl {
122 namespace android {
123 namespace media {
toString(AidlColorAspects::Range val)124 [[nodiscard]] static inline std::string toString(AidlColorAspects::Range val) {
125   switch(val) {
126   case AidlColorAspects::Range::UNSPECIFIED:
127     return "UNSPECIFIED";
128   case AidlColorAspects::Range::FULL:
129     return "FULL";
130   case AidlColorAspects::Range::LIMITED:
131     return "LIMITED";
132   case AidlColorAspects::Range::OTHER:
133     return "OTHER";
134   default:
135     return std::to_string(static_cast<int32_t>(val));
136   }
137 }
138 }  // namespace media
139 }  // namespace android
140 }  // namespace aidl
141 namespace ndk {
142 namespace internal {
143 #pragma clang diagnostic push
144 #pragma clang diagnostic ignored "-Wc++17-extensions"
145 template <>
146 constexpr inline std::array<aidl::android::media::AidlColorAspects::Range, 4> enum_values<aidl::android::media::AidlColorAspects::Range> = {
147   aidl::android::media::AidlColorAspects::Range::UNSPECIFIED,
148   aidl::android::media::AidlColorAspects::Range::FULL,
149   aidl::android::media::AidlColorAspects::Range::LIMITED,
150   aidl::android::media::AidlColorAspects::Range::OTHER,
151 };
152 #pragma clang diagnostic pop
153 }  // namespace internal
154 }  // namespace ndk
155 namespace aidl {
156 namespace android {
157 namespace media {
toString(AidlColorAspects::Primaries val)158 [[nodiscard]] static inline std::string toString(AidlColorAspects::Primaries val) {
159   switch(val) {
160   case AidlColorAspects::Primaries::UNSPECIFIED:
161     return "UNSPECIFIED";
162   case AidlColorAspects::Primaries::BT709_5:
163     return "BT709_5";
164   case AidlColorAspects::Primaries::BT470_6M:
165     return "BT470_6M";
166   case AidlColorAspects::Primaries::BT601_6_625:
167     return "BT601_6_625";
168   case AidlColorAspects::Primaries::BT601_6_525:
169     return "BT601_6_525";
170   case AidlColorAspects::Primaries::GENERIC_FILM:
171     return "GENERIC_FILM";
172   case AidlColorAspects::Primaries::BT2020:
173     return "BT2020";
174   case AidlColorAspects::Primaries::OTHER:
175     return "OTHER";
176   default:
177     return std::to_string(static_cast<int32_t>(val));
178   }
179 }
180 }  // namespace media
181 }  // namespace android
182 }  // namespace aidl
183 namespace ndk {
184 namespace internal {
185 #pragma clang diagnostic push
186 #pragma clang diagnostic ignored "-Wc++17-extensions"
187 template <>
188 constexpr inline std::array<aidl::android::media::AidlColorAspects::Primaries, 8> enum_values<aidl::android::media::AidlColorAspects::Primaries> = {
189   aidl::android::media::AidlColorAspects::Primaries::UNSPECIFIED,
190   aidl::android::media::AidlColorAspects::Primaries::BT709_5,
191   aidl::android::media::AidlColorAspects::Primaries::BT470_6M,
192   aidl::android::media::AidlColorAspects::Primaries::BT601_6_625,
193   aidl::android::media::AidlColorAspects::Primaries::BT601_6_525,
194   aidl::android::media::AidlColorAspects::Primaries::GENERIC_FILM,
195   aidl::android::media::AidlColorAspects::Primaries::BT2020,
196   aidl::android::media::AidlColorAspects::Primaries::OTHER,
197 };
198 #pragma clang diagnostic pop
199 }  // namespace internal
200 }  // namespace ndk
201 namespace aidl {
202 namespace android {
203 namespace media {
toString(AidlColorAspects::Transfer val)204 [[nodiscard]] static inline std::string toString(AidlColorAspects::Transfer val) {
205   switch(val) {
206   case AidlColorAspects::Transfer::UNSPECIFIED:
207     return "UNSPECIFIED";
208   case AidlColorAspects::Transfer::LINEAR:
209     return "LINEAR";
210   case AidlColorAspects::Transfer::SRGB:
211     return "SRGB";
212   case AidlColorAspects::Transfer::SMPTE170M:
213     return "SMPTE170M";
214   case AidlColorAspects::Transfer::GAMMA22:
215     return "GAMMA22";
216   case AidlColorAspects::Transfer::GAMMA28:
217     return "GAMMA28";
218   case AidlColorAspects::Transfer::ST2084:
219     return "ST2084";
220   case AidlColorAspects::Transfer::HLG:
221     return "HLG";
222   case AidlColorAspects::Transfer::SMPTE240M:
223     return "SMPTE240M";
224   case AidlColorAspects::Transfer::XVYCC:
225     return "XVYCC";
226   case AidlColorAspects::Transfer::BT1361:
227     return "BT1361";
228   case AidlColorAspects::Transfer::ST428:
229     return "ST428";
230   case AidlColorAspects::Transfer::OTHER:
231     return "OTHER";
232   default:
233     return std::to_string(static_cast<int32_t>(val));
234   }
235 }
236 }  // namespace media
237 }  // namespace android
238 }  // namespace aidl
239 namespace ndk {
240 namespace internal {
241 #pragma clang diagnostic push
242 #pragma clang diagnostic ignored "-Wc++17-extensions"
243 template <>
244 constexpr inline std::array<aidl::android::media::AidlColorAspects::Transfer, 13> enum_values<aidl::android::media::AidlColorAspects::Transfer> = {
245   aidl::android::media::AidlColorAspects::Transfer::UNSPECIFIED,
246   aidl::android::media::AidlColorAspects::Transfer::LINEAR,
247   aidl::android::media::AidlColorAspects::Transfer::SRGB,
248   aidl::android::media::AidlColorAspects::Transfer::SMPTE170M,
249   aidl::android::media::AidlColorAspects::Transfer::GAMMA22,
250   aidl::android::media::AidlColorAspects::Transfer::GAMMA28,
251   aidl::android::media::AidlColorAspects::Transfer::ST2084,
252   aidl::android::media::AidlColorAspects::Transfer::HLG,
253   aidl::android::media::AidlColorAspects::Transfer::SMPTE240M,
254   aidl::android::media::AidlColorAspects::Transfer::XVYCC,
255   aidl::android::media::AidlColorAspects::Transfer::BT1361,
256   aidl::android::media::AidlColorAspects::Transfer::ST428,
257   aidl::android::media::AidlColorAspects::Transfer::OTHER,
258 };
259 #pragma clang diagnostic pop
260 }  // namespace internal
261 }  // namespace ndk
262 namespace aidl {
263 namespace android {
264 namespace media {
toString(AidlColorAspects::MatrixCoeffs val)265 [[nodiscard]] static inline std::string toString(AidlColorAspects::MatrixCoeffs val) {
266   switch(val) {
267   case AidlColorAspects::MatrixCoeffs::UNSPECIFIED:
268     return "UNSPECIFIED";
269   case AidlColorAspects::MatrixCoeffs::BT709_5:
270     return "BT709_5";
271   case AidlColorAspects::MatrixCoeffs::BT470_6M:
272     return "BT470_6M";
273   case AidlColorAspects::MatrixCoeffs::BT601_6:
274     return "BT601_6";
275   case AidlColorAspects::MatrixCoeffs::SMPTE240M:
276     return "SMPTE240M";
277   case AidlColorAspects::MatrixCoeffs::BT2020:
278     return "BT2020";
279   case AidlColorAspects::MatrixCoeffs::BT2020CONSTANT:
280     return "BT2020CONSTANT";
281   case AidlColorAspects::MatrixCoeffs::OTHER:
282     return "OTHER";
283   default:
284     return std::to_string(static_cast<int32_t>(val));
285   }
286 }
287 }  // namespace media
288 }  // namespace android
289 }  // namespace aidl
290 namespace ndk {
291 namespace internal {
292 #pragma clang diagnostic push
293 #pragma clang diagnostic ignored "-Wc++17-extensions"
294 template <>
295 constexpr inline std::array<aidl::android::media::AidlColorAspects::MatrixCoeffs, 8> enum_values<aidl::android::media::AidlColorAspects::MatrixCoeffs> = {
296   aidl::android::media::AidlColorAspects::MatrixCoeffs::UNSPECIFIED,
297   aidl::android::media::AidlColorAspects::MatrixCoeffs::BT709_5,
298   aidl::android::media::AidlColorAspects::MatrixCoeffs::BT470_6M,
299   aidl::android::media::AidlColorAspects::MatrixCoeffs::BT601_6,
300   aidl::android::media::AidlColorAspects::MatrixCoeffs::SMPTE240M,
301   aidl::android::media::AidlColorAspects::MatrixCoeffs::BT2020,
302   aidl::android::media::AidlColorAspects::MatrixCoeffs::BT2020CONSTANT,
303   aidl::android::media::AidlColorAspects::MatrixCoeffs::OTHER,
304 };
305 #pragma clang diagnostic pop
306 }  // namespace internal
307 }  // namespace ndk
308