1 /* 2 * This file is auto-generated. DO NOT MODIFY. 3 * Using: out/host/linux-x86/bin/aidl --lang=ndk --structured --version 2 --hash c12818c51418fbfc76f1b81eba6678d75cf526c1 -t --stability vintf --min_sdk_version 29 -pout/soong/.intermediates/hardware/interfaces/common/aidl/android.hardware.common_interface/2/preprocessed.aidl -pout/soong/.intermediates/hardware/interfaces/common/fmq/aidl/android.hardware.common.fmq_interface/1/preprocessed.aidl --ninja -d out/soong/.intermediates/hardware/interfaces/media/bufferpool/aidl/android.hardware.media.bufferpool2-V2-ndk-source/gen/staging/android/hardware/media/bufferpool2/IAccessor.cpp.d -h out/soong/.intermediates/hardware/interfaces/media/bufferpool/aidl/android.hardware.media.bufferpool2-V2-ndk-source/gen/include/staging -o out/soong/.intermediates/hardware/interfaces/media/bufferpool/aidl/android.hardware.media.bufferpool2-V2-ndk-source/gen/staging -Iframeworks/base/core/java -Nhardware/interfaces/media/bufferpool/aidl/aidl_api/android.hardware.media.bufferpool2/2 hardware/interfaces/media/bufferpool/aidl/aidl_api/android.hardware.media.bufferpool2/2/android/hardware/media/bufferpool2/IAccessor.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 <cstdint> 12 #include <memory> 13 #include <optional> 14 #include <string> 15 #include <vector> 16 #include <android/binder_interface_utils.h> 17 #include <android/binder_parcelable_utils.h> 18 #include <android/binder_to_string.h> 19 #include <aidl/android/hardware/common/fmq/MQDescriptor.h> 20 #include <aidl/android/hardware/common/fmq/SynchronizedReadWrite.h> 21 #include <aidl/android/hardware/common/fmq/UnsynchronizedWrite.h> 22 #include <aidl/android/hardware/media/bufferpool2/BufferInvalidationMessage.h> 23 #include <aidl/android/hardware/media/bufferpool2/BufferStatusMessage.h> 24 #include <aidl/android/hardware/media/bufferpool2/IAccessor.h> 25 #include <aidl/android/hardware/media/bufferpool2/IConnection.h> 26 #include <aidl/android/hardware/media/bufferpool2/IObserver.h> 27 #ifdef BINDER_STABILITY_SUPPORT 28 #include <android/binder_stability.h> 29 #endif // BINDER_STABILITY_SUPPORT 30 31 namespace aidl::android::hardware::common::fmq { 32 template <typename T, typename Flavor> 33 class MQDescriptor; 34 } // namespace aidl::android::hardware::common::fmq 35 namespace aidl::android::hardware::media::bufferpool2 { 36 class BufferInvalidationMessage; 37 class BufferStatusMessage; 38 class IConnection; 39 class IObserver; 40 } // namespace aidl::android::hardware::media::bufferpool2 41 namespace aidl { 42 namespace android { 43 namespace hardware { 44 namespace media { 45 namespace bufferpool2 { 46 class IAccessorDelegator; 47 48 class IAccessor : public ::ndk::ICInterface { 49 public: 50 typedef IAccessorDelegator DefaultDelegator; 51 static const char* descriptor; 52 IAccessor(); 53 virtual ~IAccessor(); 54 55 class ConnectionInfo { 56 public: 57 typedef std::false_type fixed_size; 58 static const char* descriptor; 59 60 std::shared_ptr<::aidl::android::hardware::media::bufferpool2::IConnection> connection; 61 int64_t connectionId = 0L; 62 int32_t msgId = 0; 63 ::aidl::android::hardware::common::fmq::MQDescriptor<::aidl::android::hardware::media::bufferpool2::BufferStatusMessage, ::aidl::android::hardware::common::fmq::SynchronizedReadWrite> toFmqDesc; 64 ::aidl::android::hardware::common::fmq::MQDescriptor<::aidl::android::hardware::media::bufferpool2::BufferInvalidationMessage, ::aidl::android::hardware::common::fmq::UnsynchronizedWrite> fromFmqDesc; 65 66 binder_status_t readFromParcel(const AParcel* parcel); 67 binder_status_t writeToParcel(AParcel* parcel) const; 68 69 inline bool operator==(const ConnectionInfo& _rhs) const { 70 return std::tie(connection, connectionId, msgId, toFmqDesc, fromFmqDesc) == std::tie(_rhs.connection, _rhs.connectionId, _rhs.msgId, _rhs.toFmqDesc, _rhs.fromFmqDesc); 71 } 72 inline bool operator<(const ConnectionInfo& _rhs) const { 73 return std::tie(connection, connectionId, msgId, toFmqDesc, fromFmqDesc) < std::tie(_rhs.connection, _rhs.connectionId, _rhs.msgId, _rhs.toFmqDesc, _rhs.fromFmqDesc); 74 } 75 inline bool operator!=(const ConnectionInfo& _rhs) const { 76 return !(*this == _rhs); 77 } 78 inline bool operator>(const ConnectionInfo& _rhs) const { 79 return _rhs < *this; 80 } 81 inline bool operator>=(const ConnectionInfo& _rhs) const { 82 return !(*this < _rhs); 83 } 84 inline bool operator<=(const ConnectionInfo& _rhs) const { 85 return !(_rhs < *this); 86 } 87 88 static const ::ndk::parcelable_stability_t _aidl_stability = ::ndk::STABILITY_VINTF; toString()89 inline std::string toString() const { 90 std::ostringstream _aidl_os; 91 _aidl_os << "ConnectionInfo{"; 92 _aidl_os << "connection: " << ::android::internal::ToString(connection); 93 _aidl_os << ", connectionId: " << ::android::internal::ToString(connectionId); 94 _aidl_os << ", msgId: " << ::android::internal::ToString(msgId); 95 _aidl_os << ", toFmqDesc: " << ::android::internal::ToString(toFmqDesc); 96 _aidl_os << ", fromFmqDesc: " << ::android::internal::ToString(fromFmqDesc); 97 _aidl_os << "}"; 98 return _aidl_os.str(); 99 } 100 }; 101 static inline const int32_t version = 2; 102 static inline const std::string hash = "c12818c51418fbfc76f1b81eba6678d75cf526c1"; 103 static constexpr uint32_t TRANSACTION_connect = FIRST_CALL_TRANSACTION + 0; 104 105 static std::shared_ptr<IAccessor> fromBinder(const ::ndk::SpAIBinder& binder); 106 static binder_status_t writeToParcel(AParcel* parcel, const std::shared_ptr<IAccessor>& instance); 107 static binder_status_t readFromParcel(const AParcel* parcel, std::shared_ptr<IAccessor>* instance); 108 static bool setDefaultImpl(const std::shared_ptr<IAccessor>& impl); 109 static const std::shared_ptr<IAccessor>& getDefaultImpl(); 110 virtual ::ndk::ScopedAStatus connect(const std::shared_ptr<::aidl::android::hardware::media::bufferpool2::IObserver>& in_observer, ::aidl::android::hardware::media::bufferpool2::IAccessor::ConnectionInfo* _aidl_return) = 0; 111 virtual ::ndk::ScopedAStatus getInterfaceVersion(int32_t* _aidl_return) = 0; 112 virtual ::ndk::ScopedAStatus getInterfaceHash(std::string* _aidl_return) = 0; 113 private: 114 static std::shared_ptr<IAccessor> default_impl; 115 }; 116 class IAccessorDefault : public IAccessor { 117 public: 118 ::ndk::ScopedAStatus connect(const std::shared_ptr<::aidl::android::hardware::media::bufferpool2::IObserver>& in_observer, ::aidl::android::hardware::media::bufferpool2::IAccessor::ConnectionInfo* _aidl_return) override; 119 ::ndk::ScopedAStatus getInterfaceVersion(int32_t* _aidl_return) override; 120 ::ndk::ScopedAStatus getInterfaceHash(std::string* _aidl_return) override; 121 ::ndk::SpAIBinder asBinder() override; 122 bool isRemote() override; 123 }; 124 } // namespace bufferpool2 125 } // namespace media 126 } // namespace hardware 127 } // namespace android 128 } // namespace aidl 129