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 -Werror -Weverything --structured --version 1 --hash notfrozen -t --stability vintf --min_sdk_version current -pout/soong/.intermediates/system/hardware/interfaces/media/android.media.audio.common.types_interface/4/preprocessed.aidl --ninja -d out/soong/.intermediates/system/hardware/interfaces/media/android.media.audio.eraser.types-V1-ndk-source/gen/staging/android/media/audio/eraser/Configuration.cpp.d -h out/soong/.intermediates/system/hardware/interfaces/media/android.media.audio.eraser.types-V1-ndk-source/gen/include/staging -o out/soong/.intermediates/system/hardware/interfaces/media/android.media.audio.eraser.types-V1-ndk-source/gen/staging -Nsystem/hardware/interfaces/media/aidl system/hardware/interfaces/media/aidl/android/media/audio/eraser/Configuration.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/media/audio/eraser/ClassificationConfig.h>
20 #include <aidl/android/media/audio/eraser/IEraserCallback.h>
21 #include <aidl/android/media/audio/eraser/Mode.h>
22 #ifdef BINDER_STABILITY_SUPPORT
23 #include <android/binder_stability.h>
24 #endif  // BINDER_STABILITY_SUPPORT
25 
26 namespace aidl::android::media::audio::eraser {
27 class ClassificationConfig;
28 class IEraserCallback;
29 }  // namespace aidl::android::media::audio::eraser
30 namespace aidl {
31 namespace android {
32 namespace media {
33 namespace audio {
34 namespace eraser {
35 class Configuration {
36 public:
37   typedef std::false_type fixed_size;
38   static const char* descriptor;
39 
40   ::aidl::android::media::audio::eraser::Mode mode = ::aidl::android::media::audio::eraser::Mode::ERASER;
41   std::vector<::aidl::android::media::audio::eraser::ClassificationConfig> classificationConfigs;
42   int32_t maxClassificationMetadata = 5;
43   std::shared_ptr<::aidl::android::media::audio::eraser::IEraserCallback> callback;
44 
45   binder_status_t readFromParcel(const AParcel* parcel);
46   binder_status_t writeToParcel(AParcel* parcel) const;
47 
48   inline bool operator==(const Configuration& _rhs) const {
49     return std::tie(mode, classificationConfigs, maxClassificationMetadata, callback) == std::tie(_rhs.mode, _rhs.classificationConfigs, _rhs.maxClassificationMetadata, _rhs.callback);
50   }
51   inline bool operator<(const Configuration& _rhs) const {
52     return std::tie(mode, classificationConfigs, maxClassificationMetadata, callback) < std::tie(_rhs.mode, _rhs.classificationConfigs, _rhs.maxClassificationMetadata, _rhs.callback);
53   }
54   inline bool operator!=(const Configuration& _rhs) const {
55     return !(*this == _rhs);
56   }
57   inline bool operator>(const Configuration& _rhs) const {
58     return _rhs < *this;
59   }
60   inline bool operator>=(const Configuration& _rhs) const {
61     return !(*this < _rhs);
62   }
63   inline bool operator<=(const Configuration& _rhs) const {
64     return !(_rhs < *this);
65   }
66 
67   static const ::ndk::parcelable_stability_t _aidl_stability = ::ndk::STABILITY_VINTF;
toString()68   inline std::string toString() const {
69     std::ostringstream _aidl_os;
70     _aidl_os << "Configuration{";
71     _aidl_os << "mode: " << ::android::internal::ToString(mode);
72     _aidl_os << ", classificationConfigs: " << ::android::internal::ToString(classificationConfigs);
73     _aidl_os << ", maxClassificationMetadata: " << ::android::internal::ToString(maxClassificationMetadata);
74     _aidl_os << ", callback: " << ::android::internal::ToString(callback);
75     _aidl_os << "}";
76     return _aidl_os.str();
77   }
78 };
79 }  // namespace eraser
80 }  // namespace audio
81 }  // namespace media
82 }  // namespace android
83 }  // namespace aidl
84