Trident IoT Z-Wave SDK
 
Loading...
Searching...
No Matches
ZW_UserTask.h File Reference
+ Include dependency graph for ZW_UserTask.h:

Go to the source code of this file.

Data Structures

struct  ZW_UserTask_Buffer_t
 A buffer structure to allocate the needed memory for a task in user space. More...
 
struct  ZW_UserTask_t
 

Enumerations

enum  ZW_UserTask_Priority_t {
  USERTASK_PRIORITY_BACKGROUND = 0 ,
  USERTASK_PRIORITY_NORMAL ,
  USERTASK_PRIORITY_HIGHEST
}
 
enum  ReturnCode_t {
  Code_Success = 0 ,
  Code_Fail_Unknown ,
  Code_Fail_NoMemory ,
  Code_Fail_LimitReached ,
  Code_Fail_NotFound ,
  Code_Fail_Suspended ,
  Code_Fail_InvalidState ,
  Code_Fail_InvalidOperation ,
  Code_Fail_InvalidParameter ,
  Code_DependencyUnavailable ,
  Code_Fail_Busy ,
  Code_Fail_Timeout ,
  Code_Fail_Driver ,
  Code_Fail_NotImplemented ,
  Code_Fail_NotAllowed
}
 

Functions

ReturnCode_t ZW_UserTask_Init (void)
 Initializes this module.
 
ReturnCode_t ZW_UserTask_CreateTask (ZW_UserTask_t *task, TaskHandle_t *xHandle)
 Used to create user application level tasks.
 
bool ZW_UserTask_ApplicationRegisterTask (void(*appTaskFunc)(SApplicationHandles *), uint8_t iZwRxQueueTaskNotificationBitNumber, uint8_t iZwCommandStatusQueueTaskNotificationBitNumber, const SProtocolConfig_t *pProtocolConfig)
 Used to create the main application task at highest UserTask priority.
 

Detailed Description

A helper API for Task creation for the user domain and also a wrapper module for the task creation functions of FreeRTOS.

This module is used to control and limit the use of task creation by the user so to accommodate easy backward compatibility in the future.

Attention
This module is limited to when the RTOS Scheduler is not running