WPILibC++  2020.2.2-33-g65eab93
Notifier Functions

Functions

HAL_NotifierHandle HAL_InitializeNotifier (int32_t *status)
 Initializes a notifier. More...
 
void HAL_SetNotifierName (HAL_NotifierHandle notifierHandle, const char *name, int32_t *status)
 Sets the name of a notifier. More...
 
void HAL_StopNotifier (HAL_NotifierHandle notifierHandle, int32_t *status)
 Stops a notifier from running. More...
 
void HAL_CleanNotifier (HAL_NotifierHandle notifierHandle, int32_t *status)
 Cleans a notifier. More...
 
void HAL_UpdateNotifierAlarm (HAL_NotifierHandle notifierHandle, uint64_t triggerTime, int32_t *status)
 Updates the trigger time for a notifier. More...
 
void HAL_CancelNotifierAlarm (HAL_NotifierHandle notifierHandle, int32_t *status)
 Cancels the next notifier alarm. More...
 
uint64_t HAL_WaitForNotifierAlarm (HAL_NotifierHandle notifierHandle, int32_t *status)
 Waits for the next alarm for the specific notifier. More...
 

Detailed Description

Function Documentation

◆ HAL_CancelNotifierAlarm()

void HAL_CancelNotifierAlarm ( HAL_NotifierHandle  notifierHandle,
int32_t *  status 
)

Cancels the next notifier alarm.

This does not cause HAL_WaitForNotifierAlarm to return.

Parameters
notifierHandlethe notifier handle

◆ HAL_CleanNotifier()

void HAL_CleanNotifier ( HAL_NotifierHandle  notifierHandle,
int32_t *  status 
)

Cleans a notifier.

Note this also stops a notifier if it is already running.

Parameters
notifierHandlethe notifier handle

◆ HAL_InitializeNotifier()

HAL_NotifierHandle HAL_InitializeNotifier ( int32_t *  status)

Initializes a notifier.

A notifier is an FPGA controller timer that triggers at requested intervals based on the FPGA time. This can be used to make precise control loops.

Returns
the created notifier

◆ HAL_SetNotifierName()

void HAL_SetNotifierName ( HAL_NotifierHandle  notifierHandle,
const char *  name,
int32_t *  status 
)

Sets the name of a notifier.

Parameters
notifierHandlethe notifier handle
namename

◆ HAL_StopNotifier()

void HAL_StopNotifier ( HAL_NotifierHandle  notifierHandle,
int32_t *  status 
)

Stops a notifier from running.

This will cause any call into HAL_WaitForNotifierAlarm to return.

Parameters
notifierHandlethe notifier handle

◆ HAL_UpdateNotifierAlarm()

void HAL_UpdateNotifierAlarm ( HAL_NotifierHandle  notifierHandle,
uint64_t  triggerTime,
int32_t *  status 
)

Updates the trigger time for a notifier.

Note that this time is an absolute time relative to HAL_GetFPGATime()

Parameters
notifierHandlethe notifier handle
triggerTimethe updated trigger time

◆ HAL_WaitForNotifierAlarm()

uint64_t HAL_WaitForNotifierAlarm ( HAL_NotifierHandle  notifierHandle,
int32_t *  status 
)

Waits for the next alarm for the specific notifier.

This is a blocking call until either the time elapses or HAL_StopNotifier gets called.

Parameters
notifierHandlethe notifier handle
Returns
the FPGA time the notifier returned