1 #ifndef ANDROID_HARDWARE_AUTOMOTIVE_AUDIOCONTROL_FADE_ENUMS_H
2 #define ANDROID_HARDWARE_AUTOMOTIVE_AUDIOCONTROL_FADE_ENUMS_H
3 
4 #include <array>
5 #include <string>
6 
7 #include <xsdc/XsdcSupport.h>
8 
9 namespace android {
10     namespace hardware {
11         namespace automotive {
12             namespace audiocontrol {
13                 namespace fade {
14                     enum class FadeStateEnumType {
15                         UNKNOWN = -1,
16                         _0,
17                         _1,
18                         FADE_STATE_DISABLED,
19                         FADE_STATE_ENABLED_DEFAULT,
20                     };
21                     FadeStateEnumType stringToFadeStateEnumType(const std::string& value);
22                     std::string toString(FadeStateEnumType o);
23 
24                     enum class UsageEnumType {
25                         UNKNOWN = -1,
26                         AUDIO_USAGE_UNKNOWN,
27                         AUDIO_USAGE_MEDIA,
28                         AUDIO_USAGE_VOICE_COMMUNICATION,
29                         AUDIO_USAGE_VOICE_COMMUNICATION_SIGNALLING,
30                         AUDIO_USAGE_ALARM,
31                         AUDIO_USAGE_NOTIFICATION,
32                         AUDIO_USAGE_NOTIFICATION_TELEPHONY_RINGTONE,
33                         AUDIO_USAGE_NOTIFICATION_COMMUNICATION_REQUEST,
34                         AUDIO_USAGE_NOTIFICATION_COMMUNICATION_INSTANT,
35                         AUDIO_USAGE_NOTIFICATION_COMMUNICATION_DELAYED,
36                         AUDIO_USAGE_NOTIFICATION_EVENT,
37                         AUDIO_USAGE_ASSISTANCE_ACCESSIBILITY,
38                         AUDIO_USAGE_ASSISTANCE_NAVIGATION_GUIDANCE,
39                         AUDIO_USAGE_ASSISTANCE_SONIFICATION,
40                         AUDIO_USAGE_GAME,
41                         AUDIO_USAGE_VIRTUAL_SOURCE,
42                         AUDIO_USAGE_ASSISTANT,
43                         AUDIO_USAGE_CALL_ASSISTANT,
44                         AUDIO_USAGE_EMERGENCY,
45                         AUDIO_USAGE_SAFETY,
46                         AUDIO_USAGE_VEHICLE_STATUS,
47                         AUDIO_USAGE_ANNOUNCEMENT,
48                     };
49                     UsageEnumType stringToUsageEnumType(const std::string& value);
50                     std::string toString(UsageEnumType o);
51 
52                     enum class ContentTypeEnum {
53                         UNKNOWN = -1,
54                         AUDIO_CONTENT_TYPE_UNKNOWN,
55                         AUDIO_CONTENT_TYPE_SPEECH,
56                         AUDIO_CONTENT_TYPE_MUSIC,
57                         AUDIO_CONTENT_TYPE_MOVIE,
58                         AUDIO_CONTENT_TYPE_SONIFICATION,
59                     };
60                     ContentTypeEnum stringToContentTypeEnum(const std::string& value);
61                     std::string toString(ContentTypeEnum o);
62 
63                 } // fade
64             } // audiocontrol
65         } // automotive
66     } // hardware
67 } // android
68 
69 //
70 // global type declarations for package
71 //
72 
73 namespace android {
74     namespace details {
75         template<> inline constexpr std::array<::android::hardware::automotive::audiocontrol::fade::FadeStateEnumType, 4> xsdc_enum_values<::android::hardware::automotive::audiocontrol::fade::FadeStateEnumType> = {
76             ::android::hardware::automotive::audiocontrol::fade::FadeStateEnumType::_0,
77             ::android::hardware::automotive::audiocontrol::fade::FadeStateEnumType::_1,
78             ::android::hardware::automotive::audiocontrol::fade::FadeStateEnumType::FADE_STATE_DISABLED,
79             ::android::hardware::automotive::audiocontrol::fade::FadeStateEnumType::FADE_STATE_ENABLED_DEFAULT,
80         };
81         template<> inline constexpr std::array<::android::hardware::automotive::audiocontrol::fade::UsageEnumType, 22> xsdc_enum_values<::android::hardware::automotive::audiocontrol::fade::UsageEnumType> = {
82             ::android::hardware::automotive::audiocontrol::fade::UsageEnumType::AUDIO_USAGE_UNKNOWN,
83             ::android::hardware::automotive::audiocontrol::fade::UsageEnumType::AUDIO_USAGE_MEDIA,
84             ::android::hardware::automotive::audiocontrol::fade::UsageEnumType::AUDIO_USAGE_VOICE_COMMUNICATION,
85             ::android::hardware::automotive::audiocontrol::fade::UsageEnumType::AUDIO_USAGE_VOICE_COMMUNICATION_SIGNALLING,
86             ::android::hardware::automotive::audiocontrol::fade::UsageEnumType::AUDIO_USAGE_ALARM,
87             ::android::hardware::automotive::audiocontrol::fade::UsageEnumType::AUDIO_USAGE_NOTIFICATION,
88             ::android::hardware::automotive::audiocontrol::fade::UsageEnumType::AUDIO_USAGE_NOTIFICATION_TELEPHONY_RINGTONE,
89             ::android::hardware::automotive::audiocontrol::fade::UsageEnumType::AUDIO_USAGE_NOTIFICATION_COMMUNICATION_REQUEST,
90             ::android::hardware::automotive::audiocontrol::fade::UsageEnumType::AUDIO_USAGE_NOTIFICATION_COMMUNICATION_INSTANT,
91             ::android::hardware::automotive::audiocontrol::fade::UsageEnumType::AUDIO_USAGE_NOTIFICATION_COMMUNICATION_DELAYED,
92             ::android::hardware::automotive::audiocontrol::fade::UsageEnumType::AUDIO_USAGE_NOTIFICATION_EVENT,
93             ::android::hardware::automotive::audiocontrol::fade::UsageEnumType::AUDIO_USAGE_ASSISTANCE_ACCESSIBILITY,
94             ::android::hardware::automotive::audiocontrol::fade::UsageEnumType::AUDIO_USAGE_ASSISTANCE_NAVIGATION_GUIDANCE,
95             ::android::hardware::automotive::audiocontrol::fade::UsageEnumType::AUDIO_USAGE_ASSISTANCE_SONIFICATION,
96             ::android::hardware::automotive::audiocontrol::fade::UsageEnumType::AUDIO_USAGE_GAME,
97             ::android::hardware::automotive::audiocontrol::fade::UsageEnumType::AUDIO_USAGE_VIRTUAL_SOURCE,
98             ::android::hardware::automotive::audiocontrol::fade::UsageEnumType::AUDIO_USAGE_ASSISTANT,
99             ::android::hardware::automotive::audiocontrol::fade::UsageEnumType::AUDIO_USAGE_CALL_ASSISTANT,
100             ::android::hardware::automotive::audiocontrol::fade::UsageEnumType::AUDIO_USAGE_EMERGENCY,
101             ::android::hardware::automotive::audiocontrol::fade::UsageEnumType::AUDIO_USAGE_SAFETY,
102             ::android::hardware::automotive::audiocontrol::fade::UsageEnumType::AUDIO_USAGE_VEHICLE_STATUS,
103             ::android::hardware::automotive::audiocontrol::fade::UsageEnumType::AUDIO_USAGE_ANNOUNCEMENT,
104         };
105         template<> inline constexpr std::array<::android::hardware::automotive::audiocontrol::fade::ContentTypeEnum, 5> xsdc_enum_values<::android::hardware::automotive::audiocontrol::fade::ContentTypeEnum> = {
106             ::android::hardware::automotive::audiocontrol::fade::ContentTypeEnum::AUDIO_CONTENT_TYPE_UNKNOWN,
107             ::android::hardware::automotive::audiocontrol::fade::ContentTypeEnum::AUDIO_CONTENT_TYPE_SPEECH,
108             ::android::hardware::automotive::audiocontrol::fade::ContentTypeEnum::AUDIO_CONTENT_TYPE_MUSIC,
109             ::android::hardware::automotive::audiocontrol::fade::ContentTypeEnum::AUDIO_CONTENT_TYPE_MOVIE,
110             ::android::hardware::automotive::audiocontrol::fade::ContentTypeEnum::AUDIO_CONTENT_TYPE_SONIFICATION,
111         };
112     }  // namespace details
113 }  // namespace android
114 
115 #endif // ANDROID_HARDWARE_AUTOMOTIVE_AUDIOCONTROL_FADE_ENUMS_H
116