#include <MSupervisor.h>
Inheritance diagram for MSupervisor:

Public Member Functions | |
| unsigned long | SampleRate () |
| unsigned int | BufferSize () |
| virtual void | Run (const unsigned int n) |
Static Public Member Functions | |
| static MSupervisor * | Supervisor () |
| static void | NotifyClientCreation (MClient *client) |
| static void | NotifyClientDestruction (MClient *client) |
| static void | RegisterPlugin (MPlugin *plugin) |
| static void | UnregisterPlugin (MPlugin *plugin) |
Protected Member Functions | |
| MSupervisor (jack_client_t *jackClient) | |
| void | createPhysicalPorts () |
| virtual void | addExternalAudioInput (const string &fullName) |
| virtual void | addExternalAudioOutput (const string &fullName) |
Static Protected Member Functions | |
| static void | chooseAssignedClient () |
Static Protected Attributes | |
| static vector< MPlugin * > | _registeredPlugin |
| static MSupervisor * | _singleton = 0 |
| static jack_client_t * | _assignedClient = 0 |
| static jack_client_t * | _standaloneSupervisor = 0 |
| static vector< MClient * > | _existingClient |
The supervisor is used for :
But we want to provide those facilities without the need to create a explicitly a specific client. The supervisor is thus using the reference of an existing JACK client in the application or, if no client have been created so far, a standalone supervisor will be created ( it will be automatically deleted when another client will be create ). But you don't need to know all that to use the supervisor's interface ... The actual JACK client that will be used to provide those supervisor facilities is called "assigned client".
|
|
Gets the MSupervisor singleton instance.
|
|
|
Notifies the creation of a client. This will be called automatically during the creation of a client. And will be used to keep track of the existing clients in the application and to designate the client assigned to provide the supervisor's facilities. |
|
|
Notifies the destruction of a client. This will be called automatically during the creation of a client. And will be used to keep track of the existing clients in the application and to designate the client assigned to provide the supervisor's facilities. |
|
|
The audio sample rate.
|
|
|
The buffer size to use for audio data.
|
|
|
Runs all the plugins registered with the supervisor.
Reimplemented from MClient. |
|
|
Registers a plugin, a registered plugin will be run once and only once every JACK cycle. This is the default behaviour.
|
|
|
Unregisters a plugin, the plugin will not be run anymore by the supervisor.
|
|
|
Adds all the physical ports found by JACK to the MSupervisor.
|
|
|
Adds an existing external Creates a MExternalAudioInputPort corresponding to jackPort in to the MSupervisor.
|
|
|
Adds an existing external Creates a MExternalAudioOutputPort corresponding to jackPort in to the MSupervisor.
|
|
|
The plugins registered with the supervisor.
|
|
|
The singleton instance.
|
|
|
The actual JACK client that will be used to provide the supervisor's facilities.
|
|
|
The reference to the standalone supervisor if any.
|
|
|
The clients existing in the application.
|