1 /*
2 * This file is auto-generated. DO NOT MODIFY.
3 * Using: out/host/linux-x86/bin/aidl --lang=ndk -Weverything -Wno-missing-permission-annotation --structured --version 5 --hash notfrozen -t --stability vintf --min_sdk_version 31 -pout/soong/.intermediates/hardware/interfaces/audio/aidl/android.hardware.audio.common_interface/4/preprocessed.aidl -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 --previous_api_dir=hardware/interfaces/bluetooth/audio/aidl/aidl_api/android.hardware.bluetooth.audio/4 --previous_hash ac25616dda1c45dc2915d3f5ac82687a1a6f6e46 --ninja -d out/soong/.intermediates/hardware/interfaces/bluetooth/audio/aidl/android.hardware.bluetooth.audio-V5-ndk-source/gen/staging/android/hardware/bluetooth/audio/LeAudioAseConfiguration.cpp.d -h out/soong/.intermediates/hardware/interfaces/bluetooth/audio/aidl/android.hardware.bluetooth.audio-V5-ndk-source/gen/include/staging -o out/soong/.intermediates/hardware/interfaces/bluetooth/audio/aidl/android.hardware.bluetooth.audio-V5-ndk-source/gen/staging -Nhardware/interfaces/bluetooth/audio/aidl hardware/interfaces/bluetooth/audio/aidl/android/hardware/bluetooth/audio/LeAudioAseConfiguration.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 <array>
12 #include <cstdint>
13 #include <memory>
14 #include <optional>
15 #include <string>
16 #include <vector>
17 #include <android/binder_enums.h>
18 #include <android/binder_interface_utils.h>
19 #include <android/binder_parcelable_utils.h>
20 #include <android/binder_to_string.h>
21 #include <aidl/android/hardware/bluetooth/audio/CodecId.h>
22 #include <aidl/android/hardware/bluetooth/audio/CodecSpecificConfigurationLtv.h>
23 #include <aidl/android/hardware/bluetooth/audio/LeAudioAseConfiguration.h>
24 #include <aidl/android/hardware/bluetooth/audio/MetadataLtv.h>
25 #include <aidl/android/hardware/bluetooth/audio/Phy.h>
26 #ifdef BINDER_STABILITY_SUPPORT
27 #include <android/binder_stability.h>
28 #endif // BINDER_STABILITY_SUPPORT
29
30 namespace aidl {
31 namespace android {
32 namespace hardware {
33 namespace bluetooth {
34 namespace audio {
35 class LeAudioAseConfiguration {
36 public:
37 typedef std::false_type fixed_size;
38 static const char* descriptor;
39
40 enum class TargetLatency : int8_t {
41 UNDEFINED = 0,
42 LOWER = 1,
43 BALANCED_LATENCY_RELIABILITY = 2,
44 HIGHER_RELIABILITY = 3,
45 };
46
47 ::aidl::android::hardware::bluetooth::audio::LeAudioAseConfiguration::TargetLatency targetLatency = ::aidl::android::hardware::bluetooth::audio::LeAudioAseConfiguration::TargetLatency(0);
48 ::aidl::android::hardware::bluetooth::audio::Phy targetPhy = ::aidl::android::hardware::bluetooth::audio::Phy(0);
49 std::optional<::aidl::android::hardware::bluetooth::audio::CodecId> codecId;
50 std::vector<::aidl::android::hardware::bluetooth::audio::CodecSpecificConfigurationLtv> codecConfiguration;
51 std::optional<std::vector<uint8_t>> vendorCodecConfiguration;
52 std::optional<std::vector<std::optional<::aidl::android::hardware::bluetooth::audio::MetadataLtv>>> metadata;
53
54 binder_status_t readFromParcel(const AParcel* parcel);
55 binder_status_t writeToParcel(AParcel* parcel) const;
56
57 inline bool operator==(const LeAudioAseConfiguration& _rhs) const {
58 return std::tie(targetLatency, targetPhy, codecId, codecConfiguration, vendorCodecConfiguration, metadata) == std::tie(_rhs.targetLatency, _rhs.targetPhy, _rhs.codecId, _rhs.codecConfiguration, _rhs.vendorCodecConfiguration, _rhs.metadata);
59 }
60 inline bool operator<(const LeAudioAseConfiguration& _rhs) const {
61 return std::tie(targetLatency, targetPhy, codecId, codecConfiguration, vendorCodecConfiguration, metadata) < std::tie(_rhs.targetLatency, _rhs.targetPhy, _rhs.codecId, _rhs.codecConfiguration, _rhs.vendorCodecConfiguration, _rhs.metadata);
62 }
63 inline bool operator!=(const LeAudioAseConfiguration& _rhs) const {
64 return !(*this == _rhs);
65 }
66 inline bool operator>(const LeAudioAseConfiguration& _rhs) const {
67 return _rhs < *this;
68 }
69 inline bool operator>=(const LeAudioAseConfiguration& _rhs) const {
70 return !(*this < _rhs);
71 }
72 inline bool operator<=(const LeAudioAseConfiguration& _rhs) const {
73 return !(_rhs < *this);
74 }
75
76 static const ::ndk::parcelable_stability_t _aidl_stability = ::ndk::STABILITY_VINTF;
toString()77 inline std::string toString() const {
78 std::ostringstream _aidl_os;
79 _aidl_os << "LeAudioAseConfiguration{";
80 _aidl_os << "targetLatency: " << ::android::internal::ToString(targetLatency);
81 _aidl_os << ", targetPhy: " << ::android::internal::ToString(targetPhy);
82 _aidl_os << ", codecId: " << ::android::internal::ToString(codecId);
83 _aidl_os << ", codecConfiguration: " << ::android::internal::ToString(codecConfiguration);
84 _aidl_os << ", vendorCodecConfiguration: " << ::android::internal::ToString(vendorCodecConfiguration);
85 _aidl_os << ", metadata: " << ::android::internal::ToString(metadata);
86 _aidl_os << "}";
87 return _aidl_os.str();
88 }
89 };
90 } // namespace audio
91 } // namespace bluetooth
92 } // namespace hardware
93 } // namespace android
94 } // namespace aidl
95 namespace aidl {
96 namespace android {
97 namespace hardware {
98 namespace bluetooth {
99 namespace audio {
toString(LeAudioAseConfiguration::TargetLatency val)100 [[nodiscard]] static inline std::string toString(LeAudioAseConfiguration::TargetLatency val) {
101 switch(val) {
102 case LeAudioAseConfiguration::TargetLatency::UNDEFINED:
103 return "UNDEFINED";
104 case LeAudioAseConfiguration::TargetLatency::LOWER:
105 return "LOWER";
106 case LeAudioAseConfiguration::TargetLatency::BALANCED_LATENCY_RELIABILITY:
107 return "BALANCED_LATENCY_RELIABILITY";
108 case LeAudioAseConfiguration::TargetLatency::HIGHER_RELIABILITY:
109 return "HIGHER_RELIABILITY";
110 default:
111 return std::to_string(static_cast<int8_t>(val));
112 }
113 }
114 } // namespace audio
115 } // namespace bluetooth
116 } // namespace hardware
117 } // namespace android
118 } // namespace aidl
119 namespace ndk {
120 namespace internal {
121 #pragma clang diagnostic push
122 #pragma clang diagnostic ignored "-Wc++17-extensions"
123 template <>
124 constexpr inline std::array<aidl::android::hardware::bluetooth::audio::LeAudioAseConfiguration::TargetLatency, 4> enum_values<aidl::android::hardware::bluetooth::audio::LeAudioAseConfiguration::TargetLatency> = {
125 aidl::android::hardware::bluetooth::audio::LeAudioAseConfiguration::TargetLatency::UNDEFINED,
126 aidl::android::hardware::bluetooth::audio::LeAudioAseConfiguration::TargetLatency::LOWER,
127 aidl::android::hardware::bluetooth::audio::LeAudioAseConfiguration::TargetLatency::BALANCED_LATENCY_RELIABILITY,
128 aidl::android::hardware::bluetooth::audio::LeAudioAseConfiguration::TargetLatency::HIGHER_RELIABILITY,
129 };
130 #pragma clang diagnostic pop
131 } // namespace internal
132 } // namespace ndk
133