Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Event Flags Management (Cont’d)<br />
• Event Flags <br />
Event Flags Group <strong>Structure</strong><br />
typedef struct { /* Event Flag Group */<br />
INT8U <strong>OS</strong>FlagType; /* Should be set to <strong>OS</strong>_EVENT_TYPE_FLAG */<br />
void *<strong>OS</strong>FlagWaitList; /* Pointer to first NODE of task waiting on event flag*/<br />
<strong>OS</strong>_FLAGS <strong>OS</strong>FlagFlags; /* 8, 16 or 32 bit flags */<br />
} <strong>OS</strong>_FLAG_GRP;<br />
Event Flags Group Node <strong>Structure</strong><br />
typedef struct { /* Event Flag Wait List Node */<br />
void *<strong>OS</strong>FlagNodeNext; /* Pointer to next NODE in wait list */<br />
void *<strong>OS</strong>FlagNodePrev; /* Pointer to previous NODE in wait list */<br />
void *<strong>OS</strong>FlagNodeTCB; /* Pointer to TCB of waiting task */<br />
void *<strong>OS</strong>FlagNodeFlagGrp; /* Pointer to Event Flag Group */<br />
<strong>OS</strong>_FLAGS <strong>OS</strong>FlagNodeFlags; /* Event flag to wait on */<br />
INT8U <strong>OS</strong>FlagNodeWaitType; /* Type of wait: */<br />
} <strong>OS</strong>_FLAG_NODE;<br />
Embedded System Lab. <strong>II</strong> 83