The CAST synthesizer is a synthesis server. After the synthesizer starts up, it listens for control messages from clients and interprets those messages to produce sound. The only way to control the synthesizer is to send messages from a client. Clients communicate to the synthesizer via OpenSoundControl, a new synthesis control protocol under development at CNMAT.
Here's a (semi-)pictoral description of this architecture:
The Synth Server: <---> OpenSoundControl <---> Clients: demosoftcast protocol - Opcode Max (Macintosh) HTM - Tcl/Tk (X) Timbral prototypes/ - Text-based (Unix) "datasets" - CGI Scripts - Java - Matlab - Write your own
Many features of the synthesis server are determined when the server starts, e.g., sampling rate, UDP port, number of output channels, timbral prototypes in memory, whether sound output will go into a sound file, etc. Some of these parameters are features of the underlying HTM (Hear The Music) kernel; the rest are features of the synth server application itself. You can set these parameters either by providing the appropriate UNIX command-line arguments to softcast or demosoftcast, or by using a graphical interface called synthconfig.
The other features of the synthesis server are "performed" in real-time by clients sending OpenSoundControl messages. (As indicated above, there are a number of clients that can send these messages.) OpenSoundControl is a protocol for formatting messages that can be sent to the synth; it determines what kinds of data you can send and allows you to address messages to a particular object within the synthesizer. To know what objects actually exist within the CAST server and what messages you can send them, read the CAST OSC Implementation page. (Shortcut to the list of transforms.)