Kicking it Olde Sküül! Burgerlib on Github Follow Olde Sküül on Twitter Burgerbecky on LinkedIn Burgerbecky on LinkedIn
Loading...
Searching...
No Matches
Public Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
Burger::RunQueue::RunQueueEntry Class Reference

Function pointer entry. More...

Inheritance diagram for Burger::RunQueue::RunQueueEntry:
Inheritance graph
[legend]
Collaboration diagram for Burger::RunQueue::RunQueueEntry:
Collaboration graph
[legend]

Public Member Functions

 ~RunQueueEntry ()
 RunQueueEntry destructor.
 
uint_t GetPriority (void) const noexcept
 Get the priority value.
 

Private Member Functions

 RunQueueEntry (const RunQueueEntry &)=delete
 
RunQueueEntryoperator= (const RunQueueEntry &)=delete
 
 RunQueueEntry (RunQueueEntry &&)=delete
 
RunQueueEntryoperator= (RunQueueEntry &&)=delete
 
 RunQueueEntry (CallbackProc pCallBack, CallbackProc pShutdownCallback, void *pData, uint_t uPriority) noexcept
 RunQueueEntry constructor.
 

Private Attributes

CallbackProc m_pCallBack
 Function to call for this entry.
 
CallbackProc m_pShutdownCallback
 Function to call on deletion.
 
voidm_pData
 User supplied data pointer to call the function with.
 
uint_t m_uPriority
 User supplied priority for inserting a new entry into the list.
 

Friends

class RunQueue
 

Additional Inherited Members

- Protected Member Functions inherited from Burger::DoubleLinkedList
 DoubleLinkedList () noexcept
 Initializer for a DoubleLinkedList.
 
 ~DoubleLinkedList ()
 Destructor for a DoubleLinkedList.
 
void detach (void) noexcept
 Detach this object from any attached linked list.
 
void insert_after (DoubleLinkedList *pInput) noexcept
 Attach the input object after this one in the list.
 
void insert_before (DoubleLinkedList *pInput) noexcept
 Attach the input object before this one in the list.
 
DoubleLinkedListget_next (void) const noexcept
 Get the next pointer in the list.
 
DoubleLinkedListget_previous (void) const noexcept
 Get the previous pointer in the list.
 
- Protected Member Functions inherited from Burger::DoubleLinkedList_t
void init (void) noexcept
 Double linked list initialization.
 
void detach (void) noexcept
 Detach entry from connected list.
 
void insert_after (DoubleLinkedList_t *pInput) noexcept
 Insert the supplied object after this object.
 
void insert_before (DoubleLinkedList_t *pInput) noexcept
 Insert the supplied object before this object.
 
- Static Protected Member Functions inherited from Burger::DoubleLinkedList
static DoubleLinkedListNew (void) noexcept
 Create a new DoubleLinkedList instance.
 
- Protected Attributes inherited from Burger::DoubleLinkedList_t
DoubleLinkedList_tm_pNext
 Pointer to the next entry.
 
DoubleLinkedList_tm_pPrev
 Pointer to the previous entry.
 

Detailed Description

Function pointer entry.


The RunQueue manages a list of these class entries that hold the callback pointers for every callback entry.

They are created with a call to RunQueue::Add().

To dispose this class, call Delete()

See also
RunQueueEntry

Constructor & Destructor Documentation

◆ RunQueueEntry() [1/3]

Burger::RunQueue::RunQueueEntry::RunQueueEntry ( const RunQueueEntry & )
privatedelete

◆ RunQueueEntry() [2/3]

Burger::RunQueue::RunQueueEntry::RunQueueEntry ( RunQueueEntry && )
privatedelete

◆ RunQueueEntry() [3/3]

Burger::RunQueue::RunQueueEntry::RunQueueEntry ( CallbackProc pCallBack,
CallbackProc pShutdownCallback,
void * pData,
uint_t uPriority )
inlineprivatenoexcept

RunQueueEntry constructor.


Parameters
pCallBackPointer to a function that is called when the queue is polled
pShutdownCallbackPointer to a function that is called when this entry is disposed of
pDataPointer to function data.
uPriorityPriority value for location in the queue
See also
RunQueue

◆ ~RunQueueEntry()

Burger::RunQueue::RunQueueEntry::~RunQueueEntry ( )

RunQueueEntry destructor.


When a RunQueueEntry is destroyed, if there is a shutdown procedure defined, call the function with the application supplied data pointer before deleting the entry.

This function does not attempt to delete the application data, it's the shutdown function's responsibility to dispose of any data that it's managing.

See also
RunQueue

Member Function Documentation

◆ GetPriority()

uint_t Burger::RunQueue::RunQueueEntry::GetPriority ( void ) const
inlinenoexcept

Get the priority value.


Returns
The priority of this entry
See also
RunQueue

◆ operator=() [1/2]

RunQueueEntry & Burger::RunQueue::RunQueueEntry::operator= ( const RunQueueEntry & )
privatedelete

◆ operator=() [2/2]

RunQueueEntry & Burger::RunQueue::RunQueueEntry::operator= ( RunQueueEntry && )
privatedelete

Friends And Related Symbol Documentation

◆ RunQueue

Member Data Documentation

◆ m_pCallBack

CallbackProc Burger::RunQueue::RunQueueEntry::m_pCallBack
private

Function to call for this entry.

◆ m_pData

void* Burger::RunQueue::RunQueueEntry::m_pData
private

User supplied data pointer to call the function with.

◆ m_pShutdownCallback

CallbackProc Burger::RunQueue::RunQueueEntry::m_pShutdownCallback
private

Function to call on deletion.

◆ m_uPriority

uint_t Burger::RunQueue::RunQueueEntry::m_uPriority
private

User supplied priority for inserting a new entry into the list.