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/media/libaudioclient/audioclient-types-aidl_interface/preprocessed.aidl -pout/soong/.intermediates/frameworks/native/libs/permission/framework-permission-aidl_interface/preprocessed.aidl --ninja -d out/soong/.intermediates/frameworks/av/media/libaudioclient/audiopolicy-types-aidl-cpp-source/gen/staging/android/media/AudioMix.cpp.d -h out/soong/.intermediates/frameworks/av/media/libaudioclient/audiopolicy-types-aidl-cpp-source/gen/include/staging -o out/soong/.intermediates/frameworks/av/media/libaudioclient/audiopolicy-types-aidl-cpp-source/gen/staging -Nframeworks/av/media/libaudioclient/aidl frameworks/av/media/libaudioclient/aidl/android/media/AudioMix.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/AudioMixMatchCriterion.h> 13 #include <android/media/AudioMixType.h> 14 #include <android/media/audio/common/AudioConfig.h> 15 #include <android/media/audio/common/AudioDevice.h> 16 #include <binder/IBinder.h> 17 #include <binder/Parcel.h> 18 #include <binder/Status.h> 19 #include <cstdint> 20 #include <tuple> 21 #include <utils/String16.h> 22 #include <vector> 23 24 namespace android::media { 25 class AudioMixMatchCriterion; 26 } // namespace android::media 27 namespace android::media::audio::common { 28 class AudioConfig; 29 class AudioDevice; 30 } // namespace android::media::audio::common 31 namespace android { 32 namespace media { 33 class LIBBINDER_EXPORTED AudioMix : public ::android::Parcelable { 34 public: 35 ::std::vector<::android::media::AudioMixMatchCriterion> criteria; 36 ::android::media::AudioMixType mixType = ::android::media::AudioMixType(0); 37 ::android::media::audio::common::AudioConfig format; 38 int32_t routeFlags = 0; 39 ::android::media::audio::common::AudioDevice device; 40 int32_t cbFlags = 0; 41 bool allowPrivilegedMediaPlaybackCapture = false; 42 bool voiceCommunicationCaptureAllowed = false; 43 ::android::sp<::android::IBinder> mToken; 44 int32_t mVirtualDeviceId = 0; 45 inline bool operator==(const AudioMix& _rhs) const { 46 return std::tie(criteria, mixType, format, routeFlags, device, cbFlags, allowPrivilegedMediaPlaybackCapture, voiceCommunicationCaptureAllowed, mToken, mVirtualDeviceId) == std::tie(_rhs.criteria, _rhs.mixType, _rhs.format, _rhs.routeFlags, _rhs.device, _rhs.cbFlags, _rhs.allowPrivilegedMediaPlaybackCapture, _rhs.voiceCommunicationCaptureAllowed, _rhs.mToken, _rhs.mVirtualDeviceId); 47 } 48 inline bool operator<(const AudioMix& _rhs) const { 49 return std::tie(criteria, mixType, format, routeFlags, device, cbFlags, allowPrivilegedMediaPlaybackCapture, voiceCommunicationCaptureAllowed, mToken, mVirtualDeviceId) < std::tie(_rhs.criteria, _rhs.mixType, _rhs.format, _rhs.routeFlags, _rhs.device, _rhs.cbFlags, _rhs.allowPrivilegedMediaPlaybackCapture, _rhs.voiceCommunicationCaptureAllowed, _rhs.mToken, _rhs.mVirtualDeviceId); 50 } 51 inline bool operator!=(const AudioMix& _rhs) const { 52 return !(*this == _rhs); 53 } 54 inline bool operator>(const AudioMix& _rhs) const { 55 return _rhs < *this; 56 } 57 inline bool operator>=(const AudioMix& _rhs) const { 58 return !(*this < _rhs); 59 } 60 inline bool operator<=(const AudioMix& _rhs) const { 61 return !(_rhs < *this); 62 } 63 64 ::android::status_t readFromParcel(const ::android::Parcel* _aidl_parcel) final; 65 ::android::status_t writeToParcel(::android::Parcel* _aidl_parcel) const final; getParcelableDescriptor()66 static const ::android::String16& getParcelableDescriptor() { 67 static const ::android::StaticString16 DESCRIPTOR (u"android.media.AudioMix"); 68 return DESCRIPTOR; 69 } toString()70 inline std::string toString() const { 71 std::ostringstream _aidl_os; 72 _aidl_os << "AudioMix{"; 73 _aidl_os << "criteria: " << ::android::internal::ToString(criteria); 74 _aidl_os << ", mixType: " << ::android::internal::ToString(mixType); 75 _aidl_os << ", format: " << ::android::internal::ToString(format); 76 _aidl_os << ", routeFlags: " << ::android::internal::ToString(routeFlags); 77 _aidl_os << ", device: " << ::android::internal::ToString(device); 78 _aidl_os << ", cbFlags: " << ::android::internal::ToString(cbFlags); 79 _aidl_os << ", allowPrivilegedMediaPlaybackCapture: " << ::android::internal::ToString(allowPrivilegedMediaPlaybackCapture); 80 _aidl_os << ", voiceCommunicationCaptureAllowed: " << ::android::internal::ToString(voiceCommunicationCaptureAllowed); 81 _aidl_os << ", mToken: " << ::android::internal::ToString(mToken); 82 _aidl_os << ", mVirtualDeviceId: " << ::android::internal::ToString(mVirtualDeviceId); 83 _aidl_os << "}"; 84 return _aidl_os.str(); 85 } 86 }; // class AudioMix 87 } // namespace media 88 } // namespace android 89