Jack2 1.9.6
Public Member Functions | Protected Member Functions | Protected Attributes

Jack::JackDriver Class Reference

Inheritance diagram for Jack::JackDriver:
Jack::JackDriverClientInterface Jack::JackDriverInterface Jack::JackClientInterface Jack::JackAudioDriver Jack::JackFreewheelDriver Jack::JackMidiDriver Jack::JackAlsaDriver Jack::JackCoreAudioDriver Jack::JackDummyDriver Jack::JackLoopbackDriver Jack::JackNetDriver Jack::JackNetOneDriver Jack::JackPortAudioDriver

List of all members.

Public Member Functions

 JackDriver (const char *name, const char *alias, JackLockedEngine *engine, JackSynchro *table)
void SetMaster (bool onoff)
bool GetMaster ()
void AddSlave (JackDriverInterface *slave)
void RemoveSlave (JackDriverInterface *slave)
std::list< JackDriverInterface * > GetSlaves ()
int ProcessSlaves ()
virtual int Open ()
virtual int Open (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 Open (jack_nframes_t buffer_size, 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 ProcessNull ()
virtual int Attach ()
virtual int Detach ()
virtual int Read ()
virtual int Write ()
virtual int Start ()
virtual int Stop ()
virtual bool IsFixedBufferSize ()
virtual int SetBufferSize (jack_nframes_t buffer_size)
virtual int SetSampleRate (jack_nframes_t sample_rate)
virtual int ClientNotify (int refnum, const char *name, int notify, int sync, const char *message, int value1, int value2)
virtual JackClientControlGetClientControl () const
virtual bool IsRealTime () const
virtual bool Initialize ()

Protected Member Functions

void CycleIncTime ()
void CycleTakeBeginTime ()
void CycleTakeEndTime ()
void SetupDriverSync (int ref, bool freewheel)
void NotifyXRun (jack_time_t callback_usecs, float delayed_usecs)
void NotifyBufferSize (jack_nframes_t buffer_size)
void NotifySampleRate (jack_nframes_t sample_rate)
void NotifyFailure (int code, const char *reason)

Protected Attributes

char fCaptureDriverName [JACK_CLIENT_NAME_SIZE+1]
char fPlaybackDriverName [JACK_CLIENT_NAME_SIZE+1]
char fAliasName [JACK_CLIENT_NAME_SIZE+1]
jack_nframes_t fCaptureLatency
jack_nframes_t fPlaybackLatency
jack_time_t fBeginDateUst
jack_time_t fEndDateUst
float fDelayedUsecs
JackLockedEnginefEngine
JackGraphManagerfGraphManager
JackSynchrofSynchroTable
JackEngineControlfEngineControl
JackClientControl fClientControl
std::list< JackDriverInterface * > fSlaveList
bool fIsMaster

Detailed Description

Definition at line 117 of file JackDriver.h.


Member Function Documentation

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

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 186 of file JackDriver.cpp.


The documentation for this class was generated from the following files: