SwTimerLiasion#
Modules#
Enumerations#
Defines return values from SwTimerLiaison methods.
Typedefs#
Defines return values from SwTimerLiaison methods.
TimerLiaison object.
Functions#
Initialize TimerLiaison.
Configures the Receiver task of callbacks.
Register a SwTimer to a TimerLiaison.
Must be called from requested callback task when the task notification bit assigned to TimerLiaison is set.
Method provided for the SwTimers to call.
Method provided for the SwTimers to call from ISR.
Method provided for the SwTimers to call.
Method provided for the SwTimers to call from ISR.
Macros#
Space for holding FreeRTOS StaticTimer_t.
Enumeration Documentation#
ESwTimerLiaisonStatus#
ESwTimerLiaisonStatus
Defines return values from SwTimerLiaison methods.
Enumerator | |
---|---|
ESWTIMERLIAISON_STATUS_SUCCESS | ESWTIMERLIAISON_STATUS_SUCCESS. |
ESWTIMERLIAISON_STATUS_LIST_FULL | ESWTIMERLIAISON_STATUS_LIST_FULL. |
ESWTIMERLIAISON_STATUS_ALREADY_REGISTRERED | ESWTIMERLIAISON_STATUS_ALREADY_REGISTRERED. |
71
of file /mnt/raid/workspaces/ws.6QOxxjIBR/overlay/gsdk/protocol/z-wave/Components/SwTimer/SwTimerLiaison.h
Typedef Documentation#
ESwTimerLiaisonStatus#
typedef enum ESwTimerLiaisonStatus ESwTimerLiaisonStatus
Defines return values from SwTimerLiaison methods.
76
of file /mnt/raid/workspaces/ws.6QOxxjIBR/overlay/gsdk/protocol/z-wave/Components/SwTimer/SwTimerLiaison.h
SSwTimerLiaison#
typedef struct SSwTimerLiaison SSwTimerLiaison
TimerLiaison object.
All content is private.
102
of file /mnt/raid/workspaces/ws.6QOxxjIBR/overlay/gsdk/protocol/z-wave/Components/SwTimer/SwTimerLiaison.h
Function Documentation#
TimerLiaisonInit#
void TimerLiaisonInit (SSwTimerLiaison * pThis, uint32_t iTimerPointerArraySize, SSwTimer ** pTimerPointerArray, uint8_t iTaskNotificationBitNumber, void * ReceiverTask)
Initialize TimerLiaison.
[in] | pThis | Pointer to the TimerLiaison object |
[in] | iTimerPointerArraySize | Number of entries in provided SwTimer pointer array (range 0 - 24) |
[in] | pTimerPointerArray | Pointer to provided array of pointers to SwTimer objects |
[in] | iTaskNotificationBitNumber | Number defines which bit to use when notifying receiver task of pending timer event (range 0 - 31) |
[in] | ReceiverTask | Handle to FreeRTOS task that Timer callbacks Will be performed in. Argument may be NULL if task handle is not available at Liaison init time, but ReceiverTask must then be set with TimerLiaisonSetReceiverTask before any registered Timer times out. |
120
of file /mnt/raid/workspaces/ws.6QOxxjIBR/overlay/gsdk/protocol/z-wave/Components/SwTimer/SwTimerLiaison.h
TimerLiaisonSetReceiverTask#
void TimerLiaisonSetReceiverTask (SSwTimerLiaison * pThis, void * ReceiverTask)
Configures the Receiver task of callbacks.
[in] | pThis | Pointer to the TimerLiaison object |
[in] | ReceiverTask | Handle to FreeRTOS task that Timer callbacks will be performed in. |
Provided as the TimerLiaison may be needed for registrering SwTimers before the receiver task is created, meaning TimerLiaision init is called prior to the Receiver task handle being available. Though not the intention, the receiver task can be changed run time.
141
of file /mnt/raid/workspaces/ws.6QOxxjIBR/overlay/gsdk/protocol/z-wave/Components/SwTimer/SwTimerLiaison.h
TimerLiaisonRegister#
ESwTimerLiaisonStatus TimerLiaisonRegister (SSwTimerLiaison * pThis, SSwTimer * pTimer, bool bAutoReload, void(*)(SSwTimer *pTimer) pCallback)
Register a SwTimer to a TimerLiaison.
[in] | pThis | Pointer to the TimerLiaison object |
[in] | pTimer | Pointer to the SwTimer object to register |
[in] | bAutoReload | Enable timer auto reload on timeout. Configuration of AutoReload cannot be changed after registration. |
[in] | pCallback | Callback method of type void Callback(SSwTimer* pTimer). Argument may be NULL, in which case no callback is performed. |
Initial SwTimer configuration is also performed.
Method creates a static FreeRTOS timer from the SwTimer object passed as argument. An SwTimer can NOT be registered to several TimerLiaisons. If calling method TimerLiaisonRegister on the same SwTimer object multiple times, all but the first call will be ignored. Unregistered timers are expected to be zero initialized SSwTimer structs.
164
of file /mnt/raid/workspaces/ws.6QOxxjIBR/overlay/gsdk/protocol/z-wave/Components/SwTimer/SwTimerLiaison.h
TimerLiaisonNotificationHandler#
void TimerLiaisonNotificationHandler (SSwTimerLiaison * pThis)
Must be called from requested callback task when the task notification bit assigned to TimerLiaison is set.
[in] | pThis | Pointer to the TimerLiaison object |
Method will perform pending callbacks. There is no side effects from calling method when assigned task notification bit was not set.
180
of file /mnt/raid/workspaces/ws.6QOxxjIBR/overlay/gsdk/protocol/z-wave/Components/SwTimer/SwTimerLiaison.h
TimerLiaisonClearPendingTimerEvent#
void TimerLiaisonClearPendingTimerEvent (SSwTimerLiaison * pThis, uint32_t TimerId)
Method provided for the SwTimers to call.
[in] | pThis | Pointer to the TimerLiaison object |
[in] | TimerId | Which timer to clear pending events of. |
Method clears pending timeout callback (if one is pending).
191
of file /mnt/raid/workspaces/ws.6QOxxjIBR/overlay/gsdk/protocol/z-wave/Components/SwTimer/SwTimerLiaison.h
TimerLiaisonClearPendingTimerEventFromISR#
void TimerLiaisonClearPendingTimerEventFromISR (SSwTimerLiaison * pThis, uint32_t TimerId)
Method provided for the SwTimers to call from ISR.
[in] | pThis | Pointer to the TimerLiaison object |
[in] | TimerId | Which timer to clear pending events of. |
Method clears pending timeout callback (if one is pending).
201
of file /mnt/raid/workspaces/ws.6QOxxjIBR/overlay/gsdk/protocol/z-wave/Components/SwTimer/SwTimerLiaison.h
TimerLiaisonHasPendingTimerEvent#
bool TimerLiaisonHasPendingTimerEvent (SSwTimerLiaison * pThis, uint32_t TimerId)
Method provided for the SwTimers to call.
[in] | pThis | Pointer to the TimerLiaison object |
[in] | TimerId | Which timer to check for pending callback. |
Method returns if a timer has a pending timeout callback.
212
of file /mnt/raid/workspaces/ws.6QOxxjIBR/overlay/gsdk/protocol/z-wave/Components/SwTimer/SwTimerLiaison.h
TimerLiaisonHasPendingTimerEventFromISR#
bool TimerLiaisonHasPendingTimerEventFromISR (SSwTimerLiaison * pThis, uint32_t TimerId)
Method provided for the SwTimers to call from ISR.
[in] | pThis | Pointer to the TimerLiaison object |
[in] | TimerId | Which timer to check for pending callback. |
Method returns if a timer has a pending timeout callback.
224
of file /mnt/raid/workspaces/ws.6QOxxjIBR/overlay/gsdk/protocol/z-wave/Components/SwTimer/SwTimerLiaison.h