CHAI SDK
Version 1.3
|
Inputs and Outputs are the standard endpoints used in CopperLan for application message exchange.
An Output is used to send messages to one or more Inputs, and of course an Input can simultaneously receive messages from one or more Outputs.
Inputs and Outputs are created from their owner's Device object, specifying capabilities and name. The name is used to easily identify the endpoint. The capabilities are used to specify the kind of messages the endpoint is able to process. This is particularly useful during a connection operation because it allows showing to the user a list of Inputs that match the capabilities of the selected Output.
Moreover, those capabilities indicate if the endpoint supports time stamping, automation, if it is related to a MIDI channel, etc.
An Output Destination Set can be remotely or locally managed. So an application can be delivered without any connection mechanism; it could rely on third party applications such as the CopperLan Manager for its connections to be established. Bundled products could find each other and establish their connection in a restricted and predefined way with one of them realizing the connections for both.
Inputs and Outputs can provide notifications on incoming message, source/destination set change (both sides are notified if a connection is set/removed/lost)...
Endpoints are identified by the related InputID and OutputID.