1 /*
2  * This file is auto-generated.  DO NOT MODIFY.
3  * Using: out/host/linux-x86/bin/aidl --lang=cpp -Weverything -Wno-missing-permission-annotation -t --min_sdk_version 29 -pout/soong/.intermediates/system/hardware/interfaces/media/android.media.audio.common.types_interface/4/preprocessed.aidl -pout/soong/.intermediates/frameworks/av/audio-permission-aidl_interface/preprocessed.aidl -pout/soong/.intermediates/frameworks/av/media/libaudioclient/audioclient-types-aidl_interface/preprocessed.aidl -pout/soong/.intermediates/frameworks/av/media/libaudioclient/audiopolicy-types-aidl_interface/preprocessed.aidl -pout/soong/.intermediates/frameworks/av/media/libaudioclient/capture_state_listener-aidl_interface/preprocessed.aidl -pout/soong/.intermediates/frameworks/native/libs/permission/framework-permission-aidl_interface/preprocessed.aidl -pout/soong/.intermediates/frameworks/av/media/libaudioclient/spatializer-aidl_interface/preprocessed.aidl --ninja -d out/soong/.intermediates/frameworks/av/media/libaudioclient/audiopolicy-aidl-cpp-source/gen/staging/android/media/GetOutputForAttrResponse.cpp.d -h out/soong/.intermediates/frameworks/av/media/libaudioclient/audiopolicy-aidl-cpp-source/gen/include/staging -o out/soong/.intermediates/frameworks/av/media/libaudioclient/audiopolicy-aidl-cpp-source/gen/staging -Nframeworks/av/media/libaudioclient/aidl frameworks/av/media/libaudioclient/aidl/android/media/GetOutputForAttrResponse.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 <android/binder_to_string.h>
12 #include <android/media/audio/common/AudioAttributes.h>
13 #include <android/media/audio/common/AudioConfigBase.h>
14 #include <android/media/audio/common/AudioStreamType.h>
15 #include <binder/Parcel.h>
16 #include <binder/Status.h>
17 #include <cstdint>
18 #include <tuple>
19 #include <utils/String16.h>
20 #include <vector>
21 
22 namespace android::media::audio::common {
23 class AudioAttributes;
24 class AudioConfigBase;
25 }  // namespace android::media::audio::common
26 namespace android {
27 namespace media {
28 class LIBBINDER_EXPORTED GetOutputForAttrResponse : public ::android::Parcelable {
29 public:
30   int32_t output = 0;
31   ::android::media::audio::common::AudioStreamType stream = ::android::media::audio::common::AudioStreamType(0);
32   ::std::vector<int32_t> selectedDeviceIds;
33   int32_t portId = 0;
34   ::std::vector<int32_t> secondaryOutputs;
35   bool isSpatialized = false;
36   ::android::media::audio::common::AudioConfigBase configBase;
37   bool isBitPerfect = false;
38   ::android::media::audio::common::AudioAttributes attr;
39   float volume = 0.000000f;
40   bool muted = false;
41   inline bool operator==(const GetOutputForAttrResponse& _rhs) const {
42     return std::tie(output, stream, selectedDeviceIds, portId, secondaryOutputs, isSpatialized, configBase, isBitPerfect, attr, volume, muted) == std::tie(_rhs.output, _rhs.stream, _rhs.selectedDeviceIds, _rhs.portId, _rhs.secondaryOutputs, _rhs.isSpatialized, _rhs.configBase, _rhs.isBitPerfect, _rhs.attr, _rhs.volume, _rhs.muted);
43   }
44   inline bool operator<(const GetOutputForAttrResponse& _rhs) const {
45     return std::tie(output, stream, selectedDeviceIds, portId, secondaryOutputs, isSpatialized, configBase, isBitPerfect, attr, volume, muted) < std::tie(_rhs.output, _rhs.stream, _rhs.selectedDeviceIds, _rhs.portId, _rhs.secondaryOutputs, _rhs.isSpatialized, _rhs.configBase, _rhs.isBitPerfect, _rhs.attr, _rhs.volume, _rhs.muted);
46   }
47   inline bool operator!=(const GetOutputForAttrResponse& _rhs) const {
48     return !(*this == _rhs);
49   }
50   inline bool operator>(const GetOutputForAttrResponse& _rhs) const {
51     return _rhs < *this;
52   }
53   inline bool operator>=(const GetOutputForAttrResponse& _rhs) const {
54     return !(*this < _rhs);
55   }
56   inline bool operator<=(const GetOutputForAttrResponse& _rhs) const {
57     return !(_rhs < *this);
58   }
59 
60   ::android::status_t readFromParcel(const ::android::Parcel* _aidl_parcel) final;
61   ::android::status_t writeToParcel(::android::Parcel* _aidl_parcel) const final;
getParcelableDescriptor()62   static const ::android::String16& getParcelableDescriptor() {
63     static const ::android::StaticString16 DESCRIPTOR (u"android.media.GetOutputForAttrResponse");
64     return DESCRIPTOR;
65   }
toString()66   inline std::string toString() const {
67     std::ostringstream _aidl_os;
68     _aidl_os << "GetOutputForAttrResponse{";
69     _aidl_os << "output: " << ::android::internal::ToString(output);
70     _aidl_os << ", stream: " << ::android::internal::ToString(stream);
71     _aidl_os << ", selectedDeviceIds: " << ::android::internal::ToString(selectedDeviceIds);
72     _aidl_os << ", portId: " << ::android::internal::ToString(portId);
73     _aidl_os << ", secondaryOutputs: " << ::android::internal::ToString(secondaryOutputs);
74     _aidl_os << ", isSpatialized: " << ::android::internal::ToString(isSpatialized);
75     _aidl_os << ", configBase: " << ::android::internal::ToString(configBase);
76     _aidl_os << ", isBitPerfect: " << ::android::internal::ToString(isBitPerfect);
77     _aidl_os << ", attr: " << ::android::internal::ToString(attr);
78     _aidl_os << ", volume: " << ::android::internal::ToString(volume);
79     _aidl_os << ", muted: " << ::android::internal::ToString(muted);
80     _aidl_os << "}";
81     return _aidl_os.str();
82   }
83 };  // class GetOutputForAttrResponse
84 }  // namespace media
85 }  // namespace android
86