Browse Source

Add the C interface for the name API

tags/5.1.0
JP Cimalando 6 years ago
parent
commit
ee6fd4b460
2 changed files with 15 additions and 0 deletions
  1. +13
    -0
      rtaudio_c.cpp
  2. +2
    -0
      rtaudio_c.h

+ 13
- 0
rtaudio_c.cpp View File

@@ -50,6 +50,19 @@ const char *rtaudio_version() { return RTAUDIO_VERSION; }

const rtaudio_api_t *rtaudio_compiled_api() { return compiled_api; }

const char *rtaudio_compiled_api_name(rtaudio_api_t api) {
const std::string &name = RtAudio::getCompiledApiName((RtAudio::Api)api);
return name.empty() ? NULL : name.c_str();
}

rtaudio_api_t rtaudio_compiled_api_by_name(const char *name) {
RtAudio::Api api = RtAudio::UNSPECIFIED;
if (name) {
api = RtAudio::getCompiledApiByName(name);
}
return (rtaudio_api_t)api;
}

const char *rtaudio_error(rtaudio_t audio) {
if (audio->has_error) {
return audio->errmsg;


+ 2
- 0
rtaudio_c.h View File

@@ -102,6 +102,8 @@ typedef struct rtaudio *rtaudio_t;

RTAUDIOAPI const char *rtaudio_version(void);
RTAUDIOAPI const rtaudio_api_t *rtaudio_compiled_api(void);
RTAUDIOAPI const char *rtaudio_compiled_api_name(rtaudio_api_t api);
RTAUDIOAPI rtaudio_api_t rtaudio_compiled_api_by_name(const char *name);

RTAUDIOAPI const char *rtaudio_error(rtaudio_t audio);



Loading…
Cancel
Save