Merge remote-tracking branch 'upstream/pr/136'
[rtaudio-cdist.git] / RtAudio.h
index 976ada06133fb0a470bca0c29553263034460709..d6038dbc976ad23d2e10fe1bae1d64be08f3df5f 100644 (file)
--- a/RtAudio.h
+++ b/RtAudio.h
 #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" )) )
@@ -398,30 +402,20 @@ class RTAUDIO_DLL_PUBLIC RtAudio
   */
   static void getCompiledApi( std::vector<RtAudio::Api> &apis );
 
-  //! A static function to determine the available compiled audio APIs.
-  /*!
-    The values returned in the std::vector can be compared against
-    the enumerated list values.  Note that there can be more than one
-    API compiled for certain operating systems.
-  */
-  static const std::vector<RtAudio::Api>& getCompiledApis();
-
   //! Return the name of a specified compiled audio API.
   /*!
     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 or not compiled, this function will return
-    the empty string.
+    If the API is unknown, this function will return the empty string.
   */
-  static const std::string getCompiledApiName( RtAudio::Api api );
+  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 or not compiled, this function will return
-    the empty string.
+    If the API is unknown, this function will return the empty string.
   */
-  static const std::string getCompiledApiDisplayName( RtAudio::Api api );
+  static std::string getApiDisplayName( RtAudio::Api api );
 
   //! Return the compiled audio API having the given name.
   /*!
@@ -615,9 +609,6 @@ class RTAUDIO_DLL_PUBLIC RtAudio
 
  protected:
 
-  //! Storage for compiled API list
-  static const std::vector<RtAudio::Api> compiledApis;
-
   void openRtApi( RtAudio::Api api );
   RtApi *rtapi_;
 };
@@ -1050,7 +1041,7 @@ class RtApiWasapi : public RtApi
 {
 public:
   RtApiWasapi();
-  ~RtApiWasapi();
+  virtual ~RtApiWasapi();
 
   RtAudio::Api getCurrentApi( void ) { return RtAudio::WINDOWS_WASAPI; }
   unsigned int getDeviceCount( void );