Go to the first, previous, next, last section, table of contents.


6.4.2 Server interfaces

Server interfaces are treated very differently to normal interfaces. Events from and to server interfaces are, for the most part, in order to describe and manipulate existing projects and clients. For this reason, the cca_event_t type has project and client_id properties which facilitate this. @xref{Server interface events}. The project property contains the name of the project.

A server interface should start up with the default assumption that there are no projects. Upon connection, the server will send appropriate events (CCA_Project_Add, CCA_Client_Add, CCA_Client_Name, etc) that describe the current state of the system. From then on, events will be sent to keep the interface up to date with the server's state.

CCA_Project_Add
From interface
Restore a project from an existing directory. The event string should contain the directory's name.
project
Ignored.
client_id
Ignored.
From server
A new project has been added. The event string will contain the project's name.
project
NULL
client_id
Undefined.
CCA_Project_Remove
From interface
Close an open project. All of the project's clients will be told to quit and the project will be removed from the server's project list.
project
The project to remove.
client_id
Ignored.
From server
A project has been removed.
project
The project that has been removed.
client_id
Undefined.
CCA_Project_Dir
From interface, non-NULL string
Move a project to a different directory. The directory name should be contained in the event's string.
project
The project to move.
client_id
Undefined.
From interface, NULL string
Request a project's directory.
project
The project whose directory is being requested.
client_id
Undefined.
From server
A declaration of the project's directory; either because it has been requested or because the project has been moved. The directory name is contained in the event's string.
project
The project whose directory is being declared.
client ID
Undefined.
CCA_Project_Name
From interface
Change a project's name. The new project name should be contained in the event's string.
project
The project name to change.
client_id
Undefined.
From server
A project's name has changed. The new project name is contained in the event's string.
project
The project name that has changed.
client ID
Undefined.
CCA_Client_Add
From interface
Should not occur
From server
A new client has been added.
project
The project that the new client has been added to.
client ID
The new client's ID.
CCA_Client_Name
From interface, non-NULL string
Should not occur.
From interface, NULL string
Request a client's name.
project
The client's project.
client ID
The client's ID.
From server
A declaration of a client's name; either because it has been requested or because the client set the name. The name is contained in the event's string.
project
The client's project.
client ID
The client's ID.
CCA_Jack_Client_Name
From interface, non-NULL string
Should not occur.
From interface, NULL string
Request a client's JACK client name.
project
The client's project.
client ID
The client's ID.
From server
A declaration of a client's JACK client name; either because it has been requested or because the client set the name. The client name is contained in the event's string.
project
The client's project.
client ID
The client's ID.
CCA_Alsa_Client_ID
From interface, non-NULL string
Should not occur.
From interface, NULL string
Request a client's ALSA client ID.
project
The client's project.
client ID
The client's LADCCA ID.
From server
A declaration of a client's ALSA client ID; either because it has been requested or because the client set the ID. The ALSA client ID is contained in the event's string, as desribed in @xref{Normal CCA_Alsa_Client_ID}.
project
The client's project.
client ID
The client's LADCCA ID.
CCA_Percentage
This event exists to provide user feedback on the status of save operations and perhaps other operations in future. The server will first send a percentage of 0, then successive percentages up to and including 100. When the operation is complete, the server will send a percentage of 0 again.
From interface
Should not occur.
From server
The percentage of completion of the current operation. The percentage is sent as a string, derived from sprintfing an int.
project
The project whose operation is being described.
client ID
Undefined.


Go to the first, previous, next, last section, table of contents.