An iterator over the OS-defined scheduling priorities. More...
#include <Sched_Params.h>
Public Member Functions | |
ACE_Sched_Priority_Iterator (const ACE_Sched_Params::Policy &policy, int scope=ACE_SCOPE_THREAD) | |
~ACE_Sched_Priority_Iterator (void) | |
Default dtor. | |
int | more (void) const |
Check if there are more priorities. | |
int | priority (void) const |
Return the current priority. | |
void | next (void) |
const ACE_Sched_Params::Policy & | policy (void) const |
Accessor for the scheduling policy over which we are iterating. | |
int | scope (void) const |
Accessor for the scheduling. | |
Private Attributes | |
ACE_Sched_Params::Policy | policy_ |
int | scope_ |
int | priority_ |
The current priority. | |
int | done_ |
An iterator over the OS-defined scheduling priorities.
The order of priorities (numeric value vs. importance) is OS dependant, it can be the case that the priorities are not even contigous. This class permits iteration over priorities using the iterator pattern.
Definition at line 181 of file Sched_Params.h.
ACE_Sched_Priority_Iterator::ACE_Sched_Priority_Iterator | ( | const ACE_Sched_Params::Policy & | policy, | |
int | scope = ACE_SCOPE_THREAD | |||
) |
Initialize the iterator, the arguments define the scheduling policy and scope for the priorities (see ACE_Sched_Param).
Definition at line 94 of file Sched_Params.inl.
ACE_Sched_Priority_Iterator::~ACE_Sched_Priority_Iterator | ( | void | ) |
int ACE_Sched_Priority_Iterator::more | ( | void | ) | const |
Check if there are more priorities.
Definition at line 110 of file Sched_Params.inl.
{ return !this->done_; }
void ACE_Sched_Priority_Iterator::next | ( | void | ) |
Move to the next priority. The iteration is from lowest to highest importance.
Definition at line 122 of file Sched_Params.inl.
const ACE_Sched_Params::Policy & ACE_Sched_Priority_Iterator::policy | ( | void | ) | const |
Accessor for the scheduling policy over which we are iterating.
Definition at line 82 of file Sched_Params.inl.
{ return this->policy_; }
int ACE_Sched_Priority_Iterator::priority | ( | void | ) | const |
Return the current priority.
Definition at line 116 of file Sched_Params.inl.
{ return this->priority_; }
int ACE_Sched_Priority_Iterator::scope | ( | void | ) | const |
Accessor for the scheduling.
Definition at line 88 of file Sched_Params.inl.
{ return this->scope_; }
int ACE_Sched_Priority_Iterator::done_ [private] |
This is set to 1 when there are no more priorities. Cannot easily compare against the highest priority on platforms were priorities are non-contigous or descending.
Definition at line 222 of file Sched_Params.h.
The Scheduling policy (FIFO, RR, etc.) and scheduling scope (PROCESS, SYSTEM) we are iterating on.
Definition at line 211 of file Sched_Params.h.
int ACE_Sched_Priority_Iterator::priority_ [private] |
The current priority.
Definition at line 215 of file Sched_Params.h.
int ACE_Sched_Priority_Iterator::scope_ [private] |
Definition at line 212 of file Sched_Params.h.