1 /*
2  * This file is auto-generated.  DO NOT MODIFY.
3  * Using: out/host/linux-x86/bin/aidl --lang=ndk --structured --version 1 --hash d4c3897135ef9475dee2021ac39a41ae79c7690e -t --stability vintf --min_sdk_version 30 -pout/soong/.intermediates/hardware/interfaces/common/aidl/android.hardware.common_interface/2/preprocessed.aidl -pout/soong/.intermediates/hardware/interfaces/media/bufferpool/aidl/android.hardware.media.bufferpool2_interface/2/preprocessed.aidl --ninja -d out/soong/.intermediates/hardware/interfaces/media/c2/aidl/android.hardware.media.c2-V1-ndk-source/gen/staging/android/hardware/media/c2/IConfigurable.cpp.d -h out/soong/.intermediates/hardware/interfaces/media/c2/aidl/android.hardware.media.c2-V1-ndk-source/gen/include/staging -o out/soong/.intermediates/hardware/interfaces/media/c2/aidl/android.hardware.media.c2-V1-ndk-source/gen/staging -Iframeworks/native/aidl/gui -Iframeworks/base/core/java -Nhardware/interfaces/media/c2/aidl/aidl_api/android.hardware.media.c2/1 hardware/interfaces/media/c2/aidl/aidl_api/android.hardware.media.c2/1/android/hardware/media/c2/IConfigurable.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 #include "aidl/android/hardware/media/c2/IConfigurable.h"
10 
11 #include <android/binder_parcel_utils.h>
12 #include <aidl/android/hardware/media/bufferpool2/BnAccessor.h>
13 #include <aidl/android/hardware/media/bufferpool2/BnClientManager.h>
14 #include <aidl/android/hardware/media/bufferpool2/BnConnection.h>
15 #include <aidl/android/hardware/media/bufferpool2/BnObserver.h>
16 #include <aidl/android/hardware/media/bufferpool2/BpAccessor.h>
17 #include <aidl/android/hardware/media/bufferpool2/BpClientManager.h>
18 #include <aidl/android/hardware/media/bufferpool2/BpConnection.h>
19 #include <aidl/android/hardware/media/bufferpool2/BpObserver.h>
20 #include <aidl/android/hardware/media/bufferpool2/IAccessor.h>
21 #include <aidl/android/hardware/media/bufferpool2/IClientManager.h>
22 #include <aidl/android/hardware/media/bufferpool2/IConnection.h>
23 #include <aidl/android/hardware/media/bufferpool2/IObserver.h>
24 #include <aidl/android/hardware/media/c2/BnConfigurable.h>
25 #include <aidl/android/hardware/media/c2/BpConfigurable.h>
26 
27 namespace aidl {
28 namespace android {
29 namespace hardware {
30 namespace media {
31 namespace c2 {
_aidl_android_hardware_media_c2_IConfigurable_onTransact(AIBinder * _aidl_binder,transaction_code_t _aidl_code,const AParcel * _aidl_in,AParcel * _aidl_out)32 static binder_status_t _aidl_android_hardware_media_c2_IConfigurable_onTransact(AIBinder* _aidl_binder, transaction_code_t _aidl_code, const AParcel* _aidl_in, AParcel* _aidl_out) {
33   (void)_aidl_in;
34   (void)_aidl_out;
35   binder_status_t _aidl_ret_status = STATUS_UNKNOWN_TRANSACTION;
36   std::shared_ptr<BnConfigurable> _aidl_impl = std::static_pointer_cast<BnConfigurable>(::ndk::ICInterface::asInterface(_aidl_binder));
37   switch (_aidl_code) {
38     case (FIRST_CALL_TRANSACTION + 0 /*config*/): {
39       ::aidl::android::hardware::media::c2::Params in_inParams;
40       bool in_mayBlock;
41       ::aidl::android::hardware::media::c2::IConfigurable::ConfigResult _aidl_return;
42 
43       _aidl_ret_status = ::ndk::AParcel_readData(_aidl_in, &in_inParams);
44       if (_aidl_ret_status != STATUS_OK) break;
45 
46       _aidl_ret_status = ::ndk::AParcel_readData(_aidl_in, &in_mayBlock);
47       if (_aidl_ret_status != STATUS_OK) break;
48 
49       ::ndk::ScopedAStatus _aidl_status = _aidl_impl->config(in_inParams, in_mayBlock, &_aidl_return);
50       _aidl_ret_status = AParcel_writeStatusHeader(_aidl_out, _aidl_status.get());
51       if (_aidl_ret_status != STATUS_OK) break;
52 
53       if (!AStatus_isOk(_aidl_status.get())) break;
54 
55       _aidl_ret_status = ::ndk::AParcel_writeData(_aidl_out, _aidl_return);
56       if (_aidl_ret_status != STATUS_OK) break;
57 
58       break;
59     }
60     case (FIRST_CALL_TRANSACTION + 1 /*getId*/): {
61       int32_t _aidl_return;
62 
63       ::ndk::ScopedAStatus _aidl_status = _aidl_impl->getId(&_aidl_return);
64       _aidl_ret_status = AParcel_writeStatusHeader(_aidl_out, _aidl_status.get());
65       if (_aidl_ret_status != STATUS_OK) break;
66 
67       if (!AStatus_isOk(_aidl_status.get())) break;
68 
69       _aidl_ret_status = ::ndk::AParcel_writeData(_aidl_out, _aidl_return);
70       if (_aidl_ret_status != STATUS_OK) break;
71 
72       break;
73     }
74     case (FIRST_CALL_TRANSACTION + 2 /*getName*/): {
75       std::string _aidl_return;
76 
77       ::ndk::ScopedAStatus _aidl_status = _aidl_impl->getName(&_aidl_return);
78       _aidl_ret_status = AParcel_writeStatusHeader(_aidl_out, _aidl_status.get());
79       if (_aidl_ret_status != STATUS_OK) break;
80 
81       if (!AStatus_isOk(_aidl_status.get())) break;
82 
83       _aidl_ret_status = ::ndk::AParcel_writeData(_aidl_out, _aidl_return);
84       if (_aidl_ret_status != STATUS_OK) break;
85 
86       break;
87     }
88     case (FIRST_CALL_TRANSACTION + 3 /*query*/): {
89       std::vector<int32_t> in_indices;
90       bool in_mayBlock;
91       ::aidl::android::hardware::media::c2::IConfigurable::QueryResult _aidl_return;
92 
93       _aidl_ret_status = ::ndk::AParcel_readData(_aidl_in, &in_indices);
94       if (_aidl_ret_status != STATUS_OK) break;
95 
96       _aidl_ret_status = ::ndk::AParcel_readData(_aidl_in, &in_mayBlock);
97       if (_aidl_ret_status != STATUS_OK) break;
98 
99       ::ndk::ScopedAStatus _aidl_status = _aidl_impl->query(in_indices, in_mayBlock, &_aidl_return);
100       _aidl_ret_status = AParcel_writeStatusHeader(_aidl_out, _aidl_status.get());
101       if (_aidl_ret_status != STATUS_OK) break;
102 
103       if (!AStatus_isOk(_aidl_status.get())) break;
104 
105       _aidl_ret_status = ::ndk::AParcel_writeData(_aidl_out, _aidl_return);
106       if (_aidl_ret_status != STATUS_OK) break;
107 
108       break;
109     }
110     case (FIRST_CALL_TRANSACTION + 4 /*querySupportedParams*/): {
111       int32_t in_start;
112       int32_t in_count;
113       std::vector<::aidl::android::hardware::media::c2::ParamDescriptor> _aidl_return;
114 
115       _aidl_ret_status = ::ndk::AParcel_readData(_aidl_in, &in_start);
116       if (_aidl_ret_status != STATUS_OK) break;
117 
118       _aidl_ret_status = ::ndk::AParcel_readData(_aidl_in, &in_count);
119       if (_aidl_ret_status != STATUS_OK) break;
120 
121       ::ndk::ScopedAStatus _aidl_status = _aidl_impl->querySupportedParams(in_start, in_count, &_aidl_return);
122       _aidl_ret_status = AParcel_writeStatusHeader(_aidl_out, _aidl_status.get());
123       if (_aidl_ret_status != STATUS_OK) break;
124 
125       if (!AStatus_isOk(_aidl_status.get())) break;
126 
127       _aidl_ret_status = ::ndk::AParcel_writeData(_aidl_out, _aidl_return);
128       if (_aidl_ret_status != STATUS_OK) break;
129 
130       break;
131     }
132     case (FIRST_CALL_TRANSACTION + 5 /*querySupportedValues*/): {
133       std::vector<::aidl::android::hardware::media::c2::FieldSupportedValuesQuery> in_inFields;
134       bool in_mayBlock;
135       ::aidl::android::hardware::media::c2::IConfigurable::QuerySupportedValuesResult _aidl_return;
136 
137       _aidl_ret_status = ::ndk::AParcel_readData(_aidl_in, &in_inFields);
138       if (_aidl_ret_status != STATUS_OK) break;
139 
140       _aidl_ret_status = ::ndk::AParcel_readData(_aidl_in, &in_mayBlock);
141       if (_aidl_ret_status != STATUS_OK) break;
142 
143       ::ndk::ScopedAStatus _aidl_status = _aidl_impl->querySupportedValues(in_inFields, in_mayBlock, &_aidl_return);
144       _aidl_ret_status = AParcel_writeStatusHeader(_aidl_out, _aidl_status.get());
145       if (_aidl_ret_status != STATUS_OK) break;
146 
147       if (!AStatus_isOk(_aidl_status.get())) break;
148 
149       _aidl_ret_status = ::ndk::AParcel_writeData(_aidl_out, _aidl_return);
150       if (_aidl_ret_status != STATUS_OK) break;
151 
152       break;
153     }
154     case (FIRST_CALL_TRANSACTION + 16777214 /*getInterfaceVersion*/): {
155       int32_t _aidl_return;
156 
157       ::ndk::ScopedAStatus _aidl_status = _aidl_impl->getInterfaceVersion(&_aidl_return);
158       _aidl_ret_status = AParcel_writeStatusHeader(_aidl_out, _aidl_status.get());
159       if (_aidl_ret_status != STATUS_OK) break;
160 
161       if (!AStatus_isOk(_aidl_status.get())) break;
162 
163       _aidl_ret_status = ::ndk::AParcel_writeData(_aidl_out, _aidl_return);
164       if (_aidl_ret_status != STATUS_OK) break;
165 
166       break;
167     }
168     case (FIRST_CALL_TRANSACTION + 16777213 /*getInterfaceHash*/): {
169       std::string _aidl_return;
170 
171       ::ndk::ScopedAStatus _aidl_status = _aidl_impl->getInterfaceHash(&_aidl_return);
172       _aidl_ret_status = AParcel_writeStatusHeader(_aidl_out, _aidl_status.get());
173       if (_aidl_ret_status != STATUS_OK) break;
174 
175       if (!AStatus_isOk(_aidl_status.get())) break;
176 
177       _aidl_ret_status = ::ndk::AParcel_writeData(_aidl_out, _aidl_return);
178       if (_aidl_ret_status != STATUS_OK) break;
179 
180       break;
181     }
182   }
183   return _aidl_ret_status;
184 }
185 
186 static const char* _g_aidl_android_hardware_media_c2_IConfigurable_clazz_code_to_function[] = { "config","getId","getName","query","querySupportedParams","querySupportedValues",};
187 static AIBinder_Class* _g_aidl_android_hardware_media_c2_IConfigurable_clazz = ::ndk::ICInterface::defineClass(IConfigurable::descriptor, _aidl_android_hardware_media_c2_IConfigurable_onTransact, _g_aidl_android_hardware_media_c2_IConfigurable_clazz_code_to_function, 6);
188 
BpConfigurable(const::ndk::SpAIBinder & binder)189 BpConfigurable::BpConfigurable(const ::ndk::SpAIBinder& binder) : BpCInterface(binder) {}
~BpConfigurable()190 BpConfigurable::~BpConfigurable() {}
191 
config(const::aidl::android::hardware::media::c2::Params & in_inParams,bool in_mayBlock,::aidl::android::hardware::media::c2::IConfigurable::ConfigResult * _aidl_return)192 ::ndk::ScopedAStatus BpConfigurable::config(const ::aidl::android::hardware::media::c2::Params& in_inParams, bool in_mayBlock, ::aidl::android::hardware::media::c2::IConfigurable::ConfigResult* _aidl_return) {
193   binder_status_t _aidl_ret_status = STATUS_OK;
194   ::ndk::ScopedAStatus _aidl_status;
195   ::ndk::ScopedAParcel _aidl_in;
196   ::ndk::ScopedAParcel _aidl_out;
197 
198   _aidl_ret_status = AIBinder_prepareTransaction(asBinderReference().get(), _aidl_in.getR());
199   if (_aidl_ret_status != STATUS_OK) goto _aidl_error;
200 
201   _aidl_ret_status = ::ndk::AParcel_writeData(_aidl_in.get(), in_inParams);
202   if (_aidl_ret_status != STATUS_OK) goto _aidl_error;
203 
204   _aidl_ret_status = ::ndk::AParcel_writeData(_aidl_in.get(), in_mayBlock);
205   if (_aidl_ret_status != STATUS_OK) goto _aidl_error;
206 
207   _aidl_ret_status = AIBinder_transact(
208     asBinderReference().get(),
209     (FIRST_CALL_TRANSACTION + 0 /*config*/),
210     _aidl_in.getR(),
211     _aidl_out.getR(),
212     0
213     #ifdef BINDER_STABILITY_SUPPORT
214     | static_cast<int>(FLAG_PRIVATE_LOCAL)
215     #endif  // BINDER_STABILITY_SUPPORT
216     );
217   if (_aidl_ret_status == STATUS_UNKNOWN_TRANSACTION && IConfigurable::getDefaultImpl()) {
218     _aidl_status = IConfigurable::getDefaultImpl()->config(in_inParams, in_mayBlock, _aidl_return);
219     goto _aidl_status_return;
220   }
221   if (_aidl_ret_status != STATUS_OK) goto _aidl_error;
222 
223   _aidl_ret_status = AParcel_readStatusHeader(_aidl_out.get(), _aidl_status.getR());
224   if (_aidl_ret_status != STATUS_OK) goto _aidl_error;
225 
226   if (!AStatus_isOk(_aidl_status.get())) goto _aidl_status_return;
227   _aidl_ret_status = ::ndk::AParcel_readData(_aidl_out.get(), _aidl_return);
228   if (_aidl_ret_status != STATUS_OK) goto _aidl_error;
229 
230   _aidl_error:
231   _aidl_status.set(AStatus_fromStatus(_aidl_ret_status));
232   _aidl_status_return:
233   return _aidl_status;
234 }
getId(int32_t * _aidl_return)235 ::ndk::ScopedAStatus BpConfigurable::getId(int32_t* _aidl_return) {
236   binder_status_t _aidl_ret_status = STATUS_OK;
237   ::ndk::ScopedAStatus _aidl_status;
238   ::ndk::ScopedAParcel _aidl_in;
239   ::ndk::ScopedAParcel _aidl_out;
240 
241   _aidl_ret_status = AIBinder_prepareTransaction(asBinderReference().get(), _aidl_in.getR());
242   if (_aidl_ret_status != STATUS_OK) goto _aidl_error;
243 
244   _aidl_ret_status = AIBinder_transact(
245     asBinderReference().get(),
246     (FIRST_CALL_TRANSACTION + 1 /*getId*/),
247     _aidl_in.getR(),
248     _aidl_out.getR(),
249     0
250     #ifdef BINDER_STABILITY_SUPPORT
251     | static_cast<int>(FLAG_PRIVATE_LOCAL)
252     #endif  // BINDER_STABILITY_SUPPORT
253     );
254   if (_aidl_ret_status == STATUS_UNKNOWN_TRANSACTION && IConfigurable::getDefaultImpl()) {
255     _aidl_status = IConfigurable::getDefaultImpl()->getId(_aidl_return);
256     goto _aidl_status_return;
257   }
258   if (_aidl_ret_status != STATUS_OK) goto _aidl_error;
259 
260   _aidl_ret_status = AParcel_readStatusHeader(_aidl_out.get(), _aidl_status.getR());
261   if (_aidl_ret_status != STATUS_OK) goto _aidl_error;
262 
263   if (!AStatus_isOk(_aidl_status.get())) goto _aidl_status_return;
264   _aidl_ret_status = ::ndk::AParcel_readData(_aidl_out.get(), _aidl_return);
265   if (_aidl_ret_status != STATUS_OK) goto _aidl_error;
266 
267   _aidl_error:
268   _aidl_status.set(AStatus_fromStatus(_aidl_ret_status));
269   _aidl_status_return:
270   return _aidl_status;
271 }
getName(std::string * _aidl_return)272 ::ndk::ScopedAStatus BpConfigurable::getName(std::string* _aidl_return) {
273   binder_status_t _aidl_ret_status = STATUS_OK;
274   ::ndk::ScopedAStatus _aidl_status;
275   ::ndk::ScopedAParcel _aidl_in;
276   ::ndk::ScopedAParcel _aidl_out;
277 
278   _aidl_ret_status = AIBinder_prepareTransaction(asBinderReference().get(), _aidl_in.getR());
279   if (_aidl_ret_status != STATUS_OK) goto _aidl_error;
280 
281   _aidl_ret_status = AIBinder_transact(
282     asBinderReference().get(),
283     (FIRST_CALL_TRANSACTION + 2 /*getName*/),
284     _aidl_in.getR(),
285     _aidl_out.getR(),
286     0
287     #ifdef BINDER_STABILITY_SUPPORT
288     | static_cast<int>(FLAG_PRIVATE_LOCAL)
289     #endif  // BINDER_STABILITY_SUPPORT
290     );
291   if (_aidl_ret_status == STATUS_UNKNOWN_TRANSACTION && IConfigurable::getDefaultImpl()) {
292     _aidl_status = IConfigurable::getDefaultImpl()->getName(_aidl_return);
293     goto _aidl_status_return;
294   }
295   if (_aidl_ret_status != STATUS_OK) goto _aidl_error;
296 
297   _aidl_ret_status = AParcel_readStatusHeader(_aidl_out.get(), _aidl_status.getR());
298   if (_aidl_ret_status != STATUS_OK) goto _aidl_error;
299 
300   if (!AStatus_isOk(_aidl_status.get())) goto _aidl_status_return;
301   _aidl_ret_status = ::ndk::AParcel_readData(_aidl_out.get(), _aidl_return);
302   if (_aidl_ret_status != STATUS_OK) goto _aidl_error;
303 
304   _aidl_error:
305   _aidl_status.set(AStatus_fromStatus(_aidl_ret_status));
306   _aidl_status_return:
307   return _aidl_status;
308 }
query(const std::vector<int32_t> & in_indices,bool in_mayBlock,::aidl::android::hardware::media::c2::IConfigurable::QueryResult * _aidl_return)309 ::ndk::ScopedAStatus BpConfigurable::query(const std::vector<int32_t>& in_indices, bool in_mayBlock, ::aidl::android::hardware::media::c2::IConfigurable::QueryResult* _aidl_return) {
310   binder_status_t _aidl_ret_status = STATUS_OK;
311   ::ndk::ScopedAStatus _aidl_status;
312   ::ndk::ScopedAParcel _aidl_in;
313   ::ndk::ScopedAParcel _aidl_out;
314 
315   _aidl_ret_status = AIBinder_prepareTransaction(asBinderReference().get(), _aidl_in.getR());
316   if (_aidl_ret_status != STATUS_OK) goto _aidl_error;
317 
318   _aidl_ret_status = ::ndk::AParcel_writeData(_aidl_in.get(), in_indices);
319   if (_aidl_ret_status != STATUS_OK) goto _aidl_error;
320 
321   _aidl_ret_status = ::ndk::AParcel_writeData(_aidl_in.get(), in_mayBlock);
322   if (_aidl_ret_status != STATUS_OK) goto _aidl_error;
323 
324   _aidl_ret_status = AIBinder_transact(
325     asBinderReference().get(),
326     (FIRST_CALL_TRANSACTION + 3 /*query*/),
327     _aidl_in.getR(),
328     _aidl_out.getR(),
329     0
330     #ifdef BINDER_STABILITY_SUPPORT
331     | static_cast<int>(FLAG_PRIVATE_LOCAL)
332     #endif  // BINDER_STABILITY_SUPPORT
333     );
334   if (_aidl_ret_status == STATUS_UNKNOWN_TRANSACTION && IConfigurable::getDefaultImpl()) {
335     _aidl_status = IConfigurable::getDefaultImpl()->query(in_indices, in_mayBlock, _aidl_return);
336     goto _aidl_status_return;
337   }
338   if (_aidl_ret_status != STATUS_OK) goto _aidl_error;
339 
340   _aidl_ret_status = AParcel_readStatusHeader(_aidl_out.get(), _aidl_status.getR());
341   if (_aidl_ret_status != STATUS_OK) goto _aidl_error;
342 
343   if (!AStatus_isOk(_aidl_status.get())) goto _aidl_status_return;
344   _aidl_ret_status = ::ndk::AParcel_readData(_aidl_out.get(), _aidl_return);
345   if (_aidl_ret_status != STATUS_OK) goto _aidl_error;
346 
347   _aidl_error:
348   _aidl_status.set(AStatus_fromStatus(_aidl_ret_status));
349   _aidl_status_return:
350   return _aidl_status;
351 }
querySupportedParams(int32_t in_start,int32_t in_count,std::vector<::aidl::android::hardware::media::c2::ParamDescriptor> * _aidl_return)352 ::ndk::ScopedAStatus BpConfigurable::querySupportedParams(int32_t in_start, int32_t in_count, std::vector<::aidl::android::hardware::media::c2::ParamDescriptor>* _aidl_return) {
353   binder_status_t _aidl_ret_status = STATUS_OK;
354   ::ndk::ScopedAStatus _aidl_status;
355   ::ndk::ScopedAParcel _aidl_in;
356   ::ndk::ScopedAParcel _aidl_out;
357 
358   _aidl_ret_status = AIBinder_prepareTransaction(asBinderReference().get(), _aidl_in.getR());
359   if (_aidl_ret_status != STATUS_OK) goto _aidl_error;
360 
361   _aidl_ret_status = ::ndk::AParcel_writeData(_aidl_in.get(), in_start);
362   if (_aidl_ret_status != STATUS_OK) goto _aidl_error;
363 
364   _aidl_ret_status = ::ndk::AParcel_writeData(_aidl_in.get(), in_count);
365   if (_aidl_ret_status != STATUS_OK) goto _aidl_error;
366 
367   _aidl_ret_status = AIBinder_transact(
368     asBinderReference().get(),
369     (FIRST_CALL_TRANSACTION + 4 /*querySupportedParams*/),
370     _aidl_in.getR(),
371     _aidl_out.getR(),
372     0
373     #ifdef BINDER_STABILITY_SUPPORT
374     | static_cast<int>(FLAG_PRIVATE_LOCAL)
375     #endif  // BINDER_STABILITY_SUPPORT
376     );
377   if (_aidl_ret_status == STATUS_UNKNOWN_TRANSACTION && IConfigurable::getDefaultImpl()) {
378     _aidl_status = IConfigurable::getDefaultImpl()->querySupportedParams(in_start, in_count, _aidl_return);
379     goto _aidl_status_return;
380   }
381   if (_aidl_ret_status != STATUS_OK) goto _aidl_error;
382 
383   _aidl_ret_status = AParcel_readStatusHeader(_aidl_out.get(), _aidl_status.getR());
384   if (_aidl_ret_status != STATUS_OK) goto _aidl_error;
385 
386   if (!AStatus_isOk(_aidl_status.get())) goto _aidl_status_return;
387   _aidl_ret_status = ::ndk::AParcel_readData(_aidl_out.get(), _aidl_return);
388   if (_aidl_ret_status != STATUS_OK) goto _aidl_error;
389 
390   _aidl_error:
391   _aidl_status.set(AStatus_fromStatus(_aidl_ret_status));
392   _aidl_status_return:
393   return _aidl_status;
394 }
querySupportedValues(const std::vector<::aidl::android::hardware::media::c2::FieldSupportedValuesQuery> & in_inFields,bool in_mayBlock,::aidl::android::hardware::media::c2::IConfigurable::QuerySupportedValuesResult * _aidl_return)395 ::ndk::ScopedAStatus BpConfigurable::querySupportedValues(const std::vector<::aidl::android::hardware::media::c2::FieldSupportedValuesQuery>& in_inFields, bool in_mayBlock, ::aidl::android::hardware::media::c2::IConfigurable::QuerySupportedValuesResult* _aidl_return) {
396   binder_status_t _aidl_ret_status = STATUS_OK;
397   ::ndk::ScopedAStatus _aidl_status;
398   ::ndk::ScopedAParcel _aidl_in;
399   ::ndk::ScopedAParcel _aidl_out;
400 
401   _aidl_ret_status = AIBinder_prepareTransaction(asBinderReference().get(), _aidl_in.getR());
402   if (_aidl_ret_status != STATUS_OK) goto _aidl_error;
403 
404   _aidl_ret_status = ::ndk::AParcel_writeData(_aidl_in.get(), in_inFields);
405   if (_aidl_ret_status != STATUS_OK) goto _aidl_error;
406 
407   _aidl_ret_status = ::ndk::AParcel_writeData(_aidl_in.get(), in_mayBlock);
408   if (_aidl_ret_status != STATUS_OK) goto _aidl_error;
409 
410   _aidl_ret_status = AIBinder_transact(
411     asBinderReference().get(),
412     (FIRST_CALL_TRANSACTION + 5 /*querySupportedValues*/),
413     _aidl_in.getR(),
414     _aidl_out.getR(),
415     0
416     #ifdef BINDER_STABILITY_SUPPORT
417     | static_cast<int>(FLAG_PRIVATE_LOCAL)
418     #endif  // BINDER_STABILITY_SUPPORT
419     );
420   if (_aidl_ret_status == STATUS_UNKNOWN_TRANSACTION && IConfigurable::getDefaultImpl()) {
421     _aidl_status = IConfigurable::getDefaultImpl()->querySupportedValues(in_inFields, in_mayBlock, _aidl_return);
422     goto _aidl_status_return;
423   }
424   if (_aidl_ret_status != STATUS_OK) goto _aidl_error;
425 
426   _aidl_ret_status = AParcel_readStatusHeader(_aidl_out.get(), _aidl_status.getR());
427   if (_aidl_ret_status != STATUS_OK) goto _aidl_error;
428 
429   if (!AStatus_isOk(_aidl_status.get())) goto _aidl_status_return;
430   _aidl_ret_status = ::ndk::AParcel_readData(_aidl_out.get(), _aidl_return);
431   if (_aidl_ret_status != STATUS_OK) goto _aidl_error;
432 
433   _aidl_error:
434   _aidl_status.set(AStatus_fromStatus(_aidl_ret_status));
435   _aidl_status_return:
436   return _aidl_status;
437 }
getInterfaceVersion(int32_t * _aidl_return)438 ::ndk::ScopedAStatus BpConfigurable::getInterfaceVersion(int32_t* _aidl_return) {
439   binder_status_t _aidl_ret_status = STATUS_OK;
440   ::ndk::ScopedAStatus _aidl_status;
441   if (_aidl_cached_version != -1) {
442     *_aidl_return = _aidl_cached_version;
443     _aidl_status.set(AStatus_fromStatus(_aidl_ret_status));
444     return _aidl_status;
445   }
446   ::ndk::ScopedAParcel _aidl_in;
447   ::ndk::ScopedAParcel _aidl_out;
448 
449   _aidl_ret_status = AIBinder_prepareTransaction(asBinderReference().get(), _aidl_in.getR());
450   if (_aidl_ret_status != STATUS_OK) goto _aidl_error;
451 
452   _aidl_ret_status = AIBinder_transact(
453     asBinderReference().get(),
454     (FIRST_CALL_TRANSACTION + 16777214 /*getInterfaceVersion*/),
455     _aidl_in.getR(),
456     _aidl_out.getR(),
457     0
458     #ifdef BINDER_STABILITY_SUPPORT
459     | static_cast<int>(FLAG_PRIVATE_LOCAL)
460     #endif  // BINDER_STABILITY_SUPPORT
461     );
462   if (_aidl_ret_status == STATUS_UNKNOWN_TRANSACTION && IConfigurable::getDefaultImpl()) {
463     _aidl_status = IConfigurable::getDefaultImpl()->getInterfaceVersion(_aidl_return);
464     goto _aidl_status_return;
465   }
466   if (_aidl_ret_status != STATUS_OK) goto _aidl_error;
467 
468   _aidl_ret_status = AParcel_readStatusHeader(_aidl_out.get(), _aidl_status.getR());
469   if (_aidl_ret_status != STATUS_OK) goto _aidl_error;
470 
471   if (!AStatus_isOk(_aidl_status.get())) goto _aidl_status_return;
472   _aidl_ret_status = ::ndk::AParcel_readData(_aidl_out.get(), _aidl_return);
473   if (_aidl_ret_status != STATUS_OK) goto _aidl_error;
474 
475   _aidl_cached_version = *_aidl_return;
476   _aidl_error:
477   _aidl_status.set(AStatus_fromStatus(_aidl_ret_status));
478   _aidl_status_return:
479   return _aidl_status;
480 }
getInterfaceHash(std::string * _aidl_return)481 ::ndk::ScopedAStatus BpConfigurable::getInterfaceHash(std::string* _aidl_return) {
482   binder_status_t _aidl_ret_status = STATUS_OK;
483   ::ndk::ScopedAStatus _aidl_status;
484   const std::lock_guard<std::mutex> lock(_aidl_cached_hash_mutex);
485   if (_aidl_cached_hash != "-1") {
486     *_aidl_return = _aidl_cached_hash;
487     _aidl_status.set(AStatus_fromStatus(_aidl_ret_status));
488     return _aidl_status;
489   }
490   ::ndk::ScopedAParcel _aidl_in;
491   ::ndk::ScopedAParcel _aidl_out;
492 
493   _aidl_ret_status = AIBinder_prepareTransaction(asBinderReference().get(), _aidl_in.getR());
494   if (_aidl_ret_status != STATUS_OK) goto _aidl_error;
495 
496   _aidl_ret_status = AIBinder_transact(
497     asBinderReference().get(),
498     (FIRST_CALL_TRANSACTION + 16777213 /*getInterfaceHash*/),
499     _aidl_in.getR(),
500     _aidl_out.getR(),
501     0
502     #ifdef BINDER_STABILITY_SUPPORT
503     | static_cast<int>(FLAG_PRIVATE_LOCAL)
504     #endif  // BINDER_STABILITY_SUPPORT
505     );
506   if (_aidl_ret_status == STATUS_UNKNOWN_TRANSACTION && IConfigurable::getDefaultImpl()) {
507     _aidl_status = IConfigurable::getDefaultImpl()->getInterfaceHash(_aidl_return);
508     goto _aidl_status_return;
509   }
510   if (_aidl_ret_status != STATUS_OK) goto _aidl_error;
511 
512   _aidl_ret_status = AParcel_readStatusHeader(_aidl_out.get(), _aidl_status.getR());
513   if (_aidl_ret_status != STATUS_OK) goto _aidl_error;
514 
515   if (!AStatus_isOk(_aidl_status.get())) goto _aidl_status_return;
516   _aidl_ret_status = ::ndk::AParcel_readData(_aidl_out.get(), _aidl_return);
517   if (_aidl_ret_status != STATUS_OK) goto _aidl_error;
518 
519   _aidl_cached_hash = *_aidl_return;
520   _aidl_error:
521   _aidl_status.set(AStatus_fromStatus(_aidl_ret_status));
522   _aidl_status_return:
523   return _aidl_status;
524 }
525 // Source for BnConfigurable
BnConfigurable()526 BnConfigurable::BnConfigurable() {}
~BnConfigurable()527 BnConfigurable::~BnConfigurable() {}
createBinder()528 ::ndk::SpAIBinder BnConfigurable::createBinder() {
529   AIBinder* binder = AIBinder_new(_g_aidl_android_hardware_media_c2_IConfigurable_clazz, static_cast<void*>(this));
530   #ifdef BINDER_STABILITY_SUPPORT
531   AIBinder_markVintfStability(binder);
532   #endif  // BINDER_STABILITY_SUPPORT
533   return ::ndk::SpAIBinder(binder);
534 }
getInterfaceVersion(int32_t * _aidl_return)535 ::ndk::ScopedAStatus BnConfigurable::getInterfaceVersion(int32_t* _aidl_return) {
536   *_aidl_return = IConfigurable::version;
537   return ::ndk::ScopedAStatus(AStatus_newOk());
538 }
getInterfaceHash(std::string * _aidl_return)539 ::ndk::ScopedAStatus BnConfigurable::getInterfaceHash(std::string* _aidl_return) {
540   *_aidl_return = IConfigurable::hash;
541   return ::ndk::ScopedAStatus(AStatus_newOk());
542 }
543 // Source for IConfigurable
544 const char* IConfigurable::descriptor = "android.hardware.media.c2.IConfigurable";
IConfigurable()545 IConfigurable::IConfigurable() {}
~IConfigurable()546 IConfigurable::~IConfigurable() {}
547 
548 
fromBinder(const::ndk::SpAIBinder & binder)549 std::shared_ptr<IConfigurable> IConfigurable::fromBinder(const ::ndk::SpAIBinder& binder) {
550   if (!AIBinder_associateClass(binder.get(), _g_aidl_android_hardware_media_c2_IConfigurable_clazz)) {
551     #if __ANDROID_API__ >= 31
552     const AIBinder_Class* originalClass = AIBinder_getClass(binder.get());
553     if (originalClass == nullptr) return nullptr;
554     if (0 == strcmp(AIBinder_Class_getDescriptor(originalClass), descriptor)) {
555       return ::ndk::SharedRefBase::make<BpConfigurable>(binder);
556     }
557     #endif
558     return nullptr;
559   }
560   std::shared_ptr<::ndk::ICInterface> interface = ::ndk::ICInterface::asInterface(binder.get());
561   if (interface) {
562     return std::static_pointer_cast<IConfigurable>(interface);
563   }
564   return ::ndk::SharedRefBase::make<BpConfigurable>(binder);
565 }
566 
writeToParcel(AParcel * parcel,const std::shared_ptr<IConfigurable> & instance)567 binder_status_t IConfigurable::writeToParcel(AParcel* parcel, const std::shared_ptr<IConfigurable>& instance) {
568   return AParcel_writeStrongBinder(parcel, instance ? instance->asBinder().get() : nullptr);
569 }
readFromParcel(const AParcel * parcel,std::shared_ptr<IConfigurable> * instance)570 binder_status_t IConfigurable::readFromParcel(const AParcel* parcel, std::shared_ptr<IConfigurable>* instance) {
571   ::ndk::SpAIBinder binder;
572   binder_status_t status = AParcel_readStrongBinder(parcel, binder.getR());
573   if (status != STATUS_OK) return status;
574   *instance = IConfigurable::fromBinder(binder);
575   return STATUS_OK;
576 }
setDefaultImpl(const std::shared_ptr<IConfigurable> & impl)577 bool IConfigurable::setDefaultImpl(const std::shared_ptr<IConfigurable>& impl) {
578   // Only one user of this interface can use this function
579   // at a time. This is a heuristic to detect if two different
580   // users in the same process use this function.
581   assert(!IConfigurable::default_impl);
582   if (impl) {
583     IConfigurable::default_impl = impl;
584     return true;
585   }
586   return false;
587 }
getDefaultImpl()588 const std::shared_ptr<IConfigurable>& IConfigurable::getDefaultImpl() {
589   return IConfigurable::default_impl;
590 }
591 std::shared_ptr<IConfigurable> IConfigurable::default_impl = nullptr;
config(const::aidl::android::hardware::media::c2::Params &,bool,::aidl::android::hardware::media::c2::IConfigurable::ConfigResult *)592 ::ndk::ScopedAStatus IConfigurableDefault::config(const ::aidl::android::hardware::media::c2::Params& /*in_inParams*/, bool /*in_mayBlock*/, ::aidl::android::hardware::media::c2::IConfigurable::ConfigResult* /*_aidl_return*/) {
593   ::ndk::ScopedAStatus _aidl_status;
594   _aidl_status.set(AStatus_fromStatus(STATUS_UNKNOWN_TRANSACTION));
595   return _aidl_status;
596 }
getId(int32_t *)597 ::ndk::ScopedAStatus IConfigurableDefault::getId(int32_t* /*_aidl_return*/) {
598   ::ndk::ScopedAStatus _aidl_status;
599   _aidl_status.set(AStatus_fromStatus(STATUS_UNKNOWN_TRANSACTION));
600   return _aidl_status;
601 }
getName(std::string *)602 ::ndk::ScopedAStatus IConfigurableDefault::getName(std::string* /*_aidl_return*/) {
603   ::ndk::ScopedAStatus _aidl_status;
604   _aidl_status.set(AStatus_fromStatus(STATUS_UNKNOWN_TRANSACTION));
605   return _aidl_status;
606 }
query(const std::vector<int32_t> &,bool,::aidl::android::hardware::media::c2::IConfigurable::QueryResult *)607 ::ndk::ScopedAStatus IConfigurableDefault::query(const std::vector<int32_t>& /*in_indices*/, bool /*in_mayBlock*/, ::aidl::android::hardware::media::c2::IConfigurable::QueryResult* /*_aidl_return*/) {
608   ::ndk::ScopedAStatus _aidl_status;
609   _aidl_status.set(AStatus_fromStatus(STATUS_UNKNOWN_TRANSACTION));
610   return _aidl_status;
611 }
querySupportedParams(int32_t,int32_t,std::vector<::aidl::android::hardware::media::c2::ParamDescriptor> *)612 ::ndk::ScopedAStatus IConfigurableDefault::querySupportedParams(int32_t /*in_start*/, int32_t /*in_count*/, std::vector<::aidl::android::hardware::media::c2::ParamDescriptor>* /*_aidl_return*/) {
613   ::ndk::ScopedAStatus _aidl_status;
614   _aidl_status.set(AStatus_fromStatus(STATUS_UNKNOWN_TRANSACTION));
615   return _aidl_status;
616 }
querySupportedValues(const std::vector<::aidl::android::hardware::media::c2::FieldSupportedValuesQuery> &,bool,::aidl::android::hardware::media::c2::IConfigurable::QuerySupportedValuesResult *)617 ::ndk::ScopedAStatus IConfigurableDefault::querySupportedValues(const std::vector<::aidl::android::hardware::media::c2::FieldSupportedValuesQuery>& /*in_inFields*/, bool /*in_mayBlock*/, ::aidl::android::hardware::media::c2::IConfigurable::QuerySupportedValuesResult* /*_aidl_return*/) {
618   ::ndk::ScopedAStatus _aidl_status;
619   _aidl_status.set(AStatus_fromStatus(STATUS_UNKNOWN_TRANSACTION));
620   return _aidl_status;
621 }
getInterfaceVersion(int32_t * _aidl_return)622 ::ndk::ScopedAStatus IConfigurableDefault::getInterfaceVersion(int32_t* _aidl_return) {
623   *_aidl_return = 0;
624   return ::ndk::ScopedAStatus(AStatus_newOk());
625 }
getInterfaceHash(std::string * _aidl_return)626 ::ndk::ScopedAStatus IConfigurableDefault::getInterfaceHash(std::string* _aidl_return) {
627   *_aidl_return = "";
628   return ::ndk::ScopedAStatus(AStatus_newOk());
629 }
asBinder()630 ::ndk::SpAIBinder IConfigurableDefault::asBinder() {
631   return ::ndk::SpAIBinder();
632 }
isRemote()633 bool IConfigurableDefault::isRemote() {
634   return false;
635 }
636 }  // namespace c2
637 }  // namespace media
638 }  // namespace hardware
639 }  // namespace android
640 }  // namespace aidl
641 namespace aidl {
642 namespace android {
643 namespace hardware {
644 namespace media {
645 namespace c2 {
646 const char* IConfigurable::ConfigResult::descriptor = "android.hardware.media.c2.IConfigurable.ConfigResult";
647 
readFromParcel(const AParcel * _aidl_parcel)648 binder_status_t IConfigurable::ConfigResult::readFromParcel(const AParcel* _aidl_parcel) {
649   binder_status_t _aidl_ret_status = STATUS_OK;
650   int32_t _aidl_start_pos = AParcel_getDataPosition(_aidl_parcel);
651   int32_t _aidl_parcelable_size = 0;
652   _aidl_ret_status = AParcel_readInt32(_aidl_parcel, &_aidl_parcelable_size);
653   if (_aidl_ret_status != STATUS_OK) return _aidl_ret_status;
654 
655   if (_aidl_parcelable_size < 4) return STATUS_BAD_VALUE;
656   if (_aidl_start_pos > INT32_MAX - _aidl_parcelable_size) return STATUS_BAD_VALUE;
657   if (AParcel_getDataPosition(_aidl_parcel) - _aidl_start_pos >= _aidl_parcelable_size) {
658     AParcel_setDataPosition(_aidl_parcel, _aidl_start_pos + _aidl_parcelable_size);
659     return _aidl_ret_status;
660   }
661   _aidl_ret_status = ::ndk::AParcel_readData(_aidl_parcel, &params);
662   if (_aidl_ret_status != STATUS_OK) return _aidl_ret_status;
663 
664   if (AParcel_getDataPosition(_aidl_parcel) - _aidl_start_pos >= _aidl_parcelable_size) {
665     AParcel_setDataPosition(_aidl_parcel, _aidl_start_pos + _aidl_parcelable_size);
666     return _aidl_ret_status;
667   }
668   _aidl_ret_status = ::ndk::AParcel_readData(_aidl_parcel, &failures);
669   if (_aidl_ret_status != STATUS_OK) return _aidl_ret_status;
670 
671   if (AParcel_getDataPosition(_aidl_parcel) - _aidl_start_pos >= _aidl_parcelable_size) {
672     AParcel_setDataPosition(_aidl_parcel, _aidl_start_pos + _aidl_parcelable_size);
673     return _aidl_ret_status;
674   }
675   _aidl_ret_status = ::ndk::AParcel_readData(_aidl_parcel, &status);
676   if (_aidl_ret_status != STATUS_OK) return _aidl_ret_status;
677 
678   AParcel_setDataPosition(_aidl_parcel, _aidl_start_pos + _aidl_parcelable_size);
679   return _aidl_ret_status;
680 }
writeToParcel(AParcel * _aidl_parcel) const681 binder_status_t IConfigurable::ConfigResult::writeToParcel(AParcel* _aidl_parcel) const {
682   binder_status_t _aidl_ret_status;
683   int32_t _aidl_start_pos = AParcel_getDataPosition(_aidl_parcel);
684   _aidl_ret_status = AParcel_writeInt32(_aidl_parcel, 0);
685   if (_aidl_ret_status != STATUS_OK) return _aidl_ret_status;
686 
687   _aidl_ret_status = ::ndk::AParcel_writeData(_aidl_parcel, params);
688   if (_aidl_ret_status != STATUS_OK) return _aidl_ret_status;
689 
690   _aidl_ret_status = ::ndk::AParcel_writeData(_aidl_parcel, failures);
691   if (_aidl_ret_status != STATUS_OK) return _aidl_ret_status;
692 
693   _aidl_ret_status = ::ndk::AParcel_writeData(_aidl_parcel, status);
694   if (_aidl_ret_status != STATUS_OK) return _aidl_ret_status;
695 
696   int32_t _aidl_end_pos = AParcel_getDataPosition(_aidl_parcel);
697   AParcel_setDataPosition(_aidl_parcel, _aidl_start_pos);
698   AParcel_writeInt32(_aidl_parcel, _aidl_end_pos - _aidl_start_pos);
699   AParcel_setDataPosition(_aidl_parcel, _aidl_end_pos);
700   return _aidl_ret_status;
701 }
702 
703 }  // namespace c2
704 }  // namespace media
705 }  // namespace hardware
706 }  // namespace android
707 }  // namespace aidl
708 namespace aidl {
709 namespace android {
710 namespace hardware {
711 namespace media {
712 namespace c2 {
713 const char* IConfigurable::QueryResult::descriptor = "android.hardware.media.c2.IConfigurable.QueryResult";
714 
readFromParcel(const AParcel * _aidl_parcel)715 binder_status_t IConfigurable::QueryResult::readFromParcel(const AParcel* _aidl_parcel) {
716   binder_status_t _aidl_ret_status = STATUS_OK;
717   int32_t _aidl_start_pos = AParcel_getDataPosition(_aidl_parcel);
718   int32_t _aidl_parcelable_size = 0;
719   _aidl_ret_status = AParcel_readInt32(_aidl_parcel, &_aidl_parcelable_size);
720   if (_aidl_ret_status != STATUS_OK) return _aidl_ret_status;
721 
722   if (_aidl_parcelable_size < 4) return STATUS_BAD_VALUE;
723   if (_aidl_start_pos > INT32_MAX - _aidl_parcelable_size) return STATUS_BAD_VALUE;
724   if (AParcel_getDataPosition(_aidl_parcel) - _aidl_start_pos >= _aidl_parcelable_size) {
725     AParcel_setDataPosition(_aidl_parcel, _aidl_start_pos + _aidl_parcelable_size);
726     return _aidl_ret_status;
727   }
728   _aidl_ret_status = ::ndk::AParcel_readData(_aidl_parcel, &params);
729   if (_aidl_ret_status != STATUS_OK) return _aidl_ret_status;
730 
731   if (AParcel_getDataPosition(_aidl_parcel) - _aidl_start_pos >= _aidl_parcelable_size) {
732     AParcel_setDataPosition(_aidl_parcel, _aidl_start_pos + _aidl_parcelable_size);
733     return _aidl_ret_status;
734   }
735   _aidl_ret_status = ::ndk::AParcel_readData(_aidl_parcel, &status);
736   if (_aidl_ret_status != STATUS_OK) return _aidl_ret_status;
737 
738   AParcel_setDataPosition(_aidl_parcel, _aidl_start_pos + _aidl_parcelable_size);
739   return _aidl_ret_status;
740 }
writeToParcel(AParcel * _aidl_parcel) const741 binder_status_t IConfigurable::QueryResult::writeToParcel(AParcel* _aidl_parcel) const {
742   binder_status_t _aidl_ret_status;
743   int32_t _aidl_start_pos = AParcel_getDataPosition(_aidl_parcel);
744   _aidl_ret_status = AParcel_writeInt32(_aidl_parcel, 0);
745   if (_aidl_ret_status != STATUS_OK) return _aidl_ret_status;
746 
747   _aidl_ret_status = ::ndk::AParcel_writeData(_aidl_parcel, params);
748   if (_aidl_ret_status != STATUS_OK) return _aidl_ret_status;
749 
750   _aidl_ret_status = ::ndk::AParcel_writeData(_aidl_parcel, status);
751   if (_aidl_ret_status != STATUS_OK) return _aidl_ret_status;
752 
753   int32_t _aidl_end_pos = AParcel_getDataPosition(_aidl_parcel);
754   AParcel_setDataPosition(_aidl_parcel, _aidl_start_pos);
755   AParcel_writeInt32(_aidl_parcel, _aidl_end_pos - _aidl_start_pos);
756   AParcel_setDataPosition(_aidl_parcel, _aidl_end_pos);
757   return _aidl_ret_status;
758 }
759 
760 }  // namespace c2
761 }  // namespace media
762 }  // namespace hardware
763 }  // namespace android
764 }  // namespace aidl
765 namespace aidl {
766 namespace android {
767 namespace hardware {
768 namespace media {
769 namespace c2 {
770 const char* IConfigurable::QuerySupportedValuesResult::descriptor = "android.hardware.media.c2.IConfigurable.QuerySupportedValuesResult";
771 
readFromParcel(const AParcel * _aidl_parcel)772 binder_status_t IConfigurable::QuerySupportedValuesResult::readFromParcel(const AParcel* _aidl_parcel) {
773   binder_status_t _aidl_ret_status = STATUS_OK;
774   int32_t _aidl_start_pos = AParcel_getDataPosition(_aidl_parcel);
775   int32_t _aidl_parcelable_size = 0;
776   _aidl_ret_status = AParcel_readInt32(_aidl_parcel, &_aidl_parcelable_size);
777   if (_aidl_ret_status != STATUS_OK) return _aidl_ret_status;
778 
779   if (_aidl_parcelable_size < 4) return STATUS_BAD_VALUE;
780   if (_aidl_start_pos > INT32_MAX - _aidl_parcelable_size) return STATUS_BAD_VALUE;
781   if (AParcel_getDataPosition(_aidl_parcel) - _aidl_start_pos >= _aidl_parcelable_size) {
782     AParcel_setDataPosition(_aidl_parcel, _aidl_start_pos + _aidl_parcelable_size);
783     return _aidl_ret_status;
784   }
785   _aidl_ret_status = ::ndk::AParcel_readData(_aidl_parcel, &values);
786   if (_aidl_ret_status != STATUS_OK) return _aidl_ret_status;
787 
788   if (AParcel_getDataPosition(_aidl_parcel) - _aidl_start_pos >= _aidl_parcelable_size) {
789     AParcel_setDataPosition(_aidl_parcel, _aidl_start_pos + _aidl_parcelable_size);
790     return _aidl_ret_status;
791   }
792   _aidl_ret_status = ::ndk::AParcel_readData(_aidl_parcel, &status);
793   if (_aidl_ret_status != STATUS_OK) return _aidl_ret_status;
794 
795   AParcel_setDataPosition(_aidl_parcel, _aidl_start_pos + _aidl_parcelable_size);
796   return _aidl_ret_status;
797 }
writeToParcel(AParcel * _aidl_parcel) const798 binder_status_t IConfigurable::QuerySupportedValuesResult::writeToParcel(AParcel* _aidl_parcel) const {
799   binder_status_t _aidl_ret_status;
800   int32_t _aidl_start_pos = AParcel_getDataPosition(_aidl_parcel);
801   _aidl_ret_status = AParcel_writeInt32(_aidl_parcel, 0);
802   if (_aidl_ret_status != STATUS_OK) return _aidl_ret_status;
803 
804   _aidl_ret_status = ::ndk::AParcel_writeData(_aidl_parcel, values);
805   if (_aidl_ret_status != STATUS_OK) return _aidl_ret_status;
806 
807   _aidl_ret_status = ::ndk::AParcel_writeData(_aidl_parcel, status);
808   if (_aidl_ret_status != STATUS_OK) return _aidl_ret_status;
809 
810   int32_t _aidl_end_pos = AParcel_getDataPosition(_aidl_parcel);
811   AParcel_setDataPosition(_aidl_parcel, _aidl_start_pos);
812   AParcel_writeInt32(_aidl_parcel, _aidl_end_pos - _aidl_start_pos);
813   AParcel_setDataPosition(_aidl_parcel, _aidl_end_pos);
814   return _aidl_ret_status;
815 }
816 
817 }  // namespace c2
818 }  // namespace media
819 }  // namespace hardware
820 }  // namespace android
821 }  // namespace aidl
822