// // Programmer: Craig Stuart Sapp // Creation Date: Thu Jul 5 12:36:25 PDT 2001 // Last Modified: Thu Jul 5 12:36:28 PDT 2001 // Filename: ...sig/maint/code/audio/AudioInputStream/unix/AudioInputStream_unix.h // Web Address: http://sig.sapp.org/include/sig/AudioInputStream_unix.h // Documentation: http://sig.sapp.org/doc/classes/AudioInputStream // Syntax: C++ // #ifndef _AUDIOINPUTSTREAM_UNIX_H_INCLUDED #define _AUDIOINPUTSTREAM_UNIX_H_INCLUDED #include "pthread.h" #include "Array.h" #include "CircularBuffer.h" #include "AudioInput.h" typedef unsigned short ushort; typedef ushort* ushortPtr; class AudioInputStream_unix { public: AudioInputStream_unix (void); ~AudioInputStream_unix (void); ushort* getNextBuffer (void); int getBufferSize (void); void open (void); void open16LSB (int channels = 1, int srate = 44100); void close (void); protected: static Array buffers; static int currentwrite; static int classCount; static CircularBuffer currentread; static AudioInput audioin; static int initQ; static pthread_t audioInThread; private: static int getNextBufferToFill (void); void init (void); void deinit (void); friend void* extractAudioInputStreamPrivate(void * x); }; void* extractAudioInputStreamPrivate(void * x); #endif /* _AUDIOINPUTSTREAM_UNIX_H_INCLUDED */ // md5sum: c738c98a68a989465a2f07b85e3a313c AudioInputStream_unix.h [20050403]