Jack::JackDriver Class Reference
Inheritance diagram for Jack::JackDriver:

## 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 ()
virtual int | Open ()
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 | Attach ()
virtual int | Detach ()
virtual int | Read ()
virtual int | Write ()
virtual int | Start ()
virtual int | Stop ()
int | ProcessReadSlaves ()
int | ProcessWriteSlaves ()
virtual int | ProcessRead ()
virtual int | ProcessWrite ()
virtual int | ProcessReadSync ()
virtual int | ProcessWriteSync ()
virtual int | ProcessReadAsync ()
virtual int | ProcessWriteAsync ()
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 JackClientControl * | GetClientControl () const
virtual bool | IsRealTime () const
virtual bool | IsRunning () 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)
virtual void | SaveConnections (int alias)
virtual void | LoadConnections (int alias, bool full_name=true)
std::string | MatchPortName (const char *name, const char **ports, int alias, const std::string &type)
virtual int | StartSlaves ()
virtual int | StopSlaves ()
virtual int | ResumeRefNum ()
virtual int | SuspendRefNum ()

## 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
int | fCaptureChannels
int | fPlaybackChannels
jack_time_t | fBeginDateUst
jack_time_t | fEndDateUst
float | fDelayedUsecs
JackLockedEngine * | fEngine
JackGraphManager * | fGraphManager
JackSynchro * | fSynchroTable
JackEngineControl * | fEngineControl
JackClientControl | fClientControl
std::list< JackDriverInterface * > | fSlaveList
bool | fIsMaster
bool | fIsRunning
bool | fWithMonitorPorts
jack_port_id_t | fCapturePortList [DRIVER_PORT_NUM]
jack_port_id_t | fPlaybackPortList [DRIVER_PORT_NUM]
jack_port_id_t | fMonitorPortList [DRIVER_PORT_NUM]
driver_connections_list_t | fConnections

## Detailed Description

Definition at line 127 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 152 of file JackDriver.cpp.

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

- JackDriver.h
- JackDriver.cpp