blob: 98176ef91d03d42deaeef65424901de1cf5e7ed5 [file] [log] [blame]
#ifndef HIDL_GENERATED_ANDROID_HARDWARE_TETHEROFFLOAD_CONTROL_V1_0_BSOFFLOADCONTROL_H
#define HIDL_GENERATED_ANDROID_HARDWARE_TETHEROFFLOAD_CONTROL_V1_0_BSOFFLOADCONTROL_H
#include <android-base/macros.h>
#include <cutils/trace.h>
#include <future>
#include <android/hardware/tetheroffload/control/1.0/IOffloadControl.h>
#include <hidl/HidlPassthroughSupport.h>
#include <hidl/TaskRunner.h>
namespace android {
namespace hardware {
namespace tetheroffload {
namespace control {
namespace V1_0 {
struct BsOffloadControl : IOffloadControl, ::android::hardware::details::HidlInstrumentor {
explicit BsOffloadControl(const ::android::sp<IOffloadControl> impl);
/**
* The pure class is what this class wraps.
*/
typedef IOffloadControl Pure;
typedef ::android::hardware::details::bs_tag _hidl_tag;
// Methods from ::android::hardware::tetheroffload::control::V1_0::IOffloadControl follow.
::android::hardware::Return<void> initOffload(const ::android::sp<::android::hardware::tetheroffload::control::V1_0::ITetheringOffloadCallback>& cb, initOffload_cb _hidl_cb) override {
atrace_begin(ATRACE_TAG_HAL, "HIDL::IOffloadControl::initOffload::passthrough");
#ifdef __ANDROID_DEBUGGABLE__
if (UNLIKELY(mEnableInstrumentation)) {
std::vector<void *> _hidl_args;
_hidl_args.push_back((void *)&cb);
for (const auto &callback: mInstrumentationCallbacks) {
callback(InstrumentationEvent::PASSTHROUGH_ENTRY, "android.hardware.tetheroffload.control", "1.0", "IOffloadControl", "initOffload", &_hidl_args);
}
}
#endif // __ANDROID_DEBUGGABLE__
::android::sp<::android::hardware::tetheroffload::control::V1_0::ITetheringOffloadCallback> _hidl_wrapped_cb;
if (cb != nullptr && !cb->isRemote()) {
_hidl_wrapped_cb = ::android::hardware::details::wrapPassthrough(cb);
if (_hidl_wrapped_cb == nullptr) {
return ::android::hardware::Status::fromExceptionCode(
::android::hardware::Status::EX_TRANSACTION_FAILED,
"Cannot wrap passthrough interface.");
}
} else {
_hidl_wrapped_cb = cb;
}
::android::hardware::Status _hidl_error = ::android::hardware::Status::ok();
auto _hidl_return = mImpl->initOffload(_hidl_wrapped_cb, [&](const auto &_hidl_out_success, const auto &_hidl_out_errMsg) {
atrace_end(ATRACE_TAG_HAL);
#ifdef __ANDROID_DEBUGGABLE__
if (UNLIKELY(mEnableInstrumentation)) {
std::vector<void *> _hidl_args;
_hidl_args.push_back((void *)&_hidl_out_success);
_hidl_args.push_back((void *)&_hidl_out_errMsg);
for (const auto &callback: mInstrumentationCallbacks) {
callback(InstrumentationEvent::PASSTHROUGH_EXIT, "android.hardware.tetheroffload.control", "1.0", "IOffloadControl", "initOffload", &_hidl_args);
}
}
#endif // __ANDROID_DEBUGGABLE__
_hidl_cb(_hidl_out_success, _hidl_out_errMsg);
});
if (!_hidl_error.isOk()) return _hidl_error;
return _hidl_return;
}
::android::hardware::Return<void> stopOffload(stopOffload_cb _hidl_cb) override {
atrace_begin(ATRACE_TAG_HAL, "HIDL::IOffloadControl::stopOffload::passthrough");
#ifdef __ANDROID_DEBUGGABLE__
if (UNLIKELY(mEnableInstrumentation)) {
std::vector<void *> _hidl_args;
for (const auto &callback: mInstrumentationCallbacks) {
callback(InstrumentationEvent::PASSTHROUGH_ENTRY, "android.hardware.tetheroffload.control", "1.0", "IOffloadControl", "stopOffload", &_hidl_args);
}
}
#endif // __ANDROID_DEBUGGABLE__
::android::hardware::Status _hidl_error = ::android::hardware::Status::ok();
auto _hidl_return = mImpl->stopOffload([&](const auto &_hidl_out_success, const auto &_hidl_out_errMsg) {
atrace_end(ATRACE_TAG_HAL);
#ifdef __ANDROID_DEBUGGABLE__
if (UNLIKELY(mEnableInstrumentation)) {
std::vector<void *> _hidl_args;
_hidl_args.push_back((void *)&_hidl_out_success);
_hidl_args.push_back((void *)&_hidl_out_errMsg);
for (const auto &callback: mInstrumentationCallbacks) {
callback(InstrumentationEvent::PASSTHROUGH_EXIT, "android.hardware.tetheroffload.control", "1.0", "IOffloadControl", "stopOffload", &_hidl_args);
}
}
#endif // __ANDROID_DEBUGGABLE__
_hidl_cb(_hidl_out_success, _hidl_out_errMsg);
});
if (!_hidl_error.isOk()) return _hidl_error;
return _hidl_return;
}
::android::hardware::Return<void> setLocalPrefixes(const ::android::hardware::hidl_vec<::android::hardware::hidl_string>& prefixes, setLocalPrefixes_cb _hidl_cb) override {
atrace_begin(ATRACE_TAG_HAL, "HIDL::IOffloadControl::setLocalPrefixes::passthrough");
#ifdef __ANDROID_DEBUGGABLE__
if (UNLIKELY(mEnableInstrumentation)) {
std::vector<void *> _hidl_args;
_hidl_args.push_back((void *)&prefixes);
for (const auto &callback: mInstrumentationCallbacks) {
callback(InstrumentationEvent::PASSTHROUGH_ENTRY, "android.hardware.tetheroffload.control", "1.0", "IOffloadControl", "setLocalPrefixes", &_hidl_args);
}
}
#endif // __ANDROID_DEBUGGABLE__
::android::hardware::Status _hidl_error = ::android::hardware::Status::ok();
auto _hidl_return = mImpl->setLocalPrefixes(prefixes, [&](const auto &_hidl_out_success, const auto &_hidl_out_errMsg) {
atrace_end(ATRACE_TAG_HAL);
#ifdef __ANDROID_DEBUGGABLE__
if (UNLIKELY(mEnableInstrumentation)) {
std::vector<void *> _hidl_args;
_hidl_args.push_back((void *)&_hidl_out_success);
_hidl_args.push_back((void *)&_hidl_out_errMsg);
for (const auto &callback: mInstrumentationCallbacks) {
callback(InstrumentationEvent::PASSTHROUGH_EXIT, "android.hardware.tetheroffload.control", "1.0", "IOffloadControl", "setLocalPrefixes", &_hidl_args);
}
}
#endif // __ANDROID_DEBUGGABLE__
_hidl_cb(_hidl_out_success, _hidl_out_errMsg);
});
if (!_hidl_error.isOk()) return _hidl_error;
return _hidl_return;
}
::android::hardware::Return<void> getForwardedStats(const ::android::hardware::hidl_string& upstream, getForwardedStats_cb _hidl_cb) override {
atrace_begin(ATRACE_TAG_HAL, "HIDL::IOffloadControl::getForwardedStats::passthrough");
#ifdef __ANDROID_DEBUGGABLE__
if (UNLIKELY(mEnableInstrumentation)) {
std::vector<void *> _hidl_args;
_hidl_args.push_back((void *)&upstream);
for (const auto &callback: mInstrumentationCallbacks) {
callback(InstrumentationEvent::PASSTHROUGH_ENTRY, "android.hardware.tetheroffload.control", "1.0", "IOffloadControl", "getForwardedStats", &_hidl_args);
}
}
#endif // __ANDROID_DEBUGGABLE__
::android::hardware::Status _hidl_error = ::android::hardware::Status::ok();
auto _hidl_return = mImpl->getForwardedStats(upstream, [&](const auto &_hidl_out_rxBytes, const auto &_hidl_out_txBytes) {
atrace_end(ATRACE_TAG_HAL);
#ifdef __ANDROID_DEBUGGABLE__
if (UNLIKELY(mEnableInstrumentation)) {
std::vector<void *> _hidl_args;
_hidl_args.push_back((void *)&_hidl_out_rxBytes);
_hidl_args.push_back((void *)&_hidl_out_txBytes);
for (const auto &callback: mInstrumentationCallbacks) {
callback(InstrumentationEvent::PASSTHROUGH_EXIT, "android.hardware.tetheroffload.control", "1.0", "IOffloadControl", "getForwardedStats", &_hidl_args);
}
}
#endif // __ANDROID_DEBUGGABLE__
_hidl_cb(_hidl_out_rxBytes, _hidl_out_txBytes);
});
if (!_hidl_error.isOk()) return _hidl_error;
return _hidl_return;
}
::android::hardware::Return<void> setDataLimit(const ::android::hardware::hidl_string& upstream, uint64_t limit, setDataLimit_cb _hidl_cb) override {
atrace_begin(ATRACE_TAG_HAL, "HIDL::IOffloadControl::setDataLimit::passthrough");
#ifdef __ANDROID_DEBUGGABLE__
if (UNLIKELY(mEnableInstrumentation)) {
std::vector<void *> _hidl_args;
_hidl_args.push_back((void *)&upstream);
_hidl_args.push_back((void *)&limit);
for (const auto &callback: mInstrumentationCallbacks) {
callback(InstrumentationEvent::PASSTHROUGH_ENTRY, "android.hardware.tetheroffload.control", "1.0", "IOffloadControl", "setDataLimit", &_hidl_args);
}
}
#endif // __ANDROID_DEBUGGABLE__
::android::hardware::Status _hidl_error = ::android::hardware::Status::ok();
auto _hidl_return = mImpl->setDataLimit(upstream, limit, [&](const auto &_hidl_out_success, const auto &_hidl_out_errMsg) {
atrace_end(ATRACE_TAG_HAL);
#ifdef __ANDROID_DEBUGGABLE__
if (UNLIKELY(mEnableInstrumentation)) {
std::vector<void *> _hidl_args;
_hidl_args.push_back((void *)&_hidl_out_success);
_hidl_args.push_back((void *)&_hidl_out_errMsg);
for (const auto &callback: mInstrumentationCallbacks) {
callback(InstrumentationEvent::PASSTHROUGH_EXIT, "android.hardware.tetheroffload.control", "1.0", "IOffloadControl", "setDataLimit", &_hidl_args);
}
}
#endif // __ANDROID_DEBUGGABLE__
_hidl_cb(_hidl_out_success, _hidl_out_errMsg);
});
if (!_hidl_error.isOk()) return _hidl_error;
return _hidl_return;
}
::android::hardware::Return<void> setUpstreamParameters(const ::android::hardware::hidl_string& iface, const ::android::hardware::hidl_string& v4Addr, const ::android::hardware::hidl_string& v4Gw, const ::android::hardware::hidl_vec<::android::hardware::hidl_string>& v6Gws, setUpstreamParameters_cb _hidl_cb) override {
atrace_begin(ATRACE_TAG_HAL, "HIDL::IOffloadControl::setUpstreamParameters::passthrough");
#ifdef __ANDROID_DEBUGGABLE__
if (UNLIKELY(mEnableInstrumentation)) {
std::vector<void *> _hidl_args;
_hidl_args.push_back((void *)&iface);
_hidl_args.push_back((void *)&v4Addr);
_hidl_args.push_back((void *)&v4Gw);
_hidl_args.push_back((void *)&v6Gws);
for (const auto &callback: mInstrumentationCallbacks) {
callback(InstrumentationEvent::PASSTHROUGH_ENTRY, "android.hardware.tetheroffload.control", "1.0", "IOffloadControl", "setUpstreamParameters", &_hidl_args);
}
}
#endif // __ANDROID_DEBUGGABLE__
::android::hardware::Status _hidl_error = ::android::hardware::Status::ok();
auto _hidl_return = mImpl->setUpstreamParameters(iface, v4Addr, v4Gw, v6Gws, [&](const auto &_hidl_out_success, const auto &_hidl_out_errMsg) {
atrace_end(ATRACE_TAG_HAL);
#ifdef __ANDROID_DEBUGGABLE__
if (UNLIKELY(mEnableInstrumentation)) {
std::vector<void *> _hidl_args;
_hidl_args.push_back((void *)&_hidl_out_success);
_hidl_args.push_back((void *)&_hidl_out_errMsg);
for (const auto &callback: mInstrumentationCallbacks) {
callback(InstrumentationEvent::PASSTHROUGH_EXIT, "android.hardware.tetheroffload.control", "1.0", "IOffloadControl", "setUpstreamParameters", &_hidl_args);
}
}
#endif // __ANDROID_DEBUGGABLE__
_hidl_cb(_hidl_out_success, _hidl_out_errMsg);
});
if (!_hidl_error.isOk()) return _hidl_error;
return _hidl_return;
}
::android::hardware::Return<void> addDownstream(const ::android::hardware::hidl_string& iface, const ::android::hardware::hidl_string& prefix, addDownstream_cb _hidl_cb) override {
atrace_begin(ATRACE_TAG_HAL, "HIDL::IOffloadControl::addDownstream::passthrough");
#ifdef __ANDROID_DEBUGGABLE__
if (UNLIKELY(mEnableInstrumentation)) {
std::vector<void *> _hidl_args;
_hidl_args.push_back((void *)&iface);
_hidl_args.push_back((void *)&prefix);
for (const auto &callback: mInstrumentationCallbacks) {
callback(InstrumentationEvent::PASSTHROUGH_ENTRY, "android.hardware.tetheroffload.control", "1.0", "IOffloadControl", "addDownstream", &_hidl_args);
}
}
#endif // __ANDROID_DEBUGGABLE__
::android::hardware::Status _hidl_error = ::android::hardware::Status::ok();
auto _hidl_return = mImpl->addDownstream(iface, prefix, [&](const auto &_hidl_out_success, const auto &_hidl_out_errMsg) {
atrace_end(ATRACE_TAG_HAL);
#ifdef __ANDROID_DEBUGGABLE__
if (UNLIKELY(mEnableInstrumentation)) {
std::vector<void *> _hidl_args;
_hidl_args.push_back((void *)&_hidl_out_success);
_hidl_args.push_back((void *)&_hidl_out_errMsg);
for (const auto &callback: mInstrumentationCallbacks) {
callback(InstrumentationEvent::PASSTHROUGH_EXIT, "android.hardware.tetheroffload.control", "1.0", "IOffloadControl", "addDownstream", &_hidl_args);
}
}
#endif // __ANDROID_DEBUGGABLE__
_hidl_cb(_hidl_out_success, _hidl_out_errMsg);
});
if (!_hidl_error.isOk()) return _hidl_error;
return _hidl_return;
}
::android::hardware::Return<void> removeDownstream(const ::android::hardware::hidl_string& iface, const ::android::hardware::hidl_string& prefix, removeDownstream_cb _hidl_cb) override {
atrace_begin(ATRACE_TAG_HAL, "HIDL::IOffloadControl::removeDownstream::passthrough");
#ifdef __ANDROID_DEBUGGABLE__
if (UNLIKELY(mEnableInstrumentation)) {
std::vector<void *> _hidl_args;
_hidl_args.push_back((void *)&iface);
_hidl_args.push_back((void *)&prefix);
for (const auto &callback: mInstrumentationCallbacks) {
callback(InstrumentationEvent::PASSTHROUGH_ENTRY, "android.hardware.tetheroffload.control", "1.0", "IOffloadControl", "removeDownstream", &_hidl_args);
}
}
#endif // __ANDROID_DEBUGGABLE__
::android::hardware::Status _hidl_error = ::android::hardware::Status::ok();
auto _hidl_return = mImpl->removeDownstream(iface, prefix, [&](const auto &_hidl_out_success, const auto &_hidl_out_errMsg) {
atrace_end(ATRACE_TAG_HAL);
#ifdef __ANDROID_DEBUGGABLE__
if (UNLIKELY(mEnableInstrumentation)) {
std::vector<void *> _hidl_args;
_hidl_args.push_back((void *)&_hidl_out_success);
_hidl_args.push_back((void *)&_hidl_out_errMsg);
for (const auto &callback: mInstrumentationCallbacks) {
callback(InstrumentationEvent::PASSTHROUGH_EXIT, "android.hardware.tetheroffload.control", "1.0", "IOffloadControl", "removeDownstream", &_hidl_args);
}
}
#endif // __ANDROID_DEBUGGABLE__
_hidl_cb(_hidl_out_success, _hidl_out_errMsg);
});
if (!_hidl_error.isOk()) return _hidl_error;
return _hidl_return;
}
// Methods from ::android::hidl::base::V1_0::IBase follow.
::android::hardware::Return<void> interfaceChain(interfaceChain_cb _hidl_cb) override {
atrace_begin(ATRACE_TAG_HAL, "HIDL::IOffloadControl::interfaceChain::passthrough");
#ifdef __ANDROID_DEBUGGABLE__
if (UNLIKELY(mEnableInstrumentation)) {
std::vector<void *> _hidl_args;
for (const auto &callback: mInstrumentationCallbacks) {
callback(InstrumentationEvent::PASSTHROUGH_ENTRY, "android.hidl.base", "1.0", "IBase", "interfaceChain", &_hidl_args);
}
}
#endif // __ANDROID_DEBUGGABLE__
::android::hardware::Status _hidl_error = ::android::hardware::Status::ok();
auto _hidl_return = mImpl->interfaceChain([&](const auto &_hidl_out_descriptors) {
atrace_end(ATRACE_TAG_HAL);
#ifdef __ANDROID_DEBUGGABLE__
if (UNLIKELY(mEnableInstrumentation)) {
std::vector<void *> _hidl_args;
_hidl_args.push_back((void *)&_hidl_out_descriptors);
for (const auto &callback: mInstrumentationCallbacks) {
callback(InstrumentationEvent::PASSTHROUGH_EXIT, "android.hidl.base", "1.0", "IBase", "interfaceChain", &_hidl_args);
}
}
#endif // __ANDROID_DEBUGGABLE__
_hidl_cb(_hidl_out_descriptors);
});
if (!_hidl_error.isOk()) return _hidl_error;
return _hidl_return;
}
::android::hardware::Return<void> debug(const ::android::hardware::hidl_handle& fd, const ::android::hardware::hidl_vec<::android::hardware::hidl_string>& options) override {
atrace_begin(ATRACE_TAG_HAL, "HIDL::IOffloadControl::debug::passthrough");
#ifdef __ANDROID_DEBUGGABLE__
if (UNLIKELY(mEnableInstrumentation)) {
std::vector<void *> _hidl_args;
_hidl_args.push_back((void *)&fd);
_hidl_args.push_back((void *)&options);
for (const auto &callback: mInstrumentationCallbacks) {
callback(InstrumentationEvent::PASSTHROUGH_ENTRY, "android.hidl.base", "1.0", "IBase", "debug", &_hidl_args);
}
}
#endif // __ANDROID_DEBUGGABLE__
::android::hardware::Status _hidl_error = ::android::hardware::Status::ok();
auto _hidl_return = mImpl->debug(fd, options);
atrace_end(ATRACE_TAG_HAL);
#ifdef __ANDROID_DEBUGGABLE__
if (UNLIKELY(mEnableInstrumentation)) {
std::vector<void *> _hidl_args;
for (const auto &callback: mInstrumentationCallbacks) {
callback(InstrumentationEvent::PASSTHROUGH_EXIT, "android.hidl.base", "1.0", "IBase", "debug", &_hidl_args);
}
}
#endif // __ANDROID_DEBUGGABLE__
if (!_hidl_error.isOk()) return _hidl_error;
return _hidl_return;
}
::android::hardware::Return<void> interfaceDescriptor(interfaceDescriptor_cb _hidl_cb) override {
atrace_begin(ATRACE_TAG_HAL, "HIDL::IOffloadControl::interfaceDescriptor::passthrough");
#ifdef __ANDROID_DEBUGGABLE__
if (UNLIKELY(mEnableInstrumentation)) {
std::vector<void *> _hidl_args;
for (const auto &callback: mInstrumentationCallbacks) {
callback(InstrumentationEvent::PASSTHROUGH_ENTRY, "android.hidl.base", "1.0", "IBase", "interfaceDescriptor", &_hidl_args);
}
}
#endif // __ANDROID_DEBUGGABLE__
::android::hardware::Status _hidl_error = ::android::hardware::Status::ok();
auto _hidl_return = mImpl->interfaceDescriptor([&](const auto &_hidl_out_descriptor) {
atrace_end(ATRACE_TAG_HAL);
#ifdef __ANDROID_DEBUGGABLE__
if (UNLIKELY(mEnableInstrumentation)) {
std::vector<void *> _hidl_args;
_hidl_args.push_back((void *)&_hidl_out_descriptor);
for (const auto &callback: mInstrumentationCallbacks) {
callback(InstrumentationEvent::PASSTHROUGH_EXIT, "android.hidl.base", "1.0", "IBase", "interfaceDescriptor", &_hidl_args);
}
}
#endif // __ANDROID_DEBUGGABLE__
_hidl_cb(_hidl_out_descriptor);
});
if (!_hidl_error.isOk()) return _hidl_error;
return _hidl_return;
}
::android::hardware::Return<void> getHashChain(getHashChain_cb _hidl_cb) override {
atrace_begin(ATRACE_TAG_HAL, "HIDL::IOffloadControl::getHashChain::passthrough");
#ifdef __ANDROID_DEBUGGABLE__
if (UNLIKELY(mEnableInstrumentation)) {
std::vector<void *> _hidl_args;
for (const auto &callback: mInstrumentationCallbacks) {
callback(InstrumentationEvent::PASSTHROUGH_ENTRY, "android.hidl.base", "1.0", "IBase", "getHashChain", &_hidl_args);
}
}
#endif // __ANDROID_DEBUGGABLE__
::android::hardware::Status _hidl_error = ::android::hardware::Status::ok();
auto _hidl_return = mImpl->getHashChain([&](const auto &_hidl_out_hashchain) {
atrace_end(ATRACE_TAG_HAL);
#ifdef __ANDROID_DEBUGGABLE__
if (UNLIKELY(mEnableInstrumentation)) {
std::vector<void *> _hidl_args;
_hidl_args.push_back((void *)&_hidl_out_hashchain);
for (const auto &callback: mInstrumentationCallbacks) {
callback(InstrumentationEvent::PASSTHROUGH_EXIT, "android.hidl.base", "1.0", "IBase", "getHashChain", &_hidl_args);
}
}
#endif // __ANDROID_DEBUGGABLE__
_hidl_cb(_hidl_out_hashchain);
});
if (!_hidl_error.isOk()) return _hidl_error;
return _hidl_return;
}
::android::hardware::Return<void> setHALInstrumentation() override {
configureInstrumentation();
return ::android::hardware::Void();
}
::android::hardware::Return<bool> linkToDeath(const ::android::sp<::android::hardware::hidl_death_recipient>& recipient, uint64_t cookie) override {
atrace_begin(ATRACE_TAG_HAL, "HIDL::IOffloadControl::linkToDeath::passthrough");
#ifdef __ANDROID_DEBUGGABLE__
if (UNLIKELY(mEnableInstrumentation)) {
std::vector<void *> _hidl_args;
_hidl_args.push_back((void *)&recipient);
_hidl_args.push_back((void *)&cookie);
for (const auto &callback: mInstrumentationCallbacks) {
callback(InstrumentationEvent::PASSTHROUGH_ENTRY, "android.hidl.base", "1.0", "IBase", "linkToDeath", &_hidl_args);
}
}
#endif // __ANDROID_DEBUGGABLE__
::android::hardware::Status _hidl_error = ::android::hardware::Status::ok();
auto _hidl_return = mImpl->linkToDeath(recipient, cookie);
bool _hidl_out_success = _hidl_return;
(void) _hidl_out_success;
atrace_end(ATRACE_TAG_HAL);
#ifdef __ANDROID_DEBUGGABLE__
if (UNLIKELY(mEnableInstrumentation)) {
std::vector<void *> _hidl_args;
_hidl_args.push_back((void *)&_hidl_out_success);
for (const auto &callback: mInstrumentationCallbacks) {
callback(InstrumentationEvent::PASSTHROUGH_EXIT, "android.hidl.base", "1.0", "IBase", "linkToDeath", &_hidl_args);
}
}
#endif // __ANDROID_DEBUGGABLE__
if (!_hidl_error.isOk()) return _hidl_error;
return _hidl_return;
}
::android::hardware::Return<void> ping() override {
atrace_begin(ATRACE_TAG_HAL, "HIDL::IOffloadControl::ping::passthrough");
#ifdef __ANDROID_DEBUGGABLE__
if (UNLIKELY(mEnableInstrumentation)) {
std::vector<void *> _hidl_args;
for (const auto &callback: mInstrumentationCallbacks) {
callback(InstrumentationEvent::PASSTHROUGH_ENTRY, "android.hidl.base", "1.0", "IBase", "ping", &_hidl_args);
}
}
#endif // __ANDROID_DEBUGGABLE__
::android::hardware::Status _hidl_error = ::android::hardware::Status::ok();
auto _hidl_return = mImpl->ping();
atrace_end(ATRACE_TAG_HAL);
#ifdef __ANDROID_DEBUGGABLE__
if (UNLIKELY(mEnableInstrumentation)) {
std::vector<void *> _hidl_args;
for (const auto &callback: mInstrumentationCallbacks) {
callback(InstrumentationEvent::PASSTHROUGH_EXIT, "android.hidl.base", "1.0", "IBase", "ping", &_hidl_args);
}
}
#endif // __ANDROID_DEBUGGABLE__
if (!_hidl_error.isOk()) return _hidl_error;
return _hidl_return;
}
::android::hardware::Return<void> getDebugInfo(getDebugInfo_cb _hidl_cb) override {
atrace_begin(ATRACE_TAG_HAL, "HIDL::IOffloadControl::getDebugInfo::passthrough");
#ifdef __ANDROID_DEBUGGABLE__
if (UNLIKELY(mEnableInstrumentation)) {
std::vector<void *> _hidl_args;
for (const auto &callback: mInstrumentationCallbacks) {
callback(InstrumentationEvent::PASSTHROUGH_ENTRY, "android.hidl.base", "1.0", "IBase", "getDebugInfo", &_hidl_args);
}
}
#endif // __ANDROID_DEBUGGABLE__
::android::hardware::Status _hidl_error = ::android::hardware::Status::ok();
auto _hidl_return = mImpl->getDebugInfo([&](const auto &_hidl_out_info) {
atrace_end(ATRACE_TAG_HAL);
#ifdef __ANDROID_DEBUGGABLE__
if (UNLIKELY(mEnableInstrumentation)) {
std::vector<void *> _hidl_args;
_hidl_args.push_back((void *)&_hidl_out_info);
for (const auto &callback: mInstrumentationCallbacks) {
callback(InstrumentationEvent::PASSTHROUGH_EXIT, "android.hidl.base", "1.0", "IBase", "getDebugInfo", &_hidl_args);
}
}
#endif // __ANDROID_DEBUGGABLE__
_hidl_cb(_hidl_out_info);
});
if (!_hidl_error.isOk()) return _hidl_error;
return _hidl_return;
}
::android::hardware::Return<void> notifySyspropsChanged() override {
atrace_begin(ATRACE_TAG_HAL, "HIDL::IOffloadControl::notifySyspropsChanged::passthrough");
#ifdef __ANDROID_DEBUGGABLE__
if (UNLIKELY(mEnableInstrumentation)) {
std::vector<void *> _hidl_args;
for (const auto &callback: mInstrumentationCallbacks) {
callback(InstrumentationEvent::PASSTHROUGH_ENTRY, "android.hidl.base", "1.0", "IBase", "notifySyspropsChanged", &_hidl_args);
}
}
#endif // __ANDROID_DEBUGGABLE__
::android::hardware::Status _hidl_error = ::android::hardware::Status::ok();
auto _hidl_return = addOnewayTask([mImpl = this->mImpl
#ifdef __ANDROID_DEBUGGABLE__
, mEnableInstrumentation = this->mEnableInstrumentation, mInstrumentationCallbacks = this->mInstrumentationCallbacks
#endif // __ANDROID_DEBUGGABLE__
] {
mImpl->notifySyspropsChanged();
atrace_end(ATRACE_TAG_HAL);
#ifdef __ANDROID_DEBUGGABLE__
if (UNLIKELY(mEnableInstrumentation)) {
std::vector<void *> _hidl_args;
for (const auto &callback: mInstrumentationCallbacks) {
callback(InstrumentationEvent::PASSTHROUGH_EXIT, "android.hidl.base", "1.0", "IBase", "notifySyspropsChanged", &_hidl_args);
}
}
#endif // __ANDROID_DEBUGGABLE__
});
return _hidl_return;
}
::android::hardware::Return<bool> unlinkToDeath(const ::android::sp<::android::hardware::hidl_death_recipient>& recipient) override {
atrace_begin(ATRACE_TAG_HAL, "HIDL::IOffloadControl::unlinkToDeath::passthrough");
#ifdef __ANDROID_DEBUGGABLE__
if (UNLIKELY(mEnableInstrumentation)) {
std::vector<void *> _hidl_args;
_hidl_args.push_back((void *)&recipient);
for (const auto &callback: mInstrumentationCallbacks) {
callback(InstrumentationEvent::PASSTHROUGH_ENTRY, "android.hidl.base", "1.0", "IBase", "unlinkToDeath", &_hidl_args);
}
}
#endif // __ANDROID_DEBUGGABLE__
::android::hardware::Status _hidl_error = ::android::hardware::Status::ok();
auto _hidl_return = mImpl->unlinkToDeath(recipient);
bool _hidl_out_success = _hidl_return;
(void) _hidl_out_success;
atrace_end(ATRACE_TAG_HAL);
#ifdef __ANDROID_DEBUGGABLE__
if (UNLIKELY(mEnableInstrumentation)) {
std::vector<void *> _hidl_args;
_hidl_args.push_back((void *)&_hidl_out_success);
for (const auto &callback: mInstrumentationCallbacks) {
callback(InstrumentationEvent::PASSTHROUGH_EXIT, "android.hidl.base", "1.0", "IBase", "unlinkToDeath", &_hidl_args);
}
}
#endif // __ANDROID_DEBUGGABLE__
if (!_hidl_error.isOk()) return _hidl_error;
return _hidl_return;
}
private:
const ::android::sp<IOffloadControl> mImpl;
::android::hardware::details::TaskRunner mOnewayQueue;
::android::hardware::Return<void> addOnewayTask(std::function<void(void)>);
};
} // namespace V1_0
} // namespace control
} // namespace tetheroffload
} // namespace hardware
} // namespace android
#endif // HIDL_GENERATED_ANDROID_HARDWARE_TETHEROFFLOAD_CONTROL_V1_0_BSOFFLOADCONTROL_H