16 #ifndef AACE_AUDIO_AUDIO_OUTPUT_PROVIDER_H 17 #define AACE_AUDIO_AUDIO_OUTPUT_PROVIDER_H 19 #include <AACE/Core/PlatformInterface.h> 20 #include "AudioOutput.h" 29 enum class AudioOutputType { TTS, MUSIC, NOTIFICATION, ALARM, EARCON, COMMUNICATION, RINGTONE };
32 AudioOutputProvider() =
default;
35 virtual ~AudioOutputProvider();
37 virtual std::shared_ptr<AudioOutput> openChannel(
const std::string& name, AudioOutputType type) = 0;
40 inline std::ostream& operator<<(std::ostream& stream,
const AudioOutputProvider::AudioOutputType& audioOutputType) {
41 switch (audioOutputType) {
42 case AudioOutputProvider::AudioOutputType::TTS:
45 case AudioOutputProvider::AudioOutputType::MUSIC:
48 case AudioOutputProvider::AudioOutputType::NOTIFICATION:
49 stream <<
"NOTIFICATION";
51 case AudioOutputProvider::AudioOutputType::ALARM:
54 case AudioOutputProvider::AudioOutputType::EARCON:
57 case AudioOutputProvider::AudioOutputType::COMMUNICATION:
58 stream <<
"COMMUNICATION";
60 case AudioOutputProvider::AudioOutputType::RINGTONE:
70 #endif // AACE_AUDIO_AUDIO_OUTPUT_PROVIDER_H
Definition: AddressBook.h:26