Jack::JackDriver Class Reference

The base class for drivers. More...

#include <JackDriver.h>

Inheritance diagram for Jack::JackDriver:

Jack::JackDriverClient Jack::JackDriverClientInterface Jack::JackDriverInterface Jack::JackClientInterface Jack::JackAudioDriver Jack::JackFreewheelDriver Jack::JackAlsaDriver Jack::JackASIODriver Jack::JackCoreAudioDriver Jack::JackDummyDriver Jack::JackLoopbackDriver Jack::JackPortAudioDriver List of all members.

Public Member Functions

 JackDriver (const char *name, JackEngine *engine, JackSynchro **table)
 JackDriver ()
virtual ~JackDriver ()
virtual int Open ()
virtual int Open (jack_nframes_t nframes, jack_nframes_t samplerate, bool capturing, bool playing, int inchannels, int outchannels, bool monitor, const char *capture_driver_name, const char *playback_driver_name, jack_nframes_t capture_latency, jack_nframes_t playback_latency)
virtual int Close ()
virtual int Process ()
virtual int Attach ()
virtual int Detach ()
virtual int Read ()
virtual int Write ()
virtual int Start ()
virtual int Stop ()
virtual int SetBufferSize (jack_nframes_t buffer_size)
virtual int SetSampleRate (jack_nframes_t sample_rate)
void NotifyXRun (jack_time_t callback_usecs)
virtual bool IsRealTime ()
int ClientNotify (int refnum, const char *name, int notify, int sync, int value1, int value2)
void SetupDriverSync (int ref, bool freewheel)

Protected Member Functions

JackClientControlGetClientControl () const

Protected Attributes

char fCaptureDriverName [JACK_CLIENT_NAME_SIZE]
char fPlaybackDriverName [JACK_CLIENT_NAME_SIZE]
jack_nframes_t fCaptureLatency
jack_nframes_t fPlaybackLatency
jack_time_t fLastWaitUst
JackEnginefEngine
JackGraphManagerfGraphManager
JackSynchro ** fSynchroTable
JackEngineControlfEngineControl
JackClientControlfClientControl

Detailed Description

The base class for drivers.

Definition at line 122 of file JackDriver.h.


Member Function Documentation

void Jack::JackDriver::SetupDriverSync ( int  ref,
bool  freewheel 
)

In "async" mode, the server does not synchronize itself on the output drivers, thus it would never "consume" the activations. The synchronization primitives for drivers are setup in "flush" mode that to not keep unneeded activations. Drivers synchro are setup in "flush" mode if server is "async" and NOT freewheel.

Definition at line 142 of file JackDriver.cpp.

References fEngineControl, fSynchroTable, Jack::JackEngineControl::fSyncMode, and Jack::JackSynchro::SetFlush().

Referenced by ClientNotify(), and Open().


The documentation for this class was generated from the following files:
Generated on Thu Feb 14 11:16:03 2008 for Jackdmp by  doxygen 1.5.1