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

Notification handler for Controller. More...

Public Member Functions

virtual void OnController_ConnectionStatus (CPNS::IController *const pNotifiedObject, CPNS::boolean const fConnected)
 This is called on destination change. More...
 
virtual void OnController_RefreshCurrentModifierParameterValue (CPNS::IController *const pNotifiedObject, 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 OnController_RefreshCurrentSelectorParameterValue (CPNS::IController *const pNotifiedObject, 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 OnController_RefreshCurrentTextParameterValue (CPNS::IController *const pNotifiedObject, CPNS::char8 const *const utf8ValueText, CPNS::CombinedRefreshValueAttributes const attributes)
 This to inform the application that a text parameter changed of value. More...
 
virtual void OnController_Assign (CPNS::IController *const pNotifiedObject, CPNS::Enums::ControllerAssignReasons const reason, CPNS::ControllerAssignment const &assignment)=0
 This notification is called to assign a controller to a specific message. More...
 
virtual void OnParameterPathReply (CPNS::IController *const pNotifiedObject, CPNS::char8 const *const utf8ParameterPath)
 Notify about the currently assigned parameter path. More...
 
virtual void OnLearningModeChange (CPNS::IController *const pNotifiedObject, CPNS::boolean const isLearning)
 Notify about learning mode status change for this controller. More...
 

Detailed Description

Notification handler for Controller.

Member Function Documentation

virtual void CPNS::IController_NotificationHandler::OnController_Assign ( CPNS::IController *const  pNotifiedObject,
CPNS::Enums::ControllerAssignReasons const  reason,
CPNS::ControllerAssignment const &  assignment 
)
pure virtual

This notification is called to assign a controller to a specific message.

Current controller assignment data is maintained internally in the CHAI by the Controller object. It can be collected and restored by the SnapShot procedure. The CHAI is always trying to provide a parameter path. So this notification can be called with no utf8OptionalParameterPath during the original assignment, and then later with a valid utf8OptionalParameterPath when this becomes available.

Parameters
[in]pNotifiedObjectPointer to the notified output object
[in]reasontells more about this notification call.
[in]assignmentthe current assignment data
virtual void CPNS::IController_NotificationHandler::OnController_ConnectionStatus ( CPNS::IController *const  pNotifiedObject,
CPNS::boolean const  fConnected 
)
inlinevirtual

This is called on destination change.

This can be used to know when a controller is connected to the input hosting the target parameter.

Parameters
[in]pNotifiedObjectPointer to the notified controller object
[in]fConnectedTRUE if the controller is currently connected to the target endpoint
virtual void CPNS::IController_NotificationHandler::OnController_RefreshCurrentModifierParameterValue ( CPNS::IController *const  pNotifiedObject,
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.

Parameters
[in]pNotifiedObjectPointer to the notified controller object
[in]ValueNew parameter value
[in]utf8ValueTextValue string representation
[in]attributesAdditional attributes
virtual void CPNS::IController_NotificationHandler::OnController_RefreshCurrentSelectorParameterValue ( CPNS::IController *const  pNotifiedObject,
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.

Parameters
[in]pNotifiedObjectPointer to the notified output object
[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::IController_NotificationHandler::OnController_RefreshCurrentTextParameterValue ( CPNS::IController *const  pNotifiedObject,
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.

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::IController_NotificationHandler::OnLearningModeChange ( CPNS::IController *const  pNotifiedObject,
CPNS::boolean const  isLearning 
)
inlinevirtual

Notify about learning mode status change for this controller.

Parameters
[in]pNotifiedObjectPointer to the notified output object
[in]isLearningTRUE if the controller is currently learning.
virtual void CPNS::IController_NotificationHandler::OnParameterPathReply ( CPNS::IController *const  pNotifiedObject,
CPNS::char8 const *const  utf8ParameterPath 
)
inlinevirtual

Notify about the currently assigned parameter path.

This is called in response of CPNS::IController::QueryParameterPath.

Parameters
[in]pNotifiedObjectPointer to the notified output object
[in]utf8ParameterPathstring describing the target parameter path (i.e. "RootDeviceName/SubDeviceName/InputName/ParamName").