21 #ifndef __JackOSSDriver__    22 #define __JackOSSDriver__    24 #include "JackAudioDriver.h"    29 typedef jack_default_audio_sample_t jack_sample_t;
    31 #define OSS_DRIVER_DEF_DEV      "/dev/dsp"    32 #define OSS_DRIVER_DEF_FS       48000    33 #define OSS_DRIVER_DEF_BLKSIZE  1024    34 #define OSS_DRIVER_DEF_NPERIODS 1    35 #define OSS_DRIVER_DEF_BITS     16    36 #define OSS_DRIVER_DEF_INS      2    37 #define OSS_DRIVER_DEF_OUTS     2    46     enum { kRead = 1, kWrite = 2, kReadWrite = 3 };
    56         unsigned int fSampleSize;
    61         unsigned int fInputBufferSize;
    62         unsigned int fOutputBufferSize;
    73         void SetSampleFormat();
    74         void DisplayDeviceInfo();
    83                 fInFD(-1), fOutFD(-1), fBits(0),
    84                 fSampleFormat(0), fNperiods(0), fRWMode(0), fExcl(
false), fIgnoreHW(
true),
    85                 fInputBufferSize(0), fOutputBufferSize(0),
    86                 fInputBuffer(NULL), fOutputBuffer(NULL), fFirstCycle(
true)
    92         int Open(jack_nframes_t frames_per_cycle,
   101                  const char* capture_driver_name,
   102                  const char* playback_driver_name,
   103                  jack_nframes_t capture_latency,
   104                  jack_nframes_t playback_latency,
   114         bool IsFixedBufferSize()
   119         int SetBufferSize(jack_nframes_t buffer_size);
 Locked Engine, access to methods is serialized using a mutex.
Inter process synchronization using POSIX semaphore.
The base class for audio drivers: drivers with audio ports.