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/IInputSurfaceConnection.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/IInputSurfaceConnection.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/IInputSurfaceConnection.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/BnInputSurfaceConnection.h>
25 #include <aidl/android/hardware/media/c2/BpInputSurfaceConnection.h>
26
27 namespace aidl {
28 namespace android {
29 namespace hardware {
30 namespace media {
31 namespace c2 {
_aidl_android_hardware_media_c2_IInputSurfaceConnection_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_IInputSurfaceConnection_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<BnInputSurfaceConnection> _aidl_impl = std::static_pointer_cast<BnInputSurfaceConnection>(::ndk::ICInterface::asInterface(_aidl_binder));
37 switch (_aidl_code) {
38 case (FIRST_CALL_TRANSACTION + 0 /*disconnect*/): {
39
40 ::ndk::ScopedAStatus _aidl_status = _aidl_impl->disconnect();
41 _aidl_ret_status = AParcel_writeStatusHeader(_aidl_out, _aidl_status.get());
42 if (_aidl_ret_status != STATUS_OK) break;
43
44 if (!AStatus_isOk(_aidl_status.get())) break;
45
46 break;
47 }
48 case (FIRST_CALL_TRANSACTION + 1 /*signalEndOfStream*/): {
49
50 ::ndk::ScopedAStatus _aidl_status = _aidl_impl->signalEndOfStream();
51 _aidl_ret_status = AParcel_writeStatusHeader(_aidl_out, _aidl_status.get());
52 if (_aidl_ret_status != STATUS_OK) break;
53
54 if (!AStatus_isOk(_aidl_status.get())) break;
55
56 break;
57 }
58 case (FIRST_CALL_TRANSACTION + 16777214 /*getInterfaceVersion*/): {
59 int32_t _aidl_return;
60
61 ::ndk::ScopedAStatus _aidl_status = _aidl_impl->getInterfaceVersion(&_aidl_return);
62 _aidl_ret_status = AParcel_writeStatusHeader(_aidl_out, _aidl_status.get());
63 if (_aidl_ret_status != STATUS_OK) break;
64
65 if (!AStatus_isOk(_aidl_status.get())) break;
66
67 _aidl_ret_status = ::ndk::AParcel_writeData(_aidl_out, _aidl_return);
68 if (_aidl_ret_status != STATUS_OK) break;
69
70 break;
71 }
72 case (FIRST_CALL_TRANSACTION + 16777213 /*getInterfaceHash*/): {
73 std::string _aidl_return;
74
75 ::ndk::ScopedAStatus _aidl_status = _aidl_impl->getInterfaceHash(&_aidl_return);
76 _aidl_ret_status = AParcel_writeStatusHeader(_aidl_out, _aidl_status.get());
77 if (_aidl_ret_status != STATUS_OK) break;
78
79 if (!AStatus_isOk(_aidl_status.get())) break;
80
81 _aidl_ret_status = ::ndk::AParcel_writeData(_aidl_out, _aidl_return);
82 if (_aidl_ret_status != STATUS_OK) break;
83
84 break;
85 }
86 }
87 return _aidl_ret_status;
88 }
89
90 static const char* _g_aidl_android_hardware_media_c2_IInputSurfaceConnection_clazz_code_to_function[] = { "disconnect","signalEndOfStream",};
91 static AIBinder_Class* _g_aidl_android_hardware_media_c2_IInputSurfaceConnection_clazz = ::ndk::ICInterface::defineClass(IInputSurfaceConnection::descriptor, _aidl_android_hardware_media_c2_IInputSurfaceConnection_onTransact, _g_aidl_android_hardware_media_c2_IInputSurfaceConnection_clazz_code_to_function, 2);
92
BpInputSurfaceConnection(const::ndk::SpAIBinder & binder)93 BpInputSurfaceConnection::BpInputSurfaceConnection(const ::ndk::SpAIBinder& binder) : BpCInterface(binder) {}
~BpInputSurfaceConnection()94 BpInputSurfaceConnection::~BpInputSurfaceConnection() {}
95
disconnect()96 ::ndk::ScopedAStatus BpInputSurfaceConnection::disconnect() {
97 binder_status_t _aidl_ret_status = STATUS_OK;
98 ::ndk::ScopedAStatus _aidl_status;
99 ::ndk::ScopedAParcel _aidl_in;
100 ::ndk::ScopedAParcel _aidl_out;
101
102 _aidl_ret_status = AIBinder_prepareTransaction(asBinderReference().get(), _aidl_in.getR());
103 if (_aidl_ret_status != STATUS_OK) goto _aidl_error;
104
105 _aidl_ret_status = AIBinder_transact(
106 asBinderReference().get(),
107 (FIRST_CALL_TRANSACTION + 0 /*disconnect*/),
108 _aidl_in.getR(),
109 _aidl_out.getR(),
110 0
111 #ifdef BINDER_STABILITY_SUPPORT
112 | static_cast<int>(FLAG_PRIVATE_LOCAL)
113 #endif // BINDER_STABILITY_SUPPORT
114 );
115 if (_aidl_ret_status == STATUS_UNKNOWN_TRANSACTION && IInputSurfaceConnection::getDefaultImpl()) {
116 _aidl_status = IInputSurfaceConnection::getDefaultImpl()->disconnect();
117 goto _aidl_status_return;
118 }
119 if (_aidl_ret_status != STATUS_OK) goto _aidl_error;
120
121 _aidl_ret_status = AParcel_readStatusHeader(_aidl_out.get(), _aidl_status.getR());
122 if (_aidl_ret_status != STATUS_OK) goto _aidl_error;
123
124 if (!AStatus_isOk(_aidl_status.get())) goto _aidl_status_return;
125 _aidl_error:
126 _aidl_status.set(AStatus_fromStatus(_aidl_ret_status));
127 _aidl_status_return:
128 return _aidl_status;
129 }
signalEndOfStream()130 ::ndk::ScopedAStatus BpInputSurfaceConnection::signalEndOfStream() {
131 binder_status_t _aidl_ret_status = STATUS_OK;
132 ::ndk::ScopedAStatus _aidl_status;
133 ::ndk::ScopedAParcel _aidl_in;
134 ::ndk::ScopedAParcel _aidl_out;
135
136 _aidl_ret_status = AIBinder_prepareTransaction(asBinderReference().get(), _aidl_in.getR());
137 if (_aidl_ret_status != STATUS_OK) goto _aidl_error;
138
139 _aidl_ret_status = AIBinder_transact(
140 asBinderReference().get(),
141 (FIRST_CALL_TRANSACTION + 1 /*signalEndOfStream*/),
142 _aidl_in.getR(),
143 _aidl_out.getR(),
144 0
145 #ifdef BINDER_STABILITY_SUPPORT
146 | static_cast<int>(FLAG_PRIVATE_LOCAL)
147 #endif // BINDER_STABILITY_SUPPORT
148 );
149 if (_aidl_ret_status == STATUS_UNKNOWN_TRANSACTION && IInputSurfaceConnection::getDefaultImpl()) {
150 _aidl_status = IInputSurfaceConnection::getDefaultImpl()->signalEndOfStream();
151 goto _aidl_status_return;
152 }
153 if (_aidl_ret_status != STATUS_OK) goto _aidl_error;
154
155 _aidl_ret_status = AParcel_readStatusHeader(_aidl_out.get(), _aidl_status.getR());
156 if (_aidl_ret_status != STATUS_OK) goto _aidl_error;
157
158 if (!AStatus_isOk(_aidl_status.get())) goto _aidl_status_return;
159 _aidl_error:
160 _aidl_status.set(AStatus_fromStatus(_aidl_ret_status));
161 _aidl_status_return:
162 return _aidl_status;
163 }
getInterfaceVersion(int32_t * _aidl_return)164 ::ndk::ScopedAStatus BpInputSurfaceConnection::getInterfaceVersion(int32_t* _aidl_return) {
165 binder_status_t _aidl_ret_status = STATUS_OK;
166 ::ndk::ScopedAStatus _aidl_status;
167 if (_aidl_cached_version != -1) {
168 *_aidl_return = _aidl_cached_version;
169 _aidl_status.set(AStatus_fromStatus(_aidl_ret_status));
170 return _aidl_status;
171 }
172 ::ndk::ScopedAParcel _aidl_in;
173 ::ndk::ScopedAParcel _aidl_out;
174
175 _aidl_ret_status = AIBinder_prepareTransaction(asBinderReference().get(), _aidl_in.getR());
176 if (_aidl_ret_status != STATUS_OK) goto _aidl_error;
177
178 _aidl_ret_status = AIBinder_transact(
179 asBinderReference().get(),
180 (FIRST_CALL_TRANSACTION + 16777214 /*getInterfaceVersion*/),
181 _aidl_in.getR(),
182 _aidl_out.getR(),
183 0
184 #ifdef BINDER_STABILITY_SUPPORT
185 | static_cast<int>(FLAG_PRIVATE_LOCAL)
186 #endif // BINDER_STABILITY_SUPPORT
187 );
188 if (_aidl_ret_status == STATUS_UNKNOWN_TRANSACTION && IInputSurfaceConnection::getDefaultImpl()) {
189 _aidl_status = IInputSurfaceConnection::getDefaultImpl()->getInterfaceVersion(_aidl_return);
190 goto _aidl_status_return;
191 }
192 if (_aidl_ret_status != STATUS_OK) goto _aidl_error;
193
194 _aidl_ret_status = AParcel_readStatusHeader(_aidl_out.get(), _aidl_status.getR());
195 if (_aidl_ret_status != STATUS_OK) goto _aidl_error;
196
197 if (!AStatus_isOk(_aidl_status.get())) goto _aidl_status_return;
198 _aidl_ret_status = ::ndk::AParcel_readData(_aidl_out.get(), _aidl_return);
199 if (_aidl_ret_status != STATUS_OK) goto _aidl_error;
200
201 _aidl_cached_version = *_aidl_return;
202 _aidl_error:
203 _aidl_status.set(AStatus_fromStatus(_aidl_ret_status));
204 _aidl_status_return:
205 return _aidl_status;
206 }
getInterfaceHash(std::string * _aidl_return)207 ::ndk::ScopedAStatus BpInputSurfaceConnection::getInterfaceHash(std::string* _aidl_return) {
208 binder_status_t _aidl_ret_status = STATUS_OK;
209 ::ndk::ScopedAStatus _aidl_status;
210 const std::lock_guard<std::mutex> lock(_aidl_cached_hash_mutex);
211 if (_aidl_cached_hash != "-1") {
212 *_aidl_return = _aidl_cached_hash;
213 _aidl_status.set(AStatus_fromStatus(_aidl_ret_status));
214 return _aidl_status;
215 }
216 ::ndk::ScopedAParcel _aidl_in;
217 ::ndk::ScopedAParcel _aidl_out;
218
219 _aidl_ret_status = AIBinder_prepareTransaction(asBinderReference().get(), _aidl_in.getR());
220 if (_aidl_ret_status != STATUS_OK) goto _aidl_error;
221
222 _aidl_ret_status = AIBinder_transact(
223 asBinderReference().get(),
224 (FIRST_CALL_TRANSACTION + 16777213 /*getInterfaceHash*/),
225 _aidl_in.getR(),
226 _aidl_out.getR(),
227 0
228 #ifdef BINDER_STABILITY_SUPPORT
229 | static_cast<int>(FLAG_PRIVATE_LOCAL)
230 #endif // BINDER_STABILITY_SUPPORT
231 );
232 if (_aidl_ret_status == STATUS_UNKNOWN_TRANSACTION && IInputSurfaceConnection::getDefaultImpl()) {
233 _aidl_status = IInputSurfaceConnection::getDefaultImpl()->getInterfaceHash(_aidl_return);
234 goto _aidl_status_return;
235 }
236 if (_aidl_ret_status != STATUS_OK) goto _aidl_error;
237
238 _aidl_ret_status = AParcel_readStatusHeader(_aidl_out.get(), _aidl_status.getR());
239 if (_aidl_ret_status != STATUS_OK) goto _aidl_error;
240
241 if (!AStatus_isOk(_aidl_status.get())) goto _aidl_status_return;
242 _aidl_ret_status = ::ndk::AParcel_readData(_aidl_out.get(), _aidl_return);
243 if (_aidl_ret_status != STATUS_OK) goto _aidl_error;
244
245 _aidl_cached_hash = *_aidl_return;
246 _aidl_error:
247 _aidl_status.set(AStatus_fromStatus(_aidl_ret_status));
248 _aidl_status_return:
249 return _aidl_status;
250 }
251 // Source for BnInputSurfaceConnection
BnInputSurfaceConnection()252 BnInputSurfaceConnection::BnInputSurfaceConnection() {}
~BnInputSurfaceConnection()253 BnInputSurfaceConnection::~BnInputSurfaceConnection() {}
createBinder()254 ::ndk::SpAIBinder BnInputSurfaceConnection::createBinder() {
255 AIBinder* binder = AIBinder_new(_g_aidl_android_hardware_media_c2_IInputSurfaceConnection_clazz, static_cast<void*>(this));
256 #ifdef BINDER_STABILITY_SUPPORT
257 AIBinder_markVintfStability(binder);
258 #endif // BINDER_STABILITY_SUPPORT
259 return ::ndk::SpAIBinder(binder);
260 }
getInterfaceVersion(int32_t * _aidl_return)261 ::ndk::ScopedAStatus BnInputSurfaceConnection::getInterfaceVersion(int32_t* _aidl_return) {
262 *_aidl_return = IInputSurfaceConnection::version;
263 return ::ndk::ScopedAStatus(AStatus_newOk());
264 }
getInterfaceHash(std::string * _aidl_return)265 ::ndk::ScopedAStatus BnInputSurfaceConnection::getInterfaceHash(std::string* _aidl_return) {
266 *_aidl_return = IInputSurfaceConnection::hash;
267 return ::ndk::ScopedAStatus(AStatus_newOk());
268 }
269 // Source for IInputSurfaceConnection
270 const char* IInputSurfaceConnection::descriptor = "android.hardware.media.c2.IInputSurfaceConnection";
IInputSurfaceConnection()271 IInputSurfaceConnection::IInputSurfaceConnection() {}
~IInputSurfaceConnection()272 IInputSurfaceConnection::~IInputSurfaceConnection() {}
273
274
fromBinder(const::ndk::SpAIBinder & binder)275 std::shared_ptr<IInputSurfaceConnection> IInputSurfaceConnection::fromBinder(const ::ndk::SpAIBinder& binder) {
276 if (!AIBinder_associateClass(binder.get(), _g_aidl_android_hardware_media_c2_IInputSurfaceConnection_clazz)) {
277 #if __ANDROID_API__ >= 31
278 const AIBinder_Class* originalClass = AIBinder_getClass(binder.get());
279 if (originalClass == nullptr) return nullptr;
280 if (0 == strcmp(AIBinder_Class_getDescriptor(originalClass), descriptor)) {
281 return ::ndk::SharedRefBase::make<BpInputSurfaceConnection>(binder);
282 }
283 #endif
284 return nullptr;
285 }
286 std::shared_ptr<::ndk::ICInterface> interface = ::ndk::ICInterface::asInterface(binder.get());
287 if (interface) {
288 return std::static_pointer_cast<IInputSurfaceConnection>(interface);
289 }
290 return ::ndk::SharedRefBase::make<BpInputSurfaceConnection>(binder);
291 }
292
writeToParcel(AParcel * parcel,const std::shared_ptr<IInputSurfaceConnection> & instance)293 binder_status_t IInputSurfaceConnection::writeToParcel(AParcel* parcel, const std::shared_ptr<IInputSurfaceConnection>& instance) {
294 return AParcel_writeStrongBinder(parcel, instance ? instance->asBinder().get() : nullptr);
295 }
readFromParcel(const AParcel * parcel,std::shared_ptr<IInputSurfaceConnection> * instance)296 binder_status_t IInputSurfaceConnection::readFromParcel(const AParcel* parcel, std::shared_ptr<IInputSurfaceConnection>* instance) {
297 ::ndk::SpAIBinder binder;
298 binder_status_t status = AParcel_readStrongBinder(parcel, binder.getR());
299 if (status != STATUS_OK) return status;
300 *instance = IInputSurfaceConnection::fromBinder(binder);
301 return STATUS_OK;
302 }
setDefaultImpl(const std::shared_ptr<IInputSurfaceConnection> & impl)303 bool IInputSurfaceConnection::setDefaultImpl(const std::shared_ptr<IInputSurfaceConnection>& impl) {
304 // Only one user of this interface can use this function
305 // at a time. This is a heuristic to detect if two different
306 // users in the same process use this function.
307 assert(!IInputSurfaceConnection::default_impl);
308 if (impl) {
309 IInputSurfaceConnection::default_impl = impl;
310 return true;
311 }
312 return false;
313 }
getDefaultImpl()314 const std::shared_ptr<IInputSurfaceConnection>& IInputSurfaceConnection::getDefaultImpl() {
315 return IInputSurfaceConnection::default_impl;
316 }
317 std::shared_ptr<IInputSurfaceConnection> IInputSurfaceConnection::default_impl = nullptr;
disconnect()318 ::ndk::ScopedAStatus IInputSurfaceConnectionDefault::disconnect() {
319 ::ndk::ScopedAStatus _aidl_status;
320 _aidl_status.set(AStatus_fromStatus(STATUS_UNKNOWN_TRANSACTION));
321 return _aidl_status;
322 }
signalEndOfStream()323 ::ndk::ScopedAStatus IInputSurfaceConnectionDefault::signalEndOfStream() {
324 ::ndk::ScopedAStatus _aidl_status;
325 _aidl_status.set(AStatus_fromStatus(STATUS_UNKNOWN_TRANSACTION));
326 return _aidl_status;
327 }
getInterfaceVersion(int32_t * _aidl_return)328 ::ndk::ScopedAStatus IInputSurfaceConnectionDefault::getInterfaceVersion(int32_t* _aidl_return) {
329 *_aidl_return = 0;
330 return ::ndk::ScopedAStatus(AStatus_newOk());
331 }
getInterfaceHash(std::string * _aidl_return)332 ::ndk::ScopedAStatus IInputSurfaceConnectionDefault::getInterfaceHash(std::string* _aidl_return) {
333 *_aidl_return = "";
334 return ::ndk::ScopedAStatus(AStatus_newOk());
335 }
asBinder()336 ::ndk::SpAIBinder IInputSurfaceConnectionDefault::asBinder() {
337 return ::ndk::SpAIBinder();
338 }
isRemote()339 bool IInputSurfaceConnectionDefault::isRemote() {
340 return false;
341 }
342 } // namespace c2
343 } // namespace media
344 } // namespace hardware
345 } // namespace android
346 } // namespace aidl
347