40 |
#if HAVE_ASIO |
#if HAVE_ASIO |
41 |
# include "AudioOutputDeviceAsio.h" |
# include "AudioOutputDeviceAsio.h" |
42 |
#endif // HAVE_ASIO |
#endif // HAVE_ASIO |
43 |
|
|
44 |
|
#if HAVE_COREAUDIO |
45 |
|
# include "AudioOutputDeviceCoreAudio.h" |
46 |
|
#endif // HAVE_COREAUDIO |
47 |
|
|
48 |
namespace LinuxSampler { |
namespace LinuxSampler { |
49 |
|
|
50 |
std::map<String, AudioOutputDeviceFactory::InnerFactory*> AudioOutputDeviceFactory::InnerFactories; |
std::map<String, AudioOutputDeviceFactory::InnerFactory*> AudioOutputDeviceFactory::InnerFactories; |
93 |
REGISTER_AUDIO_OUTPUT_DRIVER_PARAMETER(AudioOutputDeviceAsio, ParameterFragmentSize); |
REGISTER_AUDIO_OUTPUT_DRIVER_PARAMETER(AudioOutputDeviceAsio, ParameterFragmentSize); |
94 |
#endif // HAVE_ASIO |
#endif // HAVE_ASIO |
95 |
|
|
96 |
|
#if HAVE_COREAUDIO |
97 |
|
REGISTER_AUDIO_OUTPUT_DRIVER(AudioOutputDeviceCoreAudio); |
98 |
|
/* Common parameters for now they'll have to be registered here. */ |
99 |
|
REGISTER_AUDIO_OUTPUT_DRIVER_PARAMETER(AudioOutputDeviceCoreAudio, ParameterActive); |
100 |
|
REGISTER_AUDIO_OUTPUT_DRIVER_PARAMETER(AudioOutputDeviceCoreAudio, ParameterSampleRate); |
101 |
|
REGISTER_AUDIO_OUTPUT_DRIVER_PARAMETER(AudioOutputDeviceCoreAudio, ParameterChannels); |
102 |
|
REGISTER_AUDIO_OUTPUT_DRIVER_PARAMETER(AudioOutputDeviceCoreAudio, ParameterBuffers); |
103 |
|
REGISTER_AUDIO_OUTPUT_DRIVER_PARAMETER(AudioOutputDeviceCoreAudio, ParameterBufferSize); |
104 |
|
#endif // HAVE_COREAUDIO |
105 |
|
|
106 |
AudioOutputDevice* AudioOutputDeviceFactory::Create(String DriverName, std::map<String,String> Parameters) throw (Exception) { |
AudioOutputDevice* AudioOutputDeviceFactory::Create(String DriverName, std::map<String,String> Parameters) throw (Exception) { |
107 |
if (!InnerFactories.count(DriverName)) throw Exception("There is no audio output driver '" + DriverName + "'."); |
if (!InnerFactories.count(DriverName)) throw Exception("There is no audio output driver '" + DriverName + "'."); |
108 |
//Let's see if we need to create parameters |
//Let's see if we need to create parameters |