2015-02-09 21:44:32 +01:00
|
|
|
/** @file
|
|
|
|
* @author Edouard DUPIN
|
|
|
|
* @copyright 2011, Edouard DUPIN, all right reserved
|
|
|
|
* @license APACHE v2.0 (see license file)
|
|
|
|
* @fork from RTAudio
|
2014-03-11 21:46:00 +01:00
|
|
|
*/
|
|
|
|
|
2015-02-06 23:54:08 +01:00
|
|
|
#if !defined(__AIRTAUDIO_DUMMY__) && defined(__DUMMY__)
|
|
|
|
#define __AIRTAUDIO_DUMMY__
|
2014-03-11 21:46:00 +01:00
|
|
|
|
|
|
|
#include <airtaudio/Interface.h>
|
|
|
|
|
|
|
|
namespace airtaudio {
|
|
|
|
namespace api {
|
|
|
|
class Dummy: public airtaudio::Api {
|
2014-03-11 22:37:22 +01:00
|
|
|
public:
|
2014-05-15 21:37:39 +02:00
|
|
|
static airtaudio::Api* Create();
|
2014-03-11 21:46:00 +01:00
|
|
|
public:
|
2014-05-15 21:37:39 +02:00
|
|
|
Dummy();
|
2015-02-06 23:54:08 +01:00
|
|
|
enum airtaudio::type getCurrentApi() {
|
|
|
|
return airtaudio::type_dummy;
|
2014-03-11 21:46:00 +01:00
|
|
|
}
|
2014-05-15 21:37:39 +02:00
|
|
|
uint32_t getDeviceCount();
|
2014-03-11 21:46:00 +01:00
|
|
|
airtaudio::DeviceInfo getDeviceInfo(uint32_t _device);
|
2015-02-06 23:54:08 +01:00
|
|
|
enum airtaudio::error closeStream();
|
|
|
|
enum airtaudio::error startStream();
|
|
|
|
enum airtaudio::error stopStream();
|
|
|
|
enum airtaudio::error abortStream();
|
2014-03-11 21:46:00 +01:00
|
|
|
private:
|
|
|
|
bool probeDeviceOpen(uint32_t _device,
|
2015-02-06 23:54:08 +01:00
|
|
|
airtaudio::mode _mode,
|
2014-03-11 21:46:00 +01:00
|
|
|
uint32_t _channels,
|
|
|
|
uint32_t _firstChannel,
|
|
|
|
uint32_t _sampleRate,
|
2015-02-05 23:31:22 +01:00
|
|
|
audio::format _format,
|
2014-03-11 21:46:00 +01:00
|
|
|
uint32_t *_bufferSize,
|
|
|
|
airtaudio::StreamOptions *_options);
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
#endif
|