The Pedigree Project 0.1
Public Member Functions | Public Attributes | List of all members
WaitQueue::Waiter Struct Reference
+ Collaboration diagram for WaitQueue::Waiter:

Public Member Functions

WaitQueueloadQueue () const
 
void storeQueue (WaitQueue *value)
 
WakeReason loadReason () const
 
void storeReason (WakeReason value)
 
bool isQueued () const
 
void setQueued (bool value)
 
void storeChannel (const Channel &value)
 
bool snapshotChannel (Channel &value) const
 

Public Attributes

Threadthread = nullptr
 
PerProcessorSchedulerscheduler = nullptr
 
WaitQueuequeue = nullptr
 
Channel channel
 
size_t channelGeneration = 0
 
size_t stateLevel = 0
 
size_t reason = static_cast<size_t>(WakeReason::Waiting)
 
bool queued = false
 
StackDiscardCleanup legacyOnAbandon = nullptr
 
void * legacyAbandonContext = nullptr
 
Waiterprevious = nullptr
 
Waiternext = nullptr
 
WaiternotificationNext = nullptr
 

Detailed Description

Definition at line 171 of file WaitQueue.h.

Member Function Documentation

◆ isQueued()

bool WaitQueue::Waiter::isQueued ( ) const
inline

Definition at line 188 of file WaitQueue.h.

◆ loadQueue()

WaitQueue * WaitQueue::Waiter::loadQueue ( ) const
inline

Definition at line 172 of file WaitQueue.h.

◆ loadReason()

WakeReason WaitQueue::Waiter::loadReason ( ) const
inline

Definition at line 180 of file WaitQueue.h.

◆ setQueued()

void WaitQueue::Waiter::setQueued ( bool  value)
inline

Definition at line 192 of file WaitQueue.h.

◆ snapshotChannel()

bool WaitQueue::Waiter::snapshotChannel ( Channel value) const
inline

Definition at line 209 of file WaitQueue.h.

◆ storeChannel()

void WaitQueue::Waiter::storeChannel ( const Channel value)
inline

Definition at line 202 of file WaitQueue.h.

◆ storeQueue()

void WaitQueue::Waiter::storeQueue ( WaitQueue value)
inline

Definition at line 176 of file WaitQueue.h.

◆ storeReason()

void WaitQueue::Waiter::storeReason ( WakeReason  value)
inline

Definition at line 184 of file WaitQueue.h.

Member Data Documentation

◆ channel

Channel WaitQueue::Waiter::channel

Definition at line 199 of file WaitQueue.h.

◆ channelGeneration

size_t WaitQueue::Waiter::channelGeneration = 0

Definition at line 200 of file WaitQueue.h.

◆ legacyAbandonContext

void* WaitQueue::Waiter::legacyAbandonContext = nullptr

Definition at line 225 of file WaitQueue.h.

◆ legacyOnAbandon

StackDiscardCleanup WaitQueue::Waiter::legacyOnAbandon = nullptr

Definition at line 224 of file WaitQueue.h.

◆ next

Waiter* WaitQueue::Waiter::next = nullptr

Definition at line 227 of file WaitQueue.h.

◆ notificationNext

Waiter* WaitQueue::Waiter::notificationNext = nullptr

Definition at line 228 of file WaitQueue.h.

◆ previous

Waiter* WaitQueue::Waiter::previous = nullptr

Definition at line 226 of file WaitQueue.h.

◆ queue

WaitQueue* WaitQueue::Waiter::queue = nullptr

Definition at line 198 of file WaitQueue.h.

◆ queued

bool WaitQueue::Waiter::queued = false

Definition at line 221 of file WaitQueue.h.

◆ reason

size_t WaitQueue::Waiter::reason = static_cast<size_t>(WakeReason::Waiting)

Definition at line 220 of file WaitQueue.h.

◆ scheduler

PerProcessorScheduler* WaitQueue::Waiter::scheduler = nullptr

Definition at line 197 of file WaitQueue.h.

◆ stateLevel

size_t WaitQueue::Waiter::stateLevel = 0

Definition at line 219 of file WaitQueue.h.

◆ thread

Thread* WaitQueue::Waiter::thread = nullptr

Definition at line 196 of file WaitQueue.h.


The documentation for this struct was generated from the following file: