CHAILink SDK  Version 1.3
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
CLC_Callbacks.h File Reference
#include "CLCm_Defines.h"
#include "CLC_Enums.h"

Go to the source code of this file.

Data Structures

struct  CLC_Application_CallbackList
 Callback list for Application callbacks. More...
 
struct  CLC_ARH_CallbackList
 Callback list for all asynchronous call returns. More...
 
struct  CLC_NH_CallbackList
 Callback list for all notification handlers. More...
 
struct  CLC_Callbacks
 Structure containing all CHAILink client callbacks. More...
 

Typedefs

typedef void(* APP_ERRORCB )(CLC_ErrorCode const errorCode, void *const pParam)
 CHAILink to Application error reporting callback. More...
 
typedef void(* APP_CONNECTIONSTATECHANGE )(CPBOOLEAN const fConnected, CPUINT16 const wReason, void *const pParam)
 CHAILink to Application Connection Status Change callback. More...
 
typedef void(* APP_COPPERLANDOPROCESS )(void *const pParam)
 Entry point for the CopperLan application pseudo task. See pfnCPDoProcess in CLC_Callbacks structure. More...
 
typedef void(* APP_SYSTEMDOPROCESS )(void *const pParam)
 Entry point for the System pseudo task. See pfnSystemDoProcess in CLC_Callbacks structure. More...
 
typedef void(* ARH_CHAI_REMOTEDEVICE_FIND )(AsyncResult const result, CPHOOKEDOBJECT const hRemoteDevice, CPREMOTEDEVICEINFO const *const pRemoteDeviceInfo, CPCHAR8 const *const utf8Name, CPCHAR8 const *const utf8MachineName, CPHOOKEDOBJECT const hDeviceEnumContext, CPUINT32 const dwClientContextData)
 Used by the CHAI during device enumeration in response to CHAI_RemoteDevice_FindFirst_Async or CHAI_RemoteDevice_FindNext_Async function call. More...
 
typedef void(* ARH_REMOTEDEVICE_GETNAME )(AsyncResult const result, DeviceNameFormats const format, CPCHAR8 const *const utf8Name, CPUINT32 const dwClientContextData)
 End of asynchronous for the RemoteDevice_GetName_Async function call. More...
 
typedef void(* ARH_REMOTEDEVICE_GETPROPERTYSTRING )(AsyncResult const result, DeviceProperties const propertyID, CPCHAR8 const *const utf8Value, CPUINT32 const dwClientContextData)
 End of asynchronous for the RemoteDevice_GetProperty_Async function call (if the property is a string property). More...
 
typedef void(* ARH_REMOTEDEVICE_GETPROPERTYNUMERIC )(AsyncResult const result, DeviceProperties const propertyID, CPUINT64 const qwValue, CPUINT32 const dwClientContextData)
 End of asynchronous for the RemoteDevice_GetProperty_Async function call (if the property is a numeric property). More...
 
typedef void(* ARH_REMOTEDEVICE_GETINPUTINFO )(AsyncResult const result, CPUINT16 const wInputID, CPCHAR8 const *const utf8Name, InOutCapabilities const inCaps, CPSECTIONID const *const pSectionID, CPUINT32 const dwClientContextData)
 End of asynchronous for the RemoteDevice_GetInputInformation_Async function call. More...
 
typedef void(* ARH_REMOTEDEVICE_GETOUTPUTINFO )(AsyncResult const result, CPUINT16 const wOutputID, CPCHAR8 const *const utf8Name, InOutCapabilities const outCaps, CPSECTIONID const *const pSectionID, CPCHAR8 const *const utf8SectionName, CPUINT32 const dwClientContextData)
 End of asynchronous for the RemoteDevice_GetOutputInformation_Async function call. More...
 
typedef void(* ARH_REMOTEDEVICE_GETDESTINATION )(AsyncResult const result, CPUINT16 const wOutputID, CPUINT16 const wDestinationIndex, CPCHAR8 const *const utf8Name, CPENDPOINT const *pDestination, CPUINT32 const dwClientContextData)
 End of asynchronous for the RemoteDevice_GetDestination_Async function call. More...
 
typedef void(* ARH_REMOTEDEVICE_GETDESTINATIONCOUNT )(AsyncResult const result, CPUINT16 const wOutputID, CPUINT16 const wDestCount, CPUINT32 const dwClientContextData)
 End of asynchronous for the RemoteDevice_GetDestination_Async function call. More...
 
typedef void(* ARH_REMOTEDEVICE_GETCONNECTEDDEVICES )(AsyncResult const result, CPDEVICEID const *const pSourceDevID, CPDEVICEID const *const pConnectedDevID, CPUINT32 const dwClientContextData)
 End of asynchronous for the RemoteDevice_GetConnectedDevices_Async function call. More...
 
typedef void(* ARH_REMOTEDEVICE_GETDETAILEDDESTINATION )(AsyncResult const result, CPUINT16 const wOutputID_or_ControllerID, CPUINT16 const wDestinationIndex, CPENDPOINT const *pDestination, CPHOOKEDOBJECT const hTargetRemoteDevice, CPCHAR8 const *const utf8EndPointName, CPCHAR8 const *const utf8TargetMachineName, CPUINT32 const dwClientContextData)
 End of asynchronous for the RemoteDevice_GetDetailedDestination_Async function call. More...
 
typedef void(* ARH_REMOTEDEVICE_GETPARAMINFOMODIFIER )(CPSECTIONID const *const pSectionID, CPPARAMETERID const *const pParamID, CPCHAR8 const *const utf8Name, CPHOOKEDOBJECT const hIndexListID, CPUINT16 const wMidPointValue, CPCHAR8 const *const utf8LabelMin, CPCHAR8 const *const utf8LabelMidPoint, CPCHAR8 const *const utf8LabelMax, DataTypes const preferredDataType, CPUINT16 const wGroup, ModifierInformationProfiles const informationProfiles, ControllerTypes preferredControllerType, CPUINT32 const dwClientContextData)
 End of asynchronous for the RemoteDevice_GetParameterInfo_Async function call when the parameter is a modifer parameter. More...
 
typedef void(* ARH_REMOTEDEVICE_GETPARAMINFOSELECTOR )(CPSECTIONID const *const pSectionID, CPPARAMETERID const *const pParamID, CPCHAR8 const *const utf8Name, CPHOOKEDOBJECT const hIndexListID, CPUINT16 const wItemIndexMax, CPHOOKEDOBJECT const hSelectorItemListID, CPUINT16 const wGroup, SelectorInformationProfiles const informationProfiles, ControllerTypes preferredControllerType, CPUINT32 const dwClientContextData)
 End of asynchronous for the RemoteDevice_GetParameterInfo_Async function call when the parameter is a selector parameter. More...
 
typedef void(* ARH_REMOTEDEVICE_GETPARAMINFOTEXT )(CPSECTIONID const *const pSectionID, CPPARAMETERID const *const pParamID, CPCHAR8 const *const utf8Name, CPHOOKEDOBJECT const hIndexListID, CPUINT16 const wGroup, TextInformationProfiles const informationProfiles, ControllerTypes preferredControllerType, CPUINT32 const dwClientContextData)
 End of asynchronous for the RemoteDevice_GetParameterInfo_Async function call when the parameter is a text parameter. More...
 
typedef void(* ARH_REMOTEDEVICE_GETPARAMINFONODATA )(CPSECTIONID const *const pSectionID, CPUINT32 const dwClientContextData)
 No more data available for the RemoteDevice_GetParameterInfo_Async function call. More...
 
typedef void(* ARH_REMOTEDEVICE_GETCONTROLLERINFO )(AsyncResult const result, CPUINT16 const wControllerID, CPCHAR8 const *const utf8Name, ControllerTypes const controllerTypes, MessageTypes const preferredMsgType, CPUINT16 const wPreferredMsgNum, CPUINT16 const wGroup, CPSECTIONID const *const pSectionID, CPCHAR8 const *const utf8SectionName, CPCONTROLLERASSIGNMENT const *const pCurrentAssignment, CPUINT32 const dwClientContextData)
 End of asynchronous for the RemoteDevice_GetControllerInfo_Async function call. More...
 
typedef void(* ARH_REMOTEDEVICE_GETMODIFIERDATATYPEINFO )(AsyncResult const result, CPPARAMETERID const *const pParamID, CPVALUE const *const pMinValue, CPVALUE const *const pMidValue, CPVALUE const *const pMaxValue, CPUINT32 const dwClientContextData)
 End of asynchronous for the RemoteDevice_GetModifierDataTypeInfo_Async function call. Modifier parameter value range for a requested data type info. More...
 
typedef void(* ARH_REMOTEDEVICE_GETSELECTORPARAMVALUETEXT )(AsyncResult const result, CPHOOKEDOBJECT const hSelectorItemListID, CPUINT16 const wItemIndex, CPUINT16 const wValue, CPCHAR8 const *const utf8Text, CPUINT32 const dwClientContextData)
 End of asynchronous for the RemoteDevice_GetSelectorParameterValueText_Async function call. More...
 
typedef void(* ARH_REMOTEDEVICE_GETINDEXLISTITEM )(AsyncResult const result, CPHOOKEDOBJECT const hIndexListID, CPUINT16 const wMsgIndex, CPCHAR8 const *const utf8Label, CPUINT32 const dwClientContextData)
 End of asynchronous for the RemoteDevice_GetIndexListItem_Async function call. More...
 
typedef void(* ARH_REMOTEDEVICE_COLLECTSNAPSHOTDATA )(AsyncResult const result, SnapshotBlockPriorities const priority, SnapshotTypes const snapshotType, CPUINT32 const dwOffset, CPUINT32 const dwSnapshotContextData, CPUINT16 const wBlockSize, CPBOOLEAN const fIsLastBlock, CPBYTE const *const pBuffer, CPUINT32 const dwClientContextData)
 End of asynchronous for RemoteDevice_CollectSnapshotData_Async function call. More...
 
typedef void(* ARH_REMOTEDEVICE_RESTORESNAPSHOTDATA )(Errors const returnCode, CPUINT32 const dwNextOffset, CPUINT32 const dwSnapshotContextData, CPUINT32 const dwClientContextData)
 End of asynchronous for RemoteDevice_RestoreSnapshotData_Async function call. More...
 
typedef void(* ARH_REMOTEDEVICE_SMARTCONNECTSTART )(SmartConnectAsyncResult const status, CPUINT16 const wSessionID, Errors const errCode, CPUINT32 const dwClientContextData)
 SmartConnect status information. More...
 
typedef void(* NH_CHAI_NOTIFICATION )(CHAINotificationTypes const notification, CPENDPOINT const *const pOptionalEndpoint)
 Used by the CHAI to notify the application about global network changes. More...
 
typedef void(* NH_CHAI_DEVICEDECLARATION )(DeviceDeclarationNotificationTypes const declarationType, CPREMOTEDEVICEINFO const *const pRemoteDeviceInfo, CPCHAR8 const *const utf8DeviceName, CPHOOKEDOBJECT const hRemoteDevice)
 Called on device declaration. Can occur if a new root device is connected to the network, if a device needs to reflect changes (capabilities, name...) More...
 
typedef void(* NH_CHAI_DEVICEDISCARDED )(CPDEVICEID const *const pDevID, DeviceDiscardedReasons const reason)
 Called on device unplug, or if a device becomes unreachable. More...
 
typedef void(* NH_CHAI_DEVICEIDENTITYCHANGED )(CPDEVICEID const *const pOldDeviceID, CPDEVICEID const *const pNewDeviceID)
 Inform the application that a device identity changed. More...
 
typedef void(* NH_CHAI_WARNING )(CPENDPOINT const *pOptionalSource, WarningCodes const code, WarningDomains const eDomain, CPCHAR8 const *const utf8Title, CPCHAR8 const *const utf8Content)
 The CHAI received a warning message and forward it to the application. More...
 
typedef void(* NH_CHAI_SIGNAL )(CPUINT16 const wSignalNumber, CPUINT16 const wOptionalData0, CPUINT16 const wOptionalData1, CPUINT16 const wOptionalData2, CPUINT16 const wOptionalData3, CPCHAR8 const *const utf8OptionalData, CPENDPOINT const *const pOptionalEndPoint, CPDEVICEID const *const pSourceDevID)
 Called if the CHAI received a signal. More...
 
typedef void(* NH_CHAI_GLOBALTIMER )(SystemTime const globalTime, GlobalTimerNotificationFlags const flags)
 Used by the CHAI to notify global timer event. More...
 
typedef void(* NH_CP2MIDI_MIDIMESSAGE )(CPHOBJECT const hLocalDevice, ObjectTypes const deviceType, CPUINT32 const dwDeviceUserData, CPUINT8 const bSize, CPBYTE const *const pData, CPENDPOINT const *const pSource)
 Incoming MIDI message notification for CP2Midi, VMIDILinkIn, HybridMidi and VMIDILinkHybrid devices. More...
 
typedef void(* NH_CP2MIDI_MIDISYSEX )(CPHOBJECT const hLocalDevice, ObjectTypes const deviceType, CPUINT32 const dwDeviceUserData, CPBOOLEAN const fLastBlock, CPUINT8 const bSize, CPBYTE const *const pData, CPENDPOINT const *const pSource)
 Incoming SYSEX message notification for CP2Midi and HybridMidi devices. More...
 
typedef void(* NH_VMIDILINKIN_STATUSCHANGE )(CPHOBJECT const hLocalDevice, ObjectTypes const deviceType, CPUINT32 const dwDeviceUserData, CPBOOLEAN const fConnected)
 Called when the connection status changed. More...
 
typedef void(* NH_VMIDILINKIN_EVENTMESSAGE )(CPHOBJECT const hLocalDevice, ObjectTypes const deviceType, CPUINT32 const dwDeviceUserData, CPUINT8 const bChannel, CPEVENTMSG const *const pEvent)
 Called on event message reception. More...
 
typedef void(* NH_VMIDILINKIN_MODIFIERMESSAGE )(CPHOBJECT const hLocalDevice, ObjectTypes const deviceType, CPUINT32 const dwDeviceUserData, CPUINT8 const bChannel, CPMODIFIERMSG const *const pModifier)
 Called on modifier message reception. More...
 
typedef void(* NH_VMIDILINKIN_SELECTORMESSAGE )(CPHOBJECT const hLocalDevice, ObjectTypes const deviceType, CPUINT32 const dwDeviceUserData, CPUINT8 const bChannel, CPSELECTORMSG const *const pSelector)
 Called on selector message reception. More...
 
typedef void(* NH_VMIDILINKIN_MIDISYSEXMESSAGE )(CPHOBJECT const hLocalDevice, ObjectTypes const deviceType, CPUINT32 const dwDeviceUserData, CPBOOLEAN const fIsLastBlock, CPUINT8 const bDataSize, CPUINT8 const *const pData)
 Called on Midi SysEx message reception. More...
 
typedef void(* NH_VMIDILINKIN_CLOCKTICK )(CPHOBJECT const hLocalDevice, ObjectTypes const deviceType, CPUINT32 const dwDeviceUserData)
 Called if the VMIDILink receives a clock tick. More...
 
typedef void(* NH_VMIDILINKIN_CLOCKCOMMAND )(CPHOBJECT const hLocalDevice, ObjectTypes const deviceType, CPUINT32 const dwDeviceUserData, ClockCommands const command)
 Called if the VMIDILink receives a clock command. More...
 
typedef void(* NH_VMIDILINKOUT_STATUSCHANGE )(CPHOBJECT const hLocalDevice, ObjectTypes const deviceType, CPUINT32 const dwDeviceUserData, CPBOOLEAN const fConnected)
 This is called when the connection status changed. More...
 
typedef void(* NH_VMIDILINKOUT_DATACONSUMED )(CPHOBJECT const hLocalDevice, ObjectTypes const deviceType, CPUINT32 const dwDeviceUserData)
 This is called when the remote port consumed sysex data. More...
 
typedef void(* NH_SHAREDDISPLAY_REQUEST )(CPHOBJECT const hSharedDisplay, ObjectTypes const deviceType, CPUINT32 const dwDeviceUserData, CPDEVICEID const *pSourceDevID)
 Called on shared display request. More...
 
typedef void(* NH_SHAREDDISPLAY_SESSIONCLOSED )(CPHOBJECT const hSharedDisplay, ObjectTypes const deviceType, CPUINT32 const dwDeviceUserData)
 Called if shared display session was closed by the client. More...
 
typedef void(* NH_SHAREDDISPLAY_DISPLAYCLEAR )(CPHOBJECT const hSharedDisplay, ObjectTypes const deviceType, CPUINT32 const dwDeviceUserData)
 Called if the client is requesting to clear display. More...
 
typedef void(* NH_SHAREDDISPLAY_SETTEXT )(CPHOBJECT const hSharedDisplay, ObjectTypes const deviceType, CPUINT32 const dwDeviceUserData, CPUINT16 const wX, CPUINT16 const wY, CPCHAR8 const *const utf8Text)
 Called if the client is requesting to display text. More...
 
typedef void(* NH_SHAREDDISPLAY_SETCURSOR )(CPHOBJECT const hSharedDisplay, ObjectTypes const deviceType, CPUINT32 const dwDeviceUserData, CPUINT16 const wX, CPUINT16 const wY, SharedDisplayCursorTypes const type)
 Called if the client is requesting to move the cursor. More...
 
typedef void(* NH_SHAREDDISPLAYCLIENT_REQUESTACCEPTED )(CPHOBJECT const hSharedDisplayClient, ObjectTypes const deviceType, CPUINT32 const dwDeviceUserData, SharedDisplayCaps const displayCaps, CPUINT16 const wWidth, CPUINT16 const wHeight)
 Called if a shared display server is accepting the request. More...
 
typedef void(* NH_SHAREDDISPLAYCLIENT_SESSIONCLOSED )(CPHOBJECT const hSharedDisplayClient, ObjectTypes const deviceType, CPUINT32 const dwDeviceUserData)
 Called if shared display session closed by the server. More...
 
typedef void(* NH_SHAREDDISPLAYCLIENT_ONKEY )(CPHOBJECT const hSharedDisplayClient, ObjectTypes const deviceType, CPUINT32 const dwDeviceUserData, SharedDisplayKeyTypes const type, CPCHAR8 const *const utf8FromKeyboard)
 Forward a key/keyboard entry to the application. More...
 
typedef void(* NH_PIPE_PEERCHANGE )(CPHOBJECT const hPipe, CPUINT32 const dwPipeUserData, CPENDPOINT const *const pPeer, CPBOOLEAN const fNewPeer)
 Peer change notification. More...
 
typedef void(* NH_PIPE_DATACONSUMED )(CPHOBJECT const hPipe, CPUINT32 const dwPipeUserData)
 This is called on reception of DataConsumed from the target side. More...
 
typedef void(* NH_PIPE_MESSAGE )(CPHOBJECT const hPipe, CPUINT32 const dwPipeUserData, CPHOBJECT const hMessage, ObjectTypes const messageType, CPENDPOINT const *const pPeer)
 Called on message reception other than Event, Modifier, Text, Selector and MidiSysEx. Actually only Data Transfer Message are handled this way. More...
 
typedef void(* NH_PIPE_EVENTMESSAGE )(CPHOBJECT const hPipe, CPUINT32 const dwPipeUserData, CPEVENTMSG const *const pEvent, CPENDPOINT const *const pPeer)
 Called on event message reception. More...
 
typedef void(* NH_PIPE_MODIFIERMESSAGE )(CPHOBJECT const hPipe, CPUINT32 const dwPipeUserData, CPMODIFIERMSG const *const pModifier, CPENDPOINT const *const pPeer)
 Called on modifier message reception. More...
 
typedef void(* NH_PIPE_SELECTORMESSAGE )(CPHOBJECT const hPipe, CPUINT32 const dwPipeUserData, CPSELECTORMSG const *const pSelector, CPENDPOINT const *const pPeer)
 Called on selector message reception. More...
 
typedef void(* NH_PIPE_TEXTMESSAGE )(CPHOBJECT const hPipe, CPUINT32 const dwPipeUserData, CPTEXTMSG const *const pText, CPENDPOINT const *const pPeer)
 Called on text message reception. More...
 
typedef void(* NH_REMOTEDEVICE_READY )(CPHOOKEDOBJECT const hRemoteDevice, CPBOOLEAN const fValid, CPCHAR8 const *const utf8Name, CPCHAR8 const *const utf8MachineName)
 A remote device object creation is done. More...
 
typedef void(* NH_SERVER_ASKTOENTERBL )(void)
 Called when the VNM want the client to enter in boot loader mode. More...
 
Notification
typedef void(* NH_LOCALDEVICE_NOTIFICATION )(CPHOBJECT const hLocalDevice, ObjectTypes const deviceType, CPUINT32 const dwDeviceUserData, LocalDeviceNotificationTypes const notification)
 This notification informs the application about some update related to a local device. More...
 
Snapshot
typedef void(* NH_LOCALDEVICE_SNAPSHOT_REQUESTCOLLECTSNAPSHOTDATA )(CPHOBJECT const hLocalDevice, ObjectTypes const deviceType, CPUINT32 const dwDeviceUserData, CPUINT16 const wRequestID, SnapshotTypes const snapshotType, CPUINT32 const dwOffset, CPUINT32 const dwSnapshotContextData, CPUINT16 const wMaxBlockSize)
 Called by the CHAI to request snapshot data related to the device. More...
 
typedef void(* NH_LOCALDEVICE_SNAPSHOT_REQUESTRESTORESNAPSHOTDATA )(CPHOBJECT const hLocalDevice, ObjectTypes const deviceType, CPUINT32 const dwDeviceUserData, CPUINT16 const wRequestID, SnapshotTypes const snapshotType, CPUINT32 const dwOffset, CPUINT32 const dwSnapshotContextData, CPUINT16 const wBlockSize, CPBOOLEAN const fIsLastBlock, CPBYTE const *const pBlockData)
 Called by the CHAI to restore snapshot data related to the device. More...
 
SmartConnect Target
typedef void(* NH_LOCALDEVICE_SCT_STARTED )(CPHOBJECT const hLocalDevice, ObjectTypes const deviceType, CPUINT32 const dwDeviceUserData, CPUINT16 const wSessionID, CPUINT16 const wArraySize, CPBOOLEAN const fTruncated)
 Initiate a SmartConnect session. The source device IDs array contains a list of controller devices to be assigned during this session. The LocalDevice_SCT_RequestControllerList function can be used to continue the SmartConnect process. More...
 
typedef void(* NH_LOCALDEVICE_SCT_SECTIONLISTREPLY )(CPHOBJECT const hLocalDevice, ObjectTypes const deviceType, CPUINT32 const dwDeviceUserData, CPUINT16 const wSessionID, CPDEVICEID const *const pSourceDevID, CPUINT16 const wArraySize, CPBOOLEAN const fTruncated)
 Reply to a section list request. More...
 
typedef void(* NH_LOCALDEVICE_SCT_CONTROLLERLISTREPLY )(CPHOBJECT const hLocalDevice, ObjectTypes const deviceType, CPUINT32 const dwDeviceUserData, CPUINT16 const wSessionID, CPDEVICEID const *const pSourceDevID, CPUINT16 const wArraySize, CPBOOLEAN const fTruncated)
 Reply to a controller list request. More...
 
typedef void(* NH_LOCALDEVICE_SCT_FINISHED )(CPHOBJECT const hLocalDevice, ObjectTypes const deviceType, CPUINT32 const dwDeviceUserData, CPUINT16 const wSessionID)
 Notify end of SmartConnect session. Time to release application data related to the specified session ID. More...
 
Signal
typedef void(* NH_LOCALDEVICE_SIGNAL )(CPHOBJECT const hLocalDevice, ObjectTypes const deviceType, CPUINT32 const dwDeviceUserData, CPUINT16 const wSignalNumber, CPUINT16 const wOptionalData0, CPUINT16 const wOptionalData1, CPUINT16 const wOptionalData2, CPUINT16 const wOptionalData3, CPCHAR8 const *const utf8OptionalData, CPENDPOINT const *const pOptionalEndPoint, CPDEVICEID const *const pSourceDevID)
 Called if the local device received a signal. More...
 
General
typedef void(* NH_INPUT_SOURCECHANGE )(CPHOBJECT const hInput, CPUINT32 const dwInputUserData, CPENDPOINT const *const pSource, ISCCauses const operation)
 Input source change notification. More...
 
Messaging
typedef void(* NH_INPUT_MESSAGE )(CPHOBJECT const hInput, CPUINT32 const dwInputUserData, CPHOOKEDOBJECT const hMessage, ObjectTypes const messageType, CPENDPOINT const *const pSource, CPTIMESTAMPINFO const *const pTimeStamp)
 Called on message reception other than Event, Modifier, Text, Selector and MidiSysEx. Actually only Data Transfer Message are handled this way. More...
 
typedef void(* NH_INPUT_EVENTMESSAGE )(CPHOBJECT const hInput, CPUINT32 const dwInputUserData, CPEVENTMSG const *const pEvent, CPENDPOINT const *const pSource, CPTIMESTAMPINFO const *const pTimeStamp)
 Called on event message reception. More...
 
typedef void(* NH_INPUT_MODIFIERMESSAGE )(CPHOBJECT const hInput, CPUINT32 const dwInputUserData, CPMODIFIERMSG const *const pModifier, CPENDPOINT const *const pSource, CPTIMESTAMPINFO const *const pTimeStamp)
 Called on modifier message reception. More...
 
typedef void(* NH_INPUT_SELECTORMESSAGE )(CPHOBJECT const hInput, CPUINT32 const dwInputUserData, CPSELECTORMSG const *const pSelector, CPENDPOINT const *const pSource, CPTIMESTAMPINFO const *const pTimeStamp)
 Called on selector message reception. More...
 
typedef void(* NH_INPUT_TEXTMESSAGE )(CPHOBJECT const hInput, CPUINT32 const dwInputUserData, CPTEXTMSG const *const pText, CPENDPOINT const *const pSource, CPTIMESTAMPINFO const *const pTimeStamp)
 Called on text message reception. More...
 
typedef void(* NH_INPUT_MIDISYSEXMESSAGE )(CPHOBJECT const hInput, CPUINT32 const dwInputUserData, CPBOOLEAN const fIsLastBlock, CPUINT8 const bDataSize, CPUINT8 const *const pData, CPENDPOINT const *const pSource, CPTIMESTAMPINFO const *const pTimeStamp)
 Called on Midi SysEx message reception. More...
 
Clock
typedef void(* NH_INPUT_CLOCKDEFINITION )(CPHOBJECT const hInput, CPUINT32 const dwInputUserData, CPENDPOINT const *const pSource, CPUINT16 const wBPM, CPUINT8 const bCPQNMultiplier)
 Called if the input receives a clock definition. More...
 
typedef void(* NH_INPUT_CLOCKTICK )(CPHOBJECT const hInput, CPUINT32 const dwInputUserData, CPENDPOINT const *pSource, CPUINT16 const wBPM, CPUINT16 const wResolution, CPUINT16 const wTick)
 Called if the input receives a clock tick. More...
 
typedef void(* NH_INPUT_CLOCKCOMMAND )(CPHOBJECT const hInput, CPUINT32 const dwInputUserData, CPENDPOINT const *pSource, ClockCommands const command)
 Called if the input receives a clock command. More...
 
typedef void(* NH_INPUT_CLOCKSETPOSITION )(CPHOBJECT const hInput, CPUINT32 const dwInputUserData, CPENDPOINT const *pSource, CPUINT32 const dwPosition, CPBOOLEAN const fImmediate)
 Called if the input receives a clock position. More...
 
Parameters handling
typedef void(* NH_INPUTPARAM_REQUESTREFRESHCURRENTVALUE )(CPHOBJECT const hInput, CPUINT32 const dwInputUserData, CPHOBJECT const hParameter, ObjectTypes const parameterType, CPUINT32 const dwParameterUserData, CPUINT16 const wIndex)
 Called by the CHAI to request a current value refresh related to a specific parameter. When this method is called, the application should reply using Parameter_RefreshCurrentModifierParameterValue | Parameter_RefreshCurrentSelectorParameterValue | Parameter_RefreshCurrentTextParameterValue. More...
 
typedef void(* NH_INPUTPARAM_ONMODIFIERUPDATE )(CPHOBJECT const hInput, CPUINT32 const dwInputUserData, CPHOBJECT const hParameter, CPUINT32 const dwParameterUserData, CPUINT16 const wUpdatedRawValue, CPMODIFIERMSG const *const pModifier)
 An Modifier message related to this Parameter has been received. The updated raw value argument contains the value provided by the Modifier message, except in case of relative Modifier. In this case, an absolute raw value is calculated from the last known current value and the offset provided in the Modifier. The original Modifier message object is also forwarded to provide all of its content to the application (automation,...). More...
 
typedef void(* NH_INPUTPARAM_ONSELECTORUPDATE )(CPHOBJECT const hInput, CPUINT32 const dwInputUserData, CPHOBJECT const hParameter, CPUINT32 const dwParameterUserData, CPHOBJECT const hSelectorItemList, CPUINT16 const wValue, CPSELECTORMSG const *const pSelector)
 A Selector message related to this Parameter has been received. The updated item argument points corresponds to the value provided by the Selector message, except in case of proportional or relative Selector. In this case, the selected item is calculated from the Selector Item list size (proportional mode) or from the last known current value (relative mode). The original Selector message object is also forwarded to provide all of its content to the application (automation,...). More...
 
typedef void(* NH_INPUTPARAM_ONTEXTUPDATE )(CPHOBJECT const hInput, CPUINT32 const dwInputUserData, CPHOBJECT const hParameter, CPUINT32 const dwParameterUserData, CPTEXTMSG const *const pText)
 A Text message related to this Parameter has been received. More...
 
Standard notification handling
typedef void(* NH_OUTPUT_FLOWCONTROL )(CPHOBJECT const hOutput, CPUINT32 const dwOutputUserData, CPBOOLEAN const fReady)
 Called on flow control status update. More...
 
typedef void(* NH_OUTPUT_DATACONSUMED )(CPHOBJECT const hOutput, CPUINT32 const dwOutputUserData)
 This is called on reception of DataConsumed from the target side. More...
 
typedef void(* NH_OUTPUT_DESTINATIONCHANGE )(CPHOBJECT const hOutput, CPUINT32 const dwOutputUserData, CPENDPOINT const *const pDestination, ODCOperations const operation)
 Called on destination change. More...
 
typedef void(* NH_OUTPUT_REFRESHPARAMETERDEFINITION )(CPHOBJECT const hOutput, CPUINT32 const dwOutputUserData, CPENDPOINT const *pSource)
 Called to inform that the layout of parameters changed for the specified source. More...
 
typedef void(* NH_OUTPUT_UPDATEINDEXLISTCONTENT )(CPHOBJECT const hOutput, CPUINT32 const dwOutputUserData, CPHOOKEDOBJECT const hIndexListID)
 This to inform the application that the specified index list content changed. More...
 
typedef void(* NH_OUTPUT_UPDATESELECTORITEMLISTCONTENT )(CPHOBJECT const hOutput, CPUINT32 const dwOutputUserData, CPHOOKEDOBJECT const hSelectorItemListID, CPUINT16 const wNewSize)
 This to inform the application that the specified selector item list content changed. More...
 
typedef void(* NH_OUTPUT_REFRESHCURRENTMODIFIERPARAMVALUE )(CPHOBJECT const hOutput, CPUINT32 const dwOutputUserData, CPENDPOINT const *const pSource, CPPARAMETERID const *const pParamID, CPVALUE const *const pValue, CPCHAR8 const *const utf8ValueText, RefreshValueAttributes const attributes)
 Called to inform that a modifier parameter changed its value. More...
 
typedef void(* NH_OUTPUT_REFRESHCURRENTSELECTORPARAMVALUE )(CPHOBJECT const hOutput, CPUINT32 const dwOutputUserData, CPENDPOINT const *const pSource, CPPARAMETERID const *const pParamID, CPUINT16 const wValue, CPCHAR8 const *const utf8ValueText, RefreshValueAttributes const attributes, CPUINT16 const wProportionalValue)
 Called to inform that a selector parameter changed its value. More...
 
typedef void(* NH_OUTPUT_REFRESHCURRENTTEXTPARAMVALUE )(CPHOBJECT const hOutput, CPUINT32 const dwOutputUserData, CPENDPOINT const *const pSource, CPPARAMETERID const *const pParamID, CPCHAR8 const *const utf8ValueText, RefreshValueAttributes const attributes)
 Called to inform that a text parameter changed its value. More...
 
Clock notification handling
typedef void(* NH_OUTPUT_CLOCK_GENERATORCOMMAND )(CPHOBJECT const hOutput, CPUINT32 const dwOutputUserData, ClockGeneratorCommands cmd)
 This is called to control clock generator status (enabled by default) More...
 
Controller notification handling
typedef void(* NH_CONTROLLER_CONNECTIONSTATUS )(CPHOBJECT const hController, CPUINT32 const dwControllerUserData, CPBOOLEAN const fConnected)
 This is called on destination change. This can be used to know when a controller is connected to the input hosting the target parameter. More...
 
typedef void(* NH_CONTROLLER_REFRESHCURRENTMODIFIERPARAMVALUE )(CPHOBJECT const hController, CPUINT32 const dwControllerUserData, CPVALUE const *const pValue, CPCHAR8 const *const utf8ValueText, RefreshValueAttributes const attributes)
 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. More...
 
typedef void(* NH_CONTROLLER_REFRESHCURRENTSELECTORPARAMVALUE )(CPHOBJECT const hController, CPUINT32 const dwControllerUserData, CPUINT16 const wValue, CPCHAR8 const *const utf8ValueText, RefreshValueAttributes const attributes, CPUINT16 const wProportionalValue)
 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. More...
 
typedef void(* NH_CONTROLLER_REFRESHCURRENTTEXTPARAMVALUE )(CPHOBJECT const hController, CPUINT32 const dwControllerUserData, CPCHAR8 const *const utf8ValueText, RefreshValueAttributes const attributes)
 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. More...
 
typedef void(* NH_CONTROLLER_ASSIGN )(CPHOBJECT const hController, CPUINT32 const dwControllerUserData, ControllerAssignReasons const reason, CPCONTROLLERASSIGNMENT const *const pAssignment)
 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. More...
 
typedef void(* NH_CONTROLLER_ONPARAMETERPATHREPLY )(CPHOBJECT const hController, CPUINT32 const dwControllerUserData, CPCHAR8 const *const utf8ParameterPath)
 Notify about the currently assigned parameter path. This is called in response of CPNS::IController::QueryParameterPath. More...
 
typedef void(* NH_CONTROLLER_ONLEARNINGMODECHANGE )(CPHOBJECT const hController, CPUINT32 const dwControllerUserData, CPBOOLEAN const fIsLearning)
 Notify about learning mode status change for this controller. More...
 

Variables

CLC_Callbacks g_CLCCb