libIntegra
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
Public Types | Public Member Functions | List of all members
integra_api::IEndpointDefinition Class Referenceabstract

Container for info about an Endpoint in an Integra Module interface. More...

#include "api/interface_definition.h"

Public Types

enum  endpoint_type { CONTROL = 1, STREAM }
 

Public Member Functions

virtual const string & get_name () const =0
 Get endpoint's name. More...
 
virtual const string & get_label () const =0
 Get more human-readable version of endpoint's name, with spaces between words.
 
virtual const string & get_description () const =0
 Retrieve the endpoint's inbuilt documentation. More...
 
virtual endpoint_type get_type () const =0
 Get endpoint type. More...
 
virtual const IControlInfoget_control_info () const =0
 Get control info. More...
 
virtual const IStreamInfoget_stream_info () const =0
 Get stream info. More...
 
virtual bool is_audio_stream () const =0
 

Detailed Description

Container for info about an Endpoint in an Integra Module interface.

Member Enumeration Documentation

Enumeration of endpoint types

Enumerator
CONTROL 

Controls are either stateful 'attributes' or stateless 'bangs' ie push-button type controls. They pass information to and from module implementations, at a rate no faster than once every DSP buffer (64 samples). Control endpoints can be used to send information to DSP modules, to received information from DSP modules, and are also used by non-dsp modules as the inputs and outputs of all implemented-in-libIntegra business logic.

STREAM 

Streams are connections between DSP modules. At present the only type of stream is audio stream. It is envisaged that potentially in future, other types of streams such as video or midi could be introduced

Member Function Documentation

virtual const IControlInfo* integra_api::IEndpointDefinition::get_control_info ( ) const
pure virtual

Get control info.

Returns
when endpoint type is CONTROL, returns an IControlInfo, otherwise NULL
virtual const string& integra_api::IEndpointDefinition::get_description ( ) const
pure virtual

Retrieve the endpoint's inbuilt documentation.

Endpoint documentation can use markdown format (http://en.wikipedia.org/wiki/Markdown)

virtual const string& integra_api::IEndpointDefinition::get_name ( ) const
pure virtual

Get endpoint's name.

Endpoint names are upper camel case, with no spaces. They are used to uniquely identify endpoints within interfaces, so each endpoint name must be unique within it's interface.

virtual const IStreamInfo* integra_api::IEndpointDefinition::get_stream_info ( ) const
pure virtual

Get stream info.

Returns
when endpoint type is STREAM, returns an IStreamInfo, otherwise NULL
virtual endpoint_type integra_api::IEndpointDefinition::get_type ( ) const
pure virtual

Get endpoint type.

See ::endpoint_type

virtual bool integra_api::IEndpointDefinition::is_audio_stream ( ) const
pure virtual
Returns
true when endpoint type is an audio stream, otherwise false

The documentation for this class was generated from the following file: