blob: 7a0bb5884af21ef2942fb6f654904e719258bfd0 [file] [log] [blame]
Chris Phoenixa430bcd2016-06-06 15:59:17 -07001// AUTO_GENERATED FILE - DO NOT EDIT
2// see system/tools/hidl/templates/TemplateProxy.cpp
Martijn Coenen1b7297c2016-05-19 09:23:46 +02003#include <android/hardware/tests/ITestService.h>
4#include <android/hardware/tests/BpTestService.h>
5
6namespace android {
Martijn Coenen1b7297c2016-05-19 09:23:46 +02007namespace hardware {
Martijn Coenen1b7297c2016-05-19 09:23:46 +02008namespace tests {
9
Chris Phoenixa430bcd2016-06-06 15:59:17 -070010
Andreas Huberd529c312016-07-27 14:58:00 -070011IMPLEMENT_HWBINDER_META_INTERFACE(TestService, "android.hardware.tests.ITestService");
Martijn Coenen1b7297c2016-05-19 09:23:46 +020012
13} // namespace tests
Martijn Coenen1b7297c2016-05-19 09:23:46 +020014} // namespace hardware
Martijn Coenen1b7297c2016-05-19 09:23:46 +020015} // namespace android
Chris Phoenixa430bcd2016-06-06 15:59:17 -070016
17
Martijn Coenen1b7297c2016-05-19 09:23:46 +020018#include <android/hardware/tests/BpTestService.h>
19#include <binder/Parcel.h>
20
21namespace android {
Martijn Coenen1b7297c2016-05-19 09:23:46 +020022namespace hardware {
Martijn Coenen1b7297c2016-05-19 09:23:46 +020023namespace tests {
24
Chris Phoenixa430bcd2016-06-06 15:59:17 -070025
Iliyan Malchev7e628762016-08-01 09:21:46 -070026BpTestService::BpTestService(const ::android::sp<::android::hardware::IBinder>& _aidl_impl)
Martijn Coenen1b7297c2016-05-19 09:23:46 +020027 : BpInterface<ITestService>(_aidl_impl){
28}
Iliyan Malchev7e628762016-08-01 09:21:46 -070029::android::hardware::Status BpTestService::echoInteger(int32_t echo_me, const ITestService::simple_t* my_struct , ITestService::echoInteger_cb _cb ) {
30 ::android::hardware::Parcel _aidl_data;
31 ::android::hardware::Parcel _aidl_reply;
Chris Phoenixa430bcd2016-06-06 15:59:17 -070032 ::android::status_t _aidl_ret_status = ::android::OK;
Iliyan Malchev7e628762016-08-01 09:21:46 -070033 ::android::hardware::Status _aidl_status;
Martijn Coenen75765482016-06-23 16:59:38 +020034 uint64_t buffer_handle;
Chris Phoenixa430bcd2016-06-06 15:59:17 -070035 int32_t ret;
Martijn Coenen1b7297c2016-05-19 09:23:46 +020036
Chris Phoenixa430bcd2016-06-06 15:59:17 -070037 _aidl_ret_status = _aidl_data.writeInterfaceToken(getInterfaceDescriptor());
38 if (((_aidl_ret_status) != (::android::OK))) {
39 goto _aidl_error;
40 }
41 _aidl_ret_status = _aidl_data.writeInt32(echo_me);
42 if (((_aidl_ret_status) != (::android::OK))) {
43 goto _aidl_error;
44 }
Martijn Coenen75765482016-06-23 16:59:38 +020045 _aidl_ret_status = _aidl_data.writeBuffer((void *)my_struct, sizeof(*my_struct), &buffer_handle);
Chris Phoenixa430bcd2016-06-06 15:59:17 -070046 if (((_aidl_ret_status) != (::android::OK))) {
47 goto _aidl_error;
48 }
Andreas Huberda1915a2016-07-27 15:04:04 -070049 _aidl_ret_status = _aidl_data.writeEmbeddedBuffer((void *)my_struct->data.buffer, my_struct->data.count * sizeof(*my_struct->data.buffer), nullptr, buffer_handle, 8);
Martijn Coenen75765482016-06-23 16:59:38 +020050 if (((_aidl_ret_status) != (::android::OK))) {
51 goto _aidl_error;
52 }
Chris Phoenixa430bcd2016-06-06 15:59:17 -070053 _aidl_ret_status = remote()->transact(ITestService::ECHOINTEGER, _aidl_data, &_aidl_reply);
54 if (((_aidl_ret_status) != (::android::OK))) {
55 goto _aidl_error;
56 }
57 _aidl_ret_status = _aidl_status.readFromParcel(_aidl_reply);
58 if (((_aidl_ret_status) != (::android::OK))) {
59 goto _aidl_error;
60 }
61 if (!_aidl_status.isOk()) {
62 return _aidl_status;
63 }
64 _aidl_ret_status = _aidl_reply.readInt32(&ret);
65 if (((_aidl_ret_status) != (::android::OK))) {
66 goto _aidl_error;
67 }
Martijn Coenen84aa7f42016-05-24 13:54:29 +020068
Chris Phoenix7b4419e2016-06-06 13:25:33 -070069
Chris Phoenixa430bcd2016-06-06 15:59:17 -070070 // Invoke callback to client
71 _cb(ret);
Martijn Coenen84aa7f42016-05-24 13:54:29 +020072
Martijn Coenen1b7297c2016-05-19 09:23:46 +020073_aidl_error:
Chris Phoenixa430bcd2016-06-06 15:59:17 -070074 _aidl_status.setFromStatusT(_aidl_ret_status);
75 return _aidl_status;
Martijn Coenen1b7297c2016-05-19 09:23:46 +020076}
Iliyan Malchev7e628762016-08-01 09:21:46 -070077::android::hardware::Status BpTestService::shareBufferWithRef(hidl_ref<lots_of_data> buffer , ITestService::shareBufferWithRef_cb _cb ) {
78 ::android::hardware::Parcel _aidl_data;
79 ::android::hardware::Parcel _aidl_reply;
Chris Phoenixa430bcd2016-06-06 15:59:17 -070080 ::android::status_t _aidl_ret_status = ::android::OK;
Iliyan Malchev7e628762016-08-01 09:21:46 -070081 ::android::hardware::Status _aidl_status;
Chris Phoenixa430bcd2016-06-06 15:59:17 -070082 int32_t ret;
Martijn Coenen1b7297c2016-05-19 09:23:46 +020083
Chris Phoenixa430bcd2016-06-06 15:59:17 -070084 _aidl_ret_status = _aidl_data.writeInterfaceToken(getInterfaceDescriptor());
85 if (((_aidl_ret_status) != (::android::OK))) {
86 goto _aidl_error;
87 }
88 _aidl_ret_status = _aidl_data.writeFileDescriptor(buffer);
89 if (((_aidl_ret_status) != (::android::OK))) {
90 goto _aidl_error;
91 }
Martijn Coenen221bb4f2016-05-24 21:52:30 +020092
Chris Phoenixa430bcd2016-06-06 15:59:17 -070093 _aidl_ret_status = remote()->transact(ITestService::SHAREBUFFERWITHREF, _aidl_data, &_aidl_reply);
94 if (((_aidl_ret_status) != (::android::OK))) {
95 goto _aidl_error;
96 }
97 _aidl_ret_status = _aidl_status.readFromParcel(_aidl_reply);
98 if (((_aidl_ret_status) != (::android::OK))) {
99 goto _aidl_error;
100 }
101 if (!_aidl_status.isOk()) {
102 return _aidl_status;
103 }
104 _aidl_ret_status = _aidl_reply.readInt32(&ret);
105 if (((_aidl_ret_status) != (::android::OK))) {
106 goto _aidl_error;
107 }
Martijn Coenen221bb4f2016-05-24 21:52:30 +0200108
Chris Phoenixa430bcd2016-06-06 15:59:17 -0700109
110 // Invoke callback to client
111 _cb(ret);
Martijn Coenen221bb4f2016-05-24 21:52:30 +0200112
113_aidl_error:
Chris Phoenixa430bcd2016-06-06 15:59:17 -0700114 _aidl_status.setFromStatusT(_aidl_ret_status);
115 return _aidl_status;
Martijn Coenen221bb4f2016-05-24 21:52:30 +0200116}
117
Chris Phoenixa430bcd2016-06-06 15:59:17 -0700118
Martijn Coenen1b7297c2016-05-19 09:23:46 +0200119} // namespace tests
Martijn Coenen1b7297c2016-05-19 09:23:46 +0200120} // namespace hardware
Martijn Coenen1b7297c2016-05-19 09:23:46 +0200121} // namespace android
Chris Phoenixa430bcd2016-06-06 15:59:17 -0700122
123