37 |
# include "AudioOutputDeviceArts.h" |
# include "AudioOutputDeviceArts.h" |
38 |
#endif // HAVE_ARTS |
#endif // HAVE_ARTS |
39 |
|
|
40 |
|
#if HAVE_ASIO |
41 |
|
# include "AudioOutputDeviceAsio.h" |
42 |
|
#endif // HAVE_ASIO |
43 |
namespace LinuxSampler { |
namespace LinuxSampler { |
44 |
|
|
45 |
std::map<String, AudioOutputDeviceFactory::InnerFactory*> AudioOutputDeviceFactory::InnerFactories; |
std::map<String, AudioOutputDeviceFactory::InnerFactory*> AudioOutputDeviceFactory::InnerFactories; |
76 |
REGISTER_AUDIO_OUTPUT_DRIVER_PARAMETER(AudioOutputDeviceArts, ParameterName); |
REGISTER_AUDIO_OUTPUT_DRIVER_PARAMETER(AudioOutputDeviceArts, ParameterName); |
77 |
#endif // HAVE_ARTS |
#endif // HAVE_ARTS |
78 |
|
|
79 |
|
#if HAVE_ASIO |
80 |
|
REGISTER_AUDIO_OUTPUT_DRIVER(AudioOutputDeviceAsio); |
81 |
|
/* Common parameters for now they'll have to be registered here. */ |
82 |
|
REGISTER_AUDIO_OUTPUT_DRIVER_PARAMETER(AudioOutputDeviceAsio, ParameterActive); |
83 |
|
REGISTER_AUDIO_OUTPUT_DRIVER_PARAMETER(AudioOutputDeviceAsio, ParameterSampleRate); |
84 |
|
REGISTER_AUDIO_OUTPUT_DRIVER_PARAMETER(AudioOutputDeviceAsio, ParameterChannels); |
85 |
|
/* Driver specific parameters */ |
86 |
|
REGISTER_AUDIO_OUTPUT_DRIVER_PARAMETER(AudioOutputDeviceAsio, ParameterCard); |
87 |
|
REGISTER_AUDIO_OUTPUT_DRIVER_PARAMETER(AudioOutputDeviceAsio, ParameterFragmentSize); |
88 |
|
#endif // HAVE_ASIO |
89 |
|
|
90 |
AudioOutputDevice* AudioOutputDeviceFactory::Create(String DriverName, std::map<String,String> Parameters) throw (Exception) { |
AudioOutputDevice* AudioOutputDeviceFactory::Create(String DriverName, std::map<String,String> Parameters) throw (Exception) { |
91 |
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 + "'."); |
92 |
//Let's see if we need to create parameters |
//Let's see if we need to create parameters |