de.sciss.synth.message

Type members

Classlikes

sealed trait AsyncSend extends Send

Identifies messages sent to the server which are executed asynchronously and reply with a form of done-message.

Identifies messages sent to the server which are executed asynchronously and reply with a form of done-message.

final case class BufferAlloc(id: Int, numFrames: Int, numChannels: Int, completion: Option[Packet]) extends Message with HasCompletion

The /b_alloc message tells the server to allocate memory for a buffer associated with its logical identifier.

The /b_alloc message tells the server to allocate memory for a buffer associated with its logical identifier.

See also
final case class BufferAllocRead(id: Int, path: String, startFrame: Int, numFrames: Int, completion: Option[Packet]) extends Message with HasCompletion

The /b_allocRead message tells the server to allocate memory for a buffer and read in a portion of an audio-file. The number of channels and the sample-rate of the buffer are determined by that audio-file.

The /b_allocRead message tells the server to allocate memory for a buffer and read in a portion of an audio-file. The number of channels and the sample-rate of the buffer are determined by that audio-file.

Value Params
id

the identifier to use for the buffer. It must denote a currently un-allocated buffer and be greater than or equal to zero and less than the maximum number of buffers.

numFrames

the number of frames to read which will be the size of the allocated buffer. The special value less than or equal to zero denotes that the number of frames available in the file from the given offset is used (the entire file will be read).

path

the path of the audio-file to read. Since the server is an independent process, this must resolve with respect to the server's current working directory. If the server is running on a remote node, the path will be resolved in the server's local file system.

startFrame

the offset in frames into the audio-file to begin reading from

See also
final case class BufferAllocReadChannel(id: Int, path: String, startFrame: Int, numFrames: Int, channels: List[Int], completion: Option[Packet]) extends Message with HasCompletion

The /b_allocReadChannel message tells the server to allocate memory for a buffer and read in a portion of an audio-file, selecting a subset of its channels. The number of channels is given by the size of the channels argument, and the sample-rate of the buffer is determined by the audio-file.

The /b_allocReadChannel message tells the server to allocate memory for a buffer and read in a portion of an audio-file, selecting a subset of its channels. The number of channels is given by the size of the channels argument, and the sample-rate of the buffer is determined by the audio-file.

Value Params
channels

a sequence of channel indices to read. Zero corresponds to the first channel of the file.

id

the identifier to use for the buffer. It must denote a currently un-allocated buffer and be greater than or equal to zero and less than the maximum number of buffers.

numFrames

the number of frames to read which will be the size of the allocated buffer. The special value of -1 denotes that the number of frames available in the file from the given offset is used (the entire file will be read).

path

the path of the audio-file to read. Since the server is an independent process, this must resolve with respect to the server's current working directory. If the server is running on a remote node, the path will be resolved in the server's local file system.

startFrame

the offset in frames into the audio-file to begin reading from

See also
final case class BufferClose(id: Int, completion: Option[Packet]) extends Message with HasCompletion

The /b_close message ensures that a buffer closes an associated audio-file. This is a no-op if the buffer is not associated with an audio-file or if that file is already closed.

The /b_close message ensures that a buffer closes an associated audio-file. This is a no-op if the buffer is not associated with an audio-file or if that file is already closed.

See also
final case class BufferFill(id: Int, ranges: FillRange*) extends Message with SyncCmd

The /b_fill message sets individual ranges of samples of the buffer to given values.

The /b_fill message sets individual ranges of samples of the buffer to given values.

Value Params
id

the identifier of the buffer whose contents to write.

ranges

tuples which specify the offset into the buffer, the number of samples to overwrite and the value with which to overwrite.

See also
final case class BufferFree(id: Int, completion: Option[Packet]) extends Message with HasCompletion

The /b_free message frees a buffer on the server side. The client side typically maintains a logical list of allocated buffer identifiers as well, so one should normally rely on the specific client side API to correctly free a buffer.

The /b_free message frees a buffer on the server side. The client side typically maintains a logical list of allocated buffer identifiers as well, so one should normally rely on the specific client side API to correctly free a buffer.

See also
object BufferGen
Companion
class
final case class BufferGen(id: Int, command: Command) extends Message with AsyncSend

The /b_gen message uses a dedicated command to generate or manipulate the buffer content.

The /b_gen message uses a dedicated command to generate or manipulate the buffer content.

Value Params
command

the operation to carry out on the buffer, such as generating a waveform or copying the content

id

the identifier of the buffer whose contents to write.

See also
Companion
object
final case class BufferGet(id: Int, index: Int*) extends Message with SyncQuery

The /b_get message.

The /b_get message.

See also
final case class BufferGetn(id: Int, ranges: Range*) extends Message with SyncQuery

The /b_getn message.

The /b_getn message.

Value Params
id

the buffer identifier

ranges

the ranges of sample indices to obtain. For multi-channel buffers, this means if one wants to specify a particular range of frames, the frame indices must be multiplied by the number of channels

See also
object BufferInfo
Companion
class
final case class BufferInfo(data: Data*) extends Message with Receive

A /b_info message is received in reply to a /b_query message.

A /b_info message is received in reply to a /b_query message.

See also
Companion
object
final case class BufferQuery(ids: Int*) extends Message with SyncQuery

The /b_query messages requests a /b_info reply message from the server, providing information about the size and sample-rate of the specified buffers.

The /b_query messages requests a /b_info reply message from the server, providing information about the size and sample-rate of the specified buffers.

Value Params
ids

a sequence of buffer identifiers to query

See also
final case class BufferRead(id: Int, path: String, fileStartFrame: Int, numFrames: Int, bufStartFrame: Int, leaveOpen: Boolean, completion: Option[Packet]) extends Message with HasCompletion

The /b_read message tells the server to read a portion of an audio-file into an existing buffer.

The /b_read message tells the server to read a portion of an audio-file into an existing buffer.

Value Params
bufStartFrame

the frame offset in the buffer to begin writing to.

fileStartFrame

the offset in frames into the audio-file to begin reading from

id

the identifier of the buffer to read into.

leaveOpen

if true, leaves the file open for streaming with the DiskIn UGen.

numFrames

the number of frames to read which will be the size of the allocated buffer. The special value of -1 denotes that as many frames are read as are available in the file or fit into the buffer.

path

the path of the audio-file to read.

See also
final case class BufferReadChannel(id: Int, path: String, fileStartFrame: Int, numFrames: Int, bufStartFrame: Int, leaveOpen: Boolean, channels: List[Int], completion: Option[Packet]) extends Message with HasCompletion

The /b_readChannel message tells the server to read a portion of an audio-file into an existing buffer, selecting a subset of the file's channels.

The /b_readChannel message tells the server to read a portion of an audio-file into an existing buffer, selecting a subset of the file's channels.

Value Params
bufStartFrame

the frame offset in the buffer to begin writing to.

channels

a sequence of channel indices to read. Zero corresponds to the first channel of the file.

fileStartFrame

the offset in frames into the audio-file to begin reading from

id

the identifier of the buffer to read into.

leaveOpen

if true, leaves the file open for streaming with the DiskIn UGen.

numFrames

the number of frames to read which will be the size of the allocated buffer. The special value of -1 denotes that as many frames are read as are available in the file or fit into the buffer.

path

the path of the audio-file to read.

See also
final case class BufferSet(id: Int, pairs: FillValue*) extends Message with SyncCmd

The /b_set message sets individual samples of the buffer to given values.

The /b_set message sets individual samples of the buffer to given values.

Value Params
id

the identifier of the buffer whose contents to write.

pairs

pairs of sample offsets and sample values. The offsets are de-interleaved samples, so for multi-channel buffers, to address a particular frame, the frame index must be multiplied by the number of channels and offset by the channel to write into.

See also
final case class BufferSetn(id: Int, indicesAndValues: (Int, IndexedSeq[Float])*) extends Message with SyncCmd

The /b_setn message sets individual ranges of samples of the buffer to given values.

The /b_setn message sets individual ranges of samples of the buffer to given values.

Value Params
id

the identifier of the buffer whose contents to write.

indicesAndValues

pairs of sample offsets and sequences of sample values. The offsets are de-interleaved samples, so for multi-channel buffers, to address a particular frame, the frame index must be multiplied by the number of channels and offset by the channel to write into.

See also
final case class BufferWrite(id: Int, path: String, fileType: AudioFileType, sampleFormat: SampleFormat, numFrames: Int, startFrame: Int, leaveOpen: Boolean, completion: Option[Packet]) extends Message with HasCompletion

The /b_write message writes a portion of the buffer contents to an audio-file.

The /b_write message writes a portion of the buffer contents to an audio-file.

Value Params
fileType

the header format of the audio-file

id

the identifier of the buffer whose contents to write.

leaveOpen

if true, leaves the file open for streaming with the DiskOut UGen.

numFrames

the number of frames to write. The special value of -1 denotes that the whole buffer content (or the remainder after the startFrame) is written out.

path

the path of the audio-file to write to.

sampleFormat

the sample resolution of the audio-file

startFrame

the frame offset in the buffer to begin reading from

See also
final case class BufferZero(id: Int, completion: Option[Packet]) extends Message with HasCompletion

The /b_zero message clears the contents of a buffer (all samples will be zero).

The /b_zero message clears the contents of a buffer (all samples will be zero).

See also
case object ClearSched extends Message with SyncCmd
final case class ControlBusFill(ranges: FillRange*) extends Message with SyncCmd

The /c_fill message.

The /c_fill message.

See also
final case class ControlBusGet(index: Int*) extends Message with SyncQuery

The /c_get message.

The /c_get message.

See also
final case class ControlBusGetn(ranges: Range*) extends Message with SyncQuery

The /c_getn message.

The /c_getn message.

See also
final case class ControlBusSet(pairs: FillValue*) extends Message with SyncCmd

The /c_set message.

final case class ControlBusSetn(indicesAndValues: (Int, IndexedSeq[Float])*) extends Message with SyncCmd

The /c_setn message.

final case class DumpOSC(mode: Dump) extends Message with SyncCmd

The /dumpOSC message that selects how the server reports incoming OSC packets.

The /dumpOSC message that selects how the server reports incoming OSC packets.

Note: The OSC dump behavior of scsynth has long time been broken. It is recommended to use client-side only reporting, provided by the dumpOSC method of the Server class.

See also
object Error
Companion
class
final case class Error(mode: Int) extends Message with SyncCmd

Produces an /error message that selects how the server will report errors to the console.

Produces an /error message that selects how the server will report errors to the console.

Companion
object
final case class GroupDeepFree(ids: Int*) extends Message with SyncCmd

The /g_deepFree message.

The /g_deepFree message.

final case class GroupDumpTree(groups: (Int, Boolean)*) extends Message with SyncCmd

The /g_dumpTree message.

The /g_dumpTree message.

final case class GroupFreeAll(ids: Int*) extends Message with SyncCmd

The /g_freeAll message.

The /g_freeAll message.

final case class GroupHead(groups: (Int, Int)*) extends Message with SyncCmd

The /g_head message pair-wise places nodes at the head of groups.

The /g_head message pair-wise places nodes at the head of groups.

/g_head
 [
   Int - the id of the group at which head a node is to be placed (B)
   int - the id of the node to place (A)
 ] * N

So that for each pair, node A is moved to the head of group B.

object GroupNew
Companion
class
final case class GroupNew(groups: Data*) extends Message with SyncCmd

The /g_new message.

The /g_new message.

Companion
object
final case class GroupQueryTree(groups: (Int, Boolean)*) extends Message with SyncQuery

The /g_queryTree message.

The /g_queryTree message.

final case class GroupTail(groups: (Int, Int)*) extends Message with SyncCmd

The /g_tail message pair-wise places nodes at the tail of groups.

The /g_tail message pair-wise places nodes at the tail of groups.

/g_tail
 [
   Int - the id of the group at which tail a node is to be placed (B)
   int - the id of the node to place (A)
 ] * N

So that for each pair, node A is moved to the tail of group B.

trait Handler
Companion
class
sealed trait HasCompletion extends AsyncSend
Companion
object
Companion
class
sealed trait HasControlSet
Companion
object
final case class NodeAfter(groups: (Int, Int)*) extends Message with SyncCmd

The /n_after message pair-wise places nodes after other nodes.

The /n_after message pair-wise places nodes after other nodes.

/n_after
 [
   Int - the id of the node to place (A)
   int - the id of the node after which the above is placed (B)
 ] * N

So that for each pair, node A in the same group as node B, to execute immediately after node B.

final case class NodeBefore(groups: (Int, Int)*) extends Message with SyncCmd

The /n_before message pair-wise places nodes before other nodes.

The /n_before message pair-wise places nodes before other nodes.

/n_before
 [
   Int - the id of the node to place (A)
   int - the id of the node before which the above is placed (B)
 ] * N

So that for each pair, node A in the same group as node B, to execute immediately before node B.

sealed trait NodeChange extends Receive
object NodeEnd extends NodeMessageFactory

The /n_end message is received from the server when a node has been freed.

The /n_end message is received from the server when a node has been freed.

See also
Companion
class
final case class NodeEnd(nodeId: Int, info: Data) extends Message with NodeChange
Companion
object
final case class NodeFill(id: Int, data: ControlFillRange*) extends Message with SyncCmd

The /n_fill message.

The /n_fill message.

final case class NodeFree(ids: Int*) extends Message with SyncCmd

The /n_free message.

The /n_free message.

object NodeGo extends NodeMessageFactory

The /n_go message is received from the server when a node has been newly created.

The /n_go message is received from the server when a node has been newly created.

See also
Companion
class
final case class NodeGo(nodeId: Int, info: Data) extends Message with NodeChange
Companion
object
object NodeInfo extends NodeMessageFactory
Companion
class
final case class NodeInfo(nodeId: Int, info: Data) extends Message with NodeChange

An /n_info message is received as a reply to an /n_query message.

An /n_info message is received as a reply to an /n_query message.

Value Params
info

the information object describing the topological position of the node

nodeId

the identifier of the node for which information has been received

See also
Companion
object
final case class NodeMap(id: Int, mappings: Single*) extends Message with SyncCmd

The /n_map message.

The /n_map message.

final case class NodeMapa(id: Int, mappings: Single*) extends Message with SyncCmd

The /n_mapa message.

The /n_mapa message.

final case class NodeMapan(id: Int, mappings: ControlABusMap*) extends Message with SyncCmd

The /n_mapan message.

The /n_mapan message.

final case class NodeMapn(id: Int, mappings: ControlKBusMap*) extends Message with SyncCmd

The /n_mapn message.

The /n_mapn message.

object NodeMove extends NodeMessageFactory

The /n_move message is received from the server when a node has changed its position in the tree.

The /n_move message is received from the server when a node has changed its position in the tree.

See also
Companion
class
final case class NodeMove(nodeId: Int, info: Data) extends Message with NodeChange
Companion
object
final case class NodeNoId(ids: Int*) extends Message with SyncCmd

The /n_noid message.

The /n_noid message.

object NodeOff extends NodeMessageFactory

The /n_off message is received from the server when a node has been paused.

The /n_off message is received from the server when a node has been paused.

See also
Companion
class
final case class NodeOff(nodeId: Int, info: Data) extends Message with NodeChange
Companion
object
object NodeOn extends NodeMessageFactory

The /n_on message is received from the server when a node has resumed.

The /n_on message is received from the server when a node has resumed.

See also
Companion
class
final case class NodeOn(nodeId: Int, info: Data) extends Message with NodeChange
Companion
object
final case class NodeOrder(addAction: Int, targetId: Int, ids: Int*) extends Message with SyncCmd

The /n_order message.

The /n_order message.

final case class NodeQuery(ids: Int*) extends Message with SyncQuery

The /n_query message.

The /n_query message.

final case class NodeRun(nodes: (Int, Boolean)*) extends Message with SyncCmd

The /n_run message.

The /n_run message.

final case class NodeSet(id: Int, pairs: ControlSet*) extends Message with SyncCmd with HasControlSet

The /n_set message.

The /n_set message.

final case class NodeSetn(id: Int, pairs: ControlSet*) extends Message with SyncCmd with HasControlSet

The /n_setn message.

The /n_setn message.

final case class NodeTrace(ids: Int*) extends Message with SyncCmd

The /n_trace message.

The /n_trace message.

final case class ParGroupNew(groups: Data*) extends Message with SyncCmd

The /p_new message.

The /p_new message.

trait Receive extends ServerMessage

Identifies messages returned by SuperCollider server.

Identifies messages returned by SuperCollider server.

object Responder
Companion
class
trait Responder extends Handler
Companion
object
sealed trait Send extends ServerMessage

Identifies messages sent to the SuperCollider server.

Identifies messages sent to the SuperCollider server.

object ServerCodec extends PacketCodec
sealed trait ServerMessage

Identifies messages received or sent by the SuperCollider server.

Identifies messages received or sent by the SuperCollider server.

final case class ServerNotify(on: Boolean) extends Message with AsyncSend

The /notify messages registers or de-registers a client with respect to receiving reply messages from the server.

The /notify messages registers or de-registers a client with respect to receiving reply messages from the server.

Booting or connecting a server through the regular API automatically handles and does not require the explicit use of this message.

Value Params
on

if true, the client is registered, if false it is de-registered.

case object ServerQuit extends Message with AsyncSend

The /quit message tells the server to shut down.

The /quit message tells the server to shut down.

See also
case object Status extends Message with SyncQuery

The /status message that queries the current statistics from the server.

The /status message that queries the current statistics from the server.

final case class StatusReply(numUGens: Int, numSynths: Int, numGroups: Int, numDefs: Int, avgCPU: Float, peakCPU: Float, sampleRate: Double, actualSampleRate: Double) extends Message with Receive
final case class Sync(id: Int) extends Message with AsyncSend

Represents a /sync message, which is queued with the asynchronous messages on the server, and which, when executed, triggers a corresponding /synced reply message (i.e. with the same id)

Represents a /sync message, which is queued with the asynchronous messages on the server, and which, when executed, triggers a corresponding /synced reply message (i.e. with the same id)

Value Params
id

an arbitrary identifier which can be used to match the corresponding reply message. typically the id is incremented by 1 for each /sync message sent out.

trait SyncCmd extends SyncSend

Identifies command messages sent to the server which are executed synchronously and do not return a message.

Identifies command messages sent to the server which are executed synchronously and do not return a message.

trait SyncQuery extends SyncSend

Identifies query messages sent to the server which are executed synchronously and produce a reply message.

Identifies query messages sent to the server which are executed synchronously and produce a reply message.

sealed trait SyncSend extends Send

Identifies messages sent to the server which are executed synchronously.

Identifies messages sent to the server which are executed synchronously.

final case class Synced(id: Int) extends Message with Receive

Represents a /synced message, a reply from the server acknowledging that all asynchronous operations up to the corresponding /sync message (i.e. with the same id) have been completed

Represents a /synced message, a reply from the server acknowledging that all asynchronous operations up to the corresponding /sync message (i.e. with the same id) have been completed

final case class SynthDefFree(names: String*) extends Message with SyncCmd

The /d_free message.

The /d_free message.

final case class SynthDefLoad(path: String, completion: Option[Packet]) extends Message with HasCompletion

The /d_load message.

The /d_load message.

Value Params
path

the path to the file that stores the definition. This can be a pattern like "synthdefs/perc-*"

See also
final case class SynthDefLoadDir(path: String, completion: Option[Packet]) extends Message with HasCompletion

The /d_loadDir message tells the server to load all synth definitions within a directory.

The /d_loadDir message tells the server to load all synth definitions within a directory.

See also
final case class SynthDefRecv(bytes: ByteBuffer, completion: Option[Packet]) extends Message with HasCompletion

The /d_recv message.

The /d_recv message.

final case class SynthGet(id: Int, controls: Any*) extends Message with SyncQuery

The /s_get message.

The /s_get message.

final case class SynthGetn(id: Int, controls: (Any, Int)*) extends Message with SyncQuery

The /s_getn message.

The /s_getn message.

final case class SynthNew(defName: String, id: Int, addAction: Int, targetId: Int, controls: ControlSet*) extends Message with SyncCmd with HasControlSet

The /s_new message.

The /s_new message.

final case class Timeout() extends RuntimeException
final case class Trigger(nodeId: Int, trig: Int, value: Float) extends Message with Receive

The /tr message send from a SendTrig UGen.

The /tr message send from a SendTrig UGen.

final case class UGenCommand(nodeId: Int, ugenIdx: Int, command: String, rest: Any*) extends Message with SyncCmd

The /u_cmd message allows one to send UGen specific commands.

The /u_cmd message allows one to send UGen specific commands.