CHAI SDK  Version 1.3
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Pages
CPNS::IOutput_NotificationHandler Class Reference

Notification handler for Output. More...

Public Member Functions

virtual void OnOutput_FlowControl (CPNS::IOutput *const pNotifiedObject, CPNS::boolean const fReady)
 This is called on flow control status update. More...
 
virtual void OnOutput_DataConsumed (CPNS::IOutput *const pNotifiedObject)
 This is called on reception of DataConsumed from the target side. More...
 
virtual void OnOutput_DestinationChange (CPNS::IOutput *const pNotifiedObject, CPNS::Endpoint const &destination, CPNS::Enums::ODCOperations const operation)
 This is called on destination change. More...
 
virtual void OnOutput_RefreshParameterDefinition (CPNS::IOutput *const pNotifiedObject, CPNS::Endpoint const &source)
 This to inform the application that the layout of parameters changed for the specified source. More...
 
virtual void OnOutput_UpdateIndexListContent (CPNS::IOutput *const pNotifiedObject, CPNS::IListID *const pIndexListID)
 This to inform the application that the specified index list content changed. More...
 
virtual void OnOutput_UpdateSelectorItemListContent (CPNS::IOutput *const pNotifiedObject, CPNS::IListID *const pSelectorItemListID, CPNS::uint16 const wNewSize)
 This to inform the application that the specified selector item list content changed. More...
 
virtual void OnOutput_RefreshCurrentModifierParameterValue (CPNS::IOutput *const pNotifiedObject, CPNS::Endpoint const &source, CPNS::ParameterID const &paramID, CPNS::Value const &Value, CPNS::char8 const *const utf8ValueText, CPNS::CombinedRefreshValueAttributes const attributes)
 This to inform the application that a modifier parameter changed of value. More...
 
virtual void OnOutput_RefreshCurrentSelectorParameterValue (CPNS::IOutput *const pNotifiedObject, CPNS::Endpoint const &source, CPNS::ParameterID const &paramID, CPNS::uint16 const wValue, CPNS::char8 const *const utf8ValueText, CPNS::CombinedRefreshValueAttributes const attributes, CPNS::uint16 const wProportionalValue)
 This to inform the application that a selector parameter changed of value. More...
 
virtual void OnOutput_RefreshCurrentTextParameterValue (CPNS::IOutput *const pNotifiedObject, CPNS::Endpoint const &source, CPNS::ParameterID const &paramID, CPNS::char8 const *const utf8ValueText, CPNS::CombinedRefreshValueAttributes const attributes)
 This to inform the application that a text parameter changed of value. More...
 

Detailed Description

Notification handler for Output.

Member Function Documentation

virtual void CPNS::IOutput_NotificationHandler::OnOutput_DataConsumed ( CPNS::IOutput *const  pNotifiedObject)
inlinevirtual

This is called on reception of DataConsumed from the target side.

Parameters
[in]pNotifiedObjectPointer to the notified output object
virtual void CPNS::IOutput_NotificationHandler::OnOutput_DestinationChange ( CPNS::IOutput *const  pNotifiedObject,
CPNS::Endpoint const &  destination,
CPNS::Enums::ODCOperations const  operation 
)
inlinevirtual

This is called on destination change.

This can be used to know when a destination or recording destination is added, removed, disabled (not reachable), enabled (reachable again), or removed since disabled for 1 minute.

Parameters
[in]pNotifiedObjectPointer to the notified output object
[in]destinationRelated destination
[in]operationOperation on the destination
virtual void CPNS::IOutput_NotificationHandler::OnOutput_FlowControl ( CPNS::IOutput *const  pNotifiedObject,
CPNS::boolean const  fReady 
)
inlinevirtual

This is called on flow control status update.

Parameters
[in]pNotifiedObjectPointer to the notified output object
[in]fReadyTRUE if all destinations are ready to receive
Warning
sending message from here on another output than pNotifiedObject may cause recursion issue if the sent output ready to send BUT not yet notified!
virtual void CPNS::IOutput_NotificationHandler::OnOutput_RefreshCurrentModifierParameterValue ( CPNS::IOutput *const  pNotifiedObject,
CPNS::Endpoint const &  source,
CPNS::ParameterID const &  paramID,
CPNS::Value const &  Value,
CPNS::char8 const *const  utf8ValueText,
CPNS::CombinedRefreshValueAttributes const  attributes 
)
inlinevirtual

This to inform the application that a modifier parameter changed of value.

It is useful to reflect current remote parameter value on a front panel for instance.

Remarks
This is called when a current value notification is sent to an Output having no matching Controller.
Parameters
[in]pNotifiedObjectPointer to the notified output object
[in]sourceDestination endpoint sending the notification
[in]paramIDParameter ID
[in]ValueNew parameter value
[in]utf8ValueTextValue string representation
[in]attributesAdditional attributes
virtual void CPNS::IOutput_NotificationHandler::OnOutput_RefreshCurrentSelectorParameterValue ( CPNS::IOutput *const  pNotifiedObject,
CPNS::Endpoint const &  source,
CPNS::ParameterID const &  paramID,
CPNS::uint16 const  wValue,
CPNS::char8 const *const  utf8ValueText,
CPNS::CombinedRefreshValueAttributes const  attributes,
CPNS::uint16 const  wProportionalValue 
)
inlinevirtual

This to inform the application that a selector parameter changed of value.

It is useful to reflect current remote parameter value on a front panel for instance.

Remarks
This is called when a current value notification is sent to an Output having no matching Controller.
Parameters
[in]pNotifiedObjectPointer to the notified output object
[in]sourceDestination endpoint sending the notification
[in]paramIDParameter ID
[in]wValueNew parameter value
[in]utf8ValueTextValue string representation
[in]attributesAdditional attributes
[in]wProportionalValueFull scale value, can be used to update knob or slider position.
virtual void CPNS::IOutput_NotificationHandler::OnOutput_RefreshCurrentTextParameterValue ( CPNS::IOutput *const  pNotifiedObject,
CPNS::Endpoint const &  source,
CPNS::ParameterID const &  paramID,
CPNS::char8 const *const  utf8ValueText,
CPNS::CombinedRefreshValueAttributes const  attributes 
)
inlinevirtual

This to inform the application that a text parameter changed of value.

It is useful to reflect current remote parameter value on a front panel for instance.

Remarks
This is called when a current value notification is sent to an Output having no matching Controller.
Parameters
[in]pNotifiedObjectPointer to the notified output object
[in]sourceDestination endpoint sending the notification
[in]paramIDParameter ID
[in]utf8ValueTextValue string representation
[in]attributesAdditional attributes
virtual void CPNS::IOutput_NotificationHandler::OnOutput_RefreshParameterDefinition ( CPNS::IOutput *const  pNotifiedObject,
CPNS::Endpoint const &  source 
)
inlinevirtual

This to inform the application that the layout of parameters changed for the specified source.

It is useful to know if an application must refresh its parameter list related to the source.

Parameters
[in]pNotifiedObjectPointer to the notified output object
[in]sourceDestination endpoint sending the notification
virtual void CPNS::IOutput_NotificationHandler::OnOutput_UpdateIndexListContent ( CPNS::IOutput *const  pNotifiedObject,
CPNS::IListID *const  pIndexListID 
)
inlinevirtual

This to inform the application that the specified index list content changed.

Parameters
[in]pNotifiedObjectPointer to the notified output object
[in]pIndexListIDthe Index List ID. Don't forget to Acquire() it if the application needs to keep it for later use.
Remarks
This notification can be called for several Outputs with the same indexLiseID if these Outputs are controlling Parameters sharing the same Index List. A best practice would be to flag the application side list handler as modified and to trig a delayed list content reload.
virtual void CPNS::IOutput_NotificationHandler::OnOutput_UpdateSelectorItemListContent ( CPNS::IOutput *const  pNotifiedObject,
CPNS::IListID *const  pSelectorItemListID,
CPNS::uint16 const  wNewSize 
)
inlinevirtual

This to inform the application that the specified selector item list content changed.

Parameters
[in]pNotifiedObjectPointer to the notified output object
[in]pSelectorItemListIDthe Selector Item List ID. Don't forget to Acquire() it if the application needs to keep it for later use.
[in]wNewSizethe new number of items contained in the list
Remarks
This notification can be called for several Outputs with the same indexLiseID if these Outputs are controlling Parameters sharing the same Index List. A best practice would be to flag the application side list handler as modified and to trig a delayed list content reload.