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/LeAudioBroadcastConfiguration.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/LeAudioBroadcastConfiguration.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/bluetooth/audio/CodecType.h>
20 #include <aidl/android/hardware/bluetooth/audio/ConfigurationFlags.h>
21 #include <aidl/android/hardware/bluetooth/audio/LeAudioBisConfiguration.h>
22 #include <aidl/android/hardware/bluetooth/audio/LeAudioBroadcastConfiguration.h>
23 #include <aidl/android/hardware/bluetooth/audio/LeAudioCodecConfiguration.h>
24 #ifdef BINDER_STABILITY_SUPPORT
25 #include <android/binder_stability.h>
26 #endif  // BINDER_STABILITY_SUPPORT
27 
28 namespace aidl::android::hardware::bluetooth::audio {
29 class ConfigurationFlags;
30 class LeAudioBisConfiguration;
31 }  // namespace aidl::android::hardware::bluetooth::audio
32 namespace aidl {
33 namespace android {
34 namespace hardware {
35 namespace bluetooth {
36 namespace audio {
37 class LeAudioBroadcastConfiguration {
38 public:
39   typedef std::false_type fixed_size;
40   static const char* descriptor;
41 
42   class BroadcastStreamMap {
43   public:
44     typedef std::false_type fixed_size;
45     static const char* descriptor;
46 
47     char16_t streamHandle = '\0';
48     int32_t audioChannelAllocation = 0;
49     ::aidl::android::hardware::bluetooth::audio::LeAudioCodecConfiguration leAudioCodecConfig;
50     char16_t pcmStreamId = '\0';
51     std::optional<::aidl::android::hardware::bluetooth::audio::LeAudioBisConfiguration> bisConfiguration;
52     std::optional<::aidl::android::hardware::bluetooth::audio::ConfigurationFlags> flags;
53 
54     binder_status_t readFromParcel(const AParcel* parcel);
55     binder_status_t writeToParcel(AParcel* parcel) const;
56 
57     inline bool operator==(const BroadcastStreamMap& _rhs) const {
58       return std::tie(streamHandle, audioChannelAllocation, leAudioCodecConfig, pcmStreamId, bisConfiguration, flags) == std::tie(_rhs.streamHandle, _rhs.audioChannelAllocation, _rhs.leAudioCodecConfig, _rhs.pcmStreamId, _rhs.bisConfiguration, _rhs.flags);
59     }
60     inline bool operator<(const BroadcastStreamMap& _rhs) const {
61       return std::tie(streamHandle, audioChannelAllocation, leAudioCodecConfig, pcmStreamId, bisConfiguration, flags) < std::tie(_rhs.streamHandle, _rhs.audioChannelAllocation, _rhs.leAudioCodecConfig, _rhs.pcmStreamId, _rhs.bisConfiguration, _rhs.flags);
62     }
63     inline bool operator!=(const BroadcastStreamMap& _rhs) const {
64       return !(*this == _rhs);
65     }
66     inline bool operator>(const BroadcastStreamMap& _rhs) const {
67       return _rhs < *this;
68     }
69     inline bool operator>=(const BroadcastStreamMap& _rhs) const {
70       return !(*this < _rhs);
71     }
72     inline bool operator<=(const BroadcastStreamMap& _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 << "BroadcastStreamMap{";
80       _aidl_os << "streamHandle: " << ::android::internal::ToString(streamHandle);
81       _aidl_os << ", audioChannelAllocation: " << ::android::internal::ToString(audioChannelAllocation);
82       _aidl_os << ", leAudioCodecConfig: " << ::android::internal::ToString(leAudioCodecConfig);
83       _aidl_os << ", pcmStreamId: " << ::android::internal::ToString(pcmStreamId);
84       _aidl_os << ", bisConfiguration: " << ::android::internal::ToString(bisConfiguration);
85       _aidl_os << ", flags: " << ::android::internal::ToString(flags);
86       _aidl_os << "}";
87       return _aidl_os.str();
88     }
89   };
90   ::aidl::android::hardware::bluetooth::audio::CodecType codecType = ::aidl::android::hardware::bluetooth::audio::CodecType(0);
91   std::vector<::aidl::android::hardware::bluetooth::audio::LeAudioBroadcastConfiguration::BroadcastStreamMap> streamMap;
92 
93   binder_status_t readFromParcel(const AParcel* parcel);
94   binder_status_t writeToParcel(AParcel* parcel) const;
95 
96   inline bool operator==(const LeAudioBroadcastConfiguration& _rhs) const {
97     return std::tie(codecType, streamMap) == std::tie(_rhs.codecType, _rhs.streamMap);
98   }
99   inline bool operator<(const LeAudioBroadcastConfiguration& _rhs) const {
100     return std::tie(codecType, streamMap) < std::tie(_rhs.codecType, _rhs.streamMap);
101   }
102   inline bool operator!=(const LeAudioBroadcastConfiguration& _rhs) const {
103     return !(*this == _rhs);
104   }
105   inline bool operator>(const LeAudioBroadcastConfiguration& _rhs) const {
106     return _rhs < *this;
107   }
108   inline bool operator>=(const LeAudioBroadcastConfiguration& _rhs) const {
109     return !(*this < _rhs);
110   }
111   inline bool operator<=(const LeAudioBroadcastConfiguration& _rhs) const {
112     return !(_rhs < *this);
113   }
114 
115   static const ::ndk::parcelable_stability_t _aidl_stability = ::ndk::STABILITY_VINTF;
toString()116   inline std::string toString() const {
117     std::ostringstream _aidl_os;
118     _aidl_os << "LeAudioBroadcastConfiguration{";
119     _aidl_os << "codecType: " << ::android::internal::ToString(codecType);
120     _aidl_os << ", streamMap: " << ::android::internal::ToString(streamMap);
121     _aidl_os << "}";
122     return _aidl_os.str();
123   }
124 };
125 }  // namespace audio
126 }  // namespace bluetooth
127 }  // namespace hardware
128 }  // namespace android
129 }  // namespace aidl
130