ACE
6.3.3
|
Laxity based message priority strategy. More...
#include <Dynamic_Message_Strategy.h>
Public Member Functions | |
ACE_Laxity_Message_Strategy (unsigned long static_bit_field_mask=0x3FFUL, unsigned long static_bit_field_shift=10, unsigned long dynamic_priority_max=0x3FFFFFUL, unsigned long dynamic_priority_offset=0x200000UL) | |
Ctor, with all arguments defaulted. More... | |
virtual | ~ACE_Laxity_Message_Strategy (void) |
virtual dtor. More... | |
virtual void | convert_priority (ACE_Time_Value &priority, const ACE_Message_Block &mb) |
Dynamic priority conversion function based on laxity. More... | |
virtual void | dump (void) const |
Dump the state of the strategy. More... | |
Public Member Functions inherited from ACE_Dynamic_Message_Strategy | |
ACE_Dynamic_Message_Strategy (unsigned long static_bit_field_mask, unsigned long static_bit_field_shift, unsigned long dynamic_priority_max, unsigned long dynamic_priority_offset) | |
Constructor. More... | |
virtual | ~ACE_Dynamic_Message_Strategy (void) |
Virtual destructor. More... | |
Priority_Status | priority_status (ACE_Message_Block &mb, const ACE_Time_Value &tv) |
Updates the message's priority and returns its priority status. More... | |
unsigned long | static_bit_field_mask (void) const |
Get static bit field mask. More... | |
void | static_bit_field_mask (unsigned long) |
Set static bit field mask. More... | |
unsigned long | static_bit_field_shift (void) const |
Get left shift value to make room for static bit field. More... | |
void | static_bit_field_shift (unsigned long) |
Set left shift value to make room for static bit field. More... | |
unsigned long | dynamic_priority_max (void) const |
Get maximum supported priority value. More... | |
void | dynamic_priority_max (unsigned long) |
Set maximum supported priority value. More... | |
unsigned long | dynamic_priority_offset (void) const |
Get offset to boundary between signed range and unsigned range. More... | |
void | dynamic_priority_offset (unsigned long) |
Set offset to boundary between signed range and unsigned range. More... | |
Additional Inherited Members | |
Public Types inherited from ACE_Dynamic_Message_Strategy | |
enum | Priority_Status { PENDING = 0x01, LATE = 0x02, BEYOND_LATE = 0x04, ANY_STATUS = 0x07 } |
Protected Attributes inherited from ACE_Dynamic_Message_Strategy | |
unsigned long | static_bit_field_mask_ |
This is a bit mask with all ones in the static bit field. More... | |
unsigned long | static_bit_field_shift_ |
unsigned long | dynamic_priority_max_ |
Maximum supported priority value. More... | |
unsigned long | dynamic_priority_offset_ |
Offset to boundary between signed range and unsigned range. More... | |
ACE_Time_Value | max_late_ |
Maximum late time value that can be represented. More... | |
ACE_Time_Value | min_pending_ |
Minimum pending time value that can be represented. More... | |
ACE_Time_Value | pending_shift_ |
Time value by which to shift pending priority. More... | |
Laxity based message priority strategy.
Assigns dynamic message priority according to laxity (time to deadline minus worst case execution time). The message priority is divided into high and low order bit fields. The high order bit field is used for dynamic message priority, which is updated whenever the convert_priority() method is called. The low order bit field is used for static message priority and is left unchanged. The partitioning of the priority value into high and low order bit fields is done according to the arguments passed to the strategy object's constructor.
ACE_Laxity_Message_Strategy::ACE_Laxity_Message_Strategy | ( | unsigned long | static_bit_field_mask = 0x3FFUL , |
unsigned long | static_bit_field_shift = 10 , |
||
unsigned long | dynamic_priority_max = 0x3FFFFFUL , |
||
unsigned long | dynamic_priority_offset = 0x200000UL |
||
) |
Ctor, with all arguments defaulted.
|
virtual |
virtual dtor.
|
virtual |
Dynamic priority conversion function based on laxity.
Implements ACE_Dynamic_Message_Strategy.
|
virtual |
Dump the state of the strategy.
Reimplemented from ACE_Dynamic_Message_Strategy.