41 void*
operator new(
size_t sz,
void* pv) {
return reinterpret_cast<ThreadList*
>(pv); };
void SetMapPointer(PriorityMap *pclMap_)
SetMapPointer Set the pointer to a bitmap to use for this threadlist. Once again, only needed when th...
Basic data type primatives used throughout the OS.
PriorityMap * m_pclMap
Pointer to the bitmap/flag to set when used for scheduling.
The ThreadList Class. This class is used for building thread-management facilities, such as schedulers, and blocking objects.
PORT_PRIO_TYPE m_uXPriority
Priority of the threadlist.
#define PORT_PRIO_TYPE
Type used for bitmap in the PriorityMap class.
void Remove(Thread *node_)
Remove Remove the specified thread from the threadlist.
void SetPriority(PORT_PRIO_TYPE uXPriority_)
SetPriority Set the priority of this threadlist (if used for a scheduler).
The Thread Class. This object providing the fundamental thread control data structures and functions ...
void AddPriority(Thread *node_)
AddPriority Add a thread to the list such that threads are ordered from highest to lowest priority fr...
The TypedCircularLinkList Class Circular-linked-list data type, inherited from the base LinkList type...
Priority map data structure.
The PriorityMapL1 class This class implements a priority bitmap data structure. Each bit in the objec...
Thread * HighestWaiter()
HighestWaiter Return a pointer to the highest-priority thread in the thread-list. ...
ThreadList()
ThreadList Default constructor - zero-initializes the data.
void Add(Thread *node_)
Add Add a thread to the threadlist.
The TypedLinkListNode class The TypedLinkListNode class provides a linked-list node type for a specif...
Core linked-list declarations, used by all kernel list types At the heart of RTOS data structures are...