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 4 --hash notfrozen -t --stability vintf --min_sdk_version 29 --previous_api_dir=system/hardware/interfaces/media/aidl_api/android.media.audio.common.types/3 --previous_hash 0c86a38729dd5d560fe3a0eca6aa9d8cf83efb00 --ninja -d out/soong/.intermediates/system/hardware/interfaces/media/android.media.audio.common.types-V4-ndk-source/gen/staging/android/media/audio/common/AudioPlaybackRate.cpp.d -h out/soong/.intermediates/system/hardware/interfaces/media/android.media.audio.common.types-V4-ndk-source/gen/include/staging -o out/soong/.intermediates/system/hardware/interfaces/media/android.media.audio.common.types-V4-ndk-source/gen/staging -Nsystem/hardware/interfaces/media/aidl system/hardware/interfaces/media/aidl/android/media/audio/common/AudioPlaybackRate.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/media/audio/common/AudioPlaybackRate.h>
22 #ifdef BINDER_STABILITY_SUPPORT
23 #include <android/binder_stability.h>
24 #endif // BINDER_STABILITY_SUPPORT
25
26 namespace aidl {
27 namespace android {
28 namespace media {
29 namespace audio {
30 namespace common {
31 class AudioPlaybackRate {
32 public:
33 typedef std::false_type fixed_size;
34 static const char* descriptor;
35
36 enum class TimestretchMode : int32_t {
37 DEFAULT = 0,
38 VOICE = 1,
39 };
40
41 enum class TimestretchFallbackMode : int32_t {
42 SYS_RESERVED_CUT_REPEAT = -1,
43 SYS_RESERVED_DEFAULT = 0,
44 MUTE = 1,
45 FAIL = 2,
46 };
47
48 float speed = 0.000000f;
49 float pitch = 0.000000f;
50 ::aidl::android::media::audio::common::AudioPlaybackRate::TimestretchMode timestretchMode = ::aidl::android::media::audio::common::AudioPlaybackRate::TimestretchMode::DEFAULT;
51 ::aidl::android::media::audio::common::AudioPlaybackRate::TimestretchFallbackMode fallbackMode = ::aidl::android::media::audio::common::AudioPlaybackRate::TimestretchFallbackMode::SYS_RESERVED_DEFAULT;
52
53 binder_status_t readFromParcel(const AParcel* parcel);
54 binder_status_t writeToParcel(AParcel* parcel) const;
55
56 inline bool operator==(const AudioPlaybackRate& _rhs) const {
57 return std::tie(speed, pitch, timestretchMode, fallbackMode) == std::tie(_rhs.speed, _rhs.pitch, _rhs.timestretchMode, _rhs.fallbackMode);
58 }
59 inline bool operator<(const AudioPlaybackRate& _rhs) const {
60 return std::tie(speed, pitch, timestretchMode, fallbackMode) < std::tie(_rhs.speed, _rhs.pitch, _rhs.timestretchMode, _rhs.fallbackMode);
61 }
62 inline bool operator!=(const AudioPlaybackRate& _rhs) const {
63 return !(*this == _rhs);
64 }
65 inline bool operator>(const AudioPlaybackRate& _rhs) const {
66 return _rhs < *this;
67 }
68 inline bool operator>=(const AudioPlaybackRate& _rhs) const {
69 return !(*this < _rhs);
70 }
71 inline bool operator<=(const AudioPlaybackRate& _rhs) const {
72 return !(_rhs < *this);
73 }
74
75 static const ::ndk::parcelable_stability_t _aidl_stability = ::ndk::STABILITY_VINTF;
toString()76 inline std::string toString() const {
77 std::ostringstream _aidl_os;
78 _aidl_os << "AudioPlaybackRate{";
79 _aidl_os << "speed: " << ::android::internal::ToString(speed);
80 _aidl_os << ", pitch: " << ::android::internal::ToString(pitch);
81 _aidl_os << ", timestretchMode: " << ::android::internal::ToString(timestretchMode);
82 _aidl_os << ", fallbackMode: " << ::android::internal::ToString(fallbackMode);
83 _aidl_os << "}";
84 return _aidl_os.str();
85 }
86 };
87 } // namespace common
88 } // namespace audio
89 } // namespace media
90 } // namespace android
91 } // namespace aidl
92 namespace aidl {
93 namespace android {
94 namespace media {
95 namespace audio {
96 namespace common {
toString(AudioPlaybackRate::TimestretchMode val)97 [[nodiscard]] static inline std::string toString(AudioPlaybackRate::TimestretchMode val) {
98 switch(val) {
99 case AudioPlaybackRate::TimestretchMode::DEFAULT:
100 return "DEFAULT";
101 case AudioPlaybackRate::TimestretchMode::VOICE:
102 return "VOICE";
103 default:
104 return std::to_string(static_cast<int32_t>(val));
105 }
106 }
107 } // namespace common
108 } // namespace audio
109 } // namespace media
110 } // namespace android
111 } // namespace aidl
112 namespace ndk {
113 namespace internal {
114 #pragma clang diagnostic push
115 #pragma clang diagnostic ignored "-Wc++17-extensions"
116 template <>
117 constexpr inline std::array<aidl::android::media::audio::common::AudioPlaybackRate::TimestretchMode, 2> enum_values<aidl::android::media::audio::common::AudioPlaybackRate::TimestretchMode> = {
118 aidl::android::media::audio::common::AudioPlaybackRate::TimestretchMode::DEFAULT,
119 aidl::android::media::audio::common::AudioPlaybackRate::TimestretchMode::VOICE,
120 };
121 #pragma clang diagnostic pop
122 } // namespace internal
123 } // namespace ndk
124 namespace aidl {
125 namespace android {
126 namespace media {
127 namespace audio {
128 namespace common {
toString(AudioPlaybackRate::TimestretchFallbackMode val)129 [[nodiscard]] static inline std::string toString(AudioPlaybackRate::TimestretchFallbackMode val) {
130 switch(val) {
131 case AudioPlaybackRate::TimestretchFallbackMode::SYS_RESERVED_CUT_REPEAT:
132 return "SYS_RESERVED_CUT_REPEAT";
133 case AudioPlaybackRate::TimestretchFallbackMode::SYS_RESERVED_DEFAULT:
134 return "SYS_RESERVED_DEFAULT";
135 case AudioPlaybackRate::TimestretchFallbackMode::MUTE:
136 return "MUTE";
137 case AudioPlaybackRate::TimestretchFallbackMode::FAIL:
138 return "FAIL";
139 default:
140 return std::to_string(static_cast<int32_t>(val));
141 }
142 }
143 } // namespace common
144 } // namespace audio
145 } // namespace media
146 } // namespace android
147 } // namespace aidl
148 namespace ndk {
149 namespace internal {
150 #pragma clang diagnostic push
151 #pragma clang diagnostic ignored "-Wc++17-extensions"
152 template <>
153 constexpr inline std::array<aidl::android::media::audio::common::AudioPlaybackRate::TimestretchFallbackMode, 4> enum_values<aidl::android::media::audio::common::AudioPlaybackRate::TimestretchFallbackMode> = {
154 aidl::android::media::audio::common::AudioPlaybackRate::TimestretchFallbackMode::SYS_RESERVED_CUT_REPEAT,
155 aidl::android::media::audio::common::AudioPlaybackRate::TimestretchFallbackMode::SYS_RESERVED_DEFAULT,
156 aidl::android::media::audio::common::AudioPlaybackRate::TimestretchFallbackMode::MUTE,
157 aidl::android::media::audio::common::AudioPlaybackRate::TimestretchFallbackMode::FAIL,
158 };
159 #pragma clang diagnostic pop
160 } // namespace internal
161 } // namespace ndk
162