X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=RtAudio.h;h=c83caffee26def8fd20296329c67cfddc0ac2fa5;hb=e41e3e845d847c7eb9e33af966888f1a09ecef56;hp=91124cf104e85c3a5e8b9e885d233f30f2210fcd;hpb=f7b624ba819036b9ebfb3f4d0517fd45e01919b2;p=rtaudio-cdist.git diff --git a/RtAudio.h b/RtAudio.h index 91124cf..c83caff 100644 --- a/RtAudio.h +++ b/RtAudio.h @@ -48,7 +48,11 @@ #define RTAUDIO_VERSION "5.0.0" #if defined _WIN32 || defined __CYGWIN__ - #define RTAUDIO_DLL_PUBLIC + #if defined(RTAUDIO_EXPORT) + #define RTAUDIO_DLL_PUBLIC __declspec(dllexport) + #else + #define RTAUDIO_DLL_PUBLIC + #endif #else #if __GNUC__ >= 4 #define RTAUDIO_DLL_PUBLIC __attribute__( (visibility( "default" )) ) @@ -112,7 +116,7 @@ static const RtAudioFormat RTAUDIO_FLOAT64 = 0x20; // Normalized between plus/mi Certain audio APIs offer a number of parameters that influence the I/O latency of a stream. By default, RtAudio will attempt to set these parameters internally for robust (glitch-free) performance - (though some APIs, like Windows Direct Sound, make this difficult). + (though some APIs, like Windows DirectSound, make this difficult). By passing the RTAUDIO_MINIMIZE_LATENCY flag to the openStream() function, internal stream settings will be influenced in an attempt to minimize stream latency, though possibly at the expense of stream @@ -284,8 +288,9 @@ class RTAUDIO_DLL_PUBLIC RtAudio MACOSX_CORE, /*!< Macintosh OS-X Core Audio API. */ WINDOWS_WASAPI, /*!< The Microsoft WASAPI API. */ WINDOWS_ASIO, /*!< The Steinberg Audio Stream I/O API. */ - WINDOWS_DS, /*!< The Microsoft Direct Sound API. */ - RTAUDIO_DUMMY /*!< A compilable but non-functional API. */ + WINDOWS_DS, /*!< The Microsoft DirectSound API. */ + RTAUDIO_DUMMY, /*!< A compilable but non-functional API. */ + NUM_APIS /*!< Number of values in this enum. */ }; //! The public device information structure for returning queried values. @@ -298,7 +303,7 @@ class RTAUDIO_DLL_PUBLIC RtAudio bool isDefaultOutput; /*!< true if this is the default output device. */ bool isDefaultInput; /*!< true if this is the default input device. */ std::vector sampleRates; /*!< Supported sample rates (queried from list of standard rates). */ - unsigned int preferredSampleRate; /*!< Preferred sample rate, eg. for WASAPI the system sample rate. */ + unsigned int preferredSampleRate; /*!< Preferred sample rate, e.g. for WASAPI the system sample rate. */ RtAudioFormat nativeFormats; /*!< Bit mask of supported data formats. */ // Default constructor. @@ -343,7 +348,7 @@ class RTAUDIO_DLL_PUBLIC RtAudio Certain audio APIs offer a number of parameters that influence the I/O latency of a stream. By default, RtAudio will attempt to set these parameters internally for robust (glitch-free) performance - (though some APIs, like Windows Direct Sound, make this difficult). + (though some APIs, like Windows DirectSound, make this difficult). By passing the RTAUDIO_MINIMIZE_LATENCY flag to the openStream() function, internal stream settings will be influenced in an attempt to minimize stream latency, though possibly at the expense of stream @@ -399,10 +404,18 @@ class RTAUDIO_DLL_PUBLIC RtAudio //! Return the name of a specified compiled audio API. /*! - If the API is unknown or not compiled, this function will return - the empty string. + This obtains a short lower-case name used for identification purposes. + This value is guaranteed to remain identical across library versions. + If the API is unknown, this function will return the empty string. + */ + static std::string getApiName( RtAudio::Api api ); + + //! Return the display name of a specified compiled audio API. + /*! + This obtains a long name used for display purposes. + If the API is unknown, this function will return the empty string. */ - static const std::string &getCompiledApiName( RtAudio::Api api ); + static std::string getApiDisplayName( RtAudio::Api api ); //! Return the compiled audio API having the given name. /*! @@ -1028,7 +1041,7 @@ class RtApiWasapi : public RtApi { public: RtApiWasapi(); - ~RtApiWasapi(); + virtual ~RtApiWasapi(); RtAudio::Api getCurrentApi( void ) { return RtAudio::WINDOWS_WASAPI; } unsigned int getDeviceCount( void );