Main Page   Class Hierarchy   Compound List   File List   Compound Members   File Members   Examples  

jezabelalsadriver.h

00001 
00018 #ifndef JezabelALSADriver_included
00019 #define JezabelALSADriver_included
00020 
00021 #include <jezabeldriver.h>
00022 #include <alsa/asoundlib.h>
00023 
00024 
00032 class JezabelALSADriver : public JezabelDriver {
00033  public:
00034   
00036   JezabelALSADriver(const char *device);
00037   
00038   virtual ~JezabelALSADriver(){}
00039   
00040   virtual void setTool(JezabelTool *tool);
00041   
00042   virtual void start(JezabelPosition max = JezabelLengthMax);
00043   
00044   virtual void stop();
00045 
00046   virtual void doit();
00047   
00049   static char *deviceName(int N);
00050 
00051  protected:
00052   
00053   char *device;
00054   int playback_ports, capture_ports;
00055   snd_pcm_t **alsa_handles;
00056   unsigned int playback_voices;
00057   unsigned int capture_voices;
00058   unsigned int bytes_per_sample;
00059   unsigned int samples_per_frame;
00060   unsigned int playback_bytes_per_frame;
00061   unsigned int capture_bytes_per_frame;
00062   bool device_is_open;
00063   char *playback_frame, *capture_frame;
00064   int frame_count;
00065 
00066   void start_audio();
00067 
00068 
00069 };
00070 
00071 #endif /* Endeth the file */
00072 
00073 /* EOF */

Generated at Sun Jan 18 20:51:22 2004 for Jezabel by doxygen1.2.8.1 written by Dimitri van Heesch, © 1997-2001