Home Information Classes Download Usage Mail List Requirements Links Tutorial
00001 /***************************************************/ 00023 /***************************************************/ 00024 00025 #ifndef STK_RTWVOUT_H 00026 #define STK_RTWVOUT_H 00027 00028 #include "WvOut.h" 00029 #include "RtAudio.h" 00030 00031 class RtWvOut : protected WvOut 00032 { 00033 public: 00034 00036 00047 RtWvOut(unsigned int nChannels = 1, StkFloat sampleRate = Stk::sampleRate(), int device = 0, int bufferFrames = RT_BUFFER_SIZE, int nBuffers = 4 ); 00048 00050 ~RtWvOut(); 00051 00053 00056 void start(void); 00057 00059 00062 void stop(void); 00063 00065 unsigned long getFrames( void ) const; 00066 00068 StkFloat getTime( void ) const; 00069 00071 00074 void tick( const StkFloat sample ); 00075 00077 00080 void tick( const StkFloat *vector, unsigned int vectorSize ); 00081 00083 00089 void tick( const StkFrames& frames, unsigned int channel = 1 ); 00090 00092 00095 void tickFrame( const StkFloat *frameVector, unsigned int frames = 1 ); 00096 00098 00103 void tickFrame( const StkFrames& frames ); 00104 00105 protected: 00106 00107 RtAudio *audio_; 00108 StkFloat *dataPtr_; 00109 bool stopped_; 00110 int bufferSize_; 00111 00112 }; 00113 00114 #endif
The Synthesis ToolKit in C++ (STK) |
©1995-2004 Perry R. Cook and Gary P. Scavone. All Rights Reserved. |