Home   Information   Classes   Download   Usage   Mail List   Requirements   Links   Tutorial


RtWvOut.h

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.