Visual C#

Create Callback Function

The callback function has the following format. You can specify any name for this function.

public int CallBackProc(short Id, short Message, int wParam, int lParam, void *Param);

[unsafe] keyword is required for any functions dealing with pointers.
Add [unsafe] keyword to the created callback routine.

unsafe public int CallBackProc(short Id, short Message, int wParam, int lParam, void *Param)
{
.
.
.

 

Use Delegate

In Visual C#, please use delegate to handle a function pointer.
The delegate declarations for each callback routine are written in the clogger_api.cs file.

Notify Event

PLOGGEREVENTCALLBACK

 

Register Callback Function

Please use the following functions to register callback functions.

Notify Event

LoggerSetNotifyEvent

 

Flow of Registering Callback Function

. Initialize delegate
. Get the GCHandle to prevent the garbage collector from moving the delegate used for interrupt processing
. Get a stable pointer to the delegate used for interrupt processing
. Register the retrieved stable pointer by using functions such as LoggerSetNotifyEvent function
. Release the GCHandle for the delegate used for interrupt processing, when it become unnecessary (for example, when the application terminates)

For these specific coding content, please refer to samples and Note of Using Visual C#.