|
OpenDDS
Snapshot(2023/04/07-19:43)
|
map TRANSPORT_PRIORITY values directly. More...
#include <DirectPriorityMapper.h>


Public Member Functions | |
| DirectPriorityMapper (Priority priority=0) | |
| Construct with a priority value. More... | |
| virtual | ~DirectPriorityMapper () |
| virtual short | codepoint () const |
| Access the mapped DiffServ codepoint value. More... | |
| virtual short | thread_priority () const |
| Access the mapped thread priority value. More... | |
Public Member Functions inherited from OpenDDS::DCPS::PriorityMapper | |
| PriorityMapper (Priority priority=0) | |
| Construct with a priority value. More... | |
| virtual | ~PriorityMapper () |
| Priority & | priority () |
| Accessors for the TRANSPORT_PRIORITY value. More... | |
| Priority | priority () const |
map TRANSPORT_PRIORITY values directly.
This implementation maps TRANSPORT_PRIORITY values directly to both DiffServ codepoint and thread priority values. The behavior is saturating - that is when the TRANSPORT_PRIORITY value is out of the target range, it is mapped to the nearest extremum.
DiffServ codepoint values are mapped within the closed interval [0,63], with the corresponding TRANSPORT_PRIORITY values mapped directly within this range.
Thread priorities are mapped to the system thread scheduler minimum value (obtained from the sched_get_priority_min(sched) system call, where available) up to the maximum value (obtained from the sched_get_priority_max(sched) system call, where available). The TRANSPORT_PRIORITY value of 0 is mapped to the minimum and a value of |max-min| is mapped to the maximum.
Definition at line 42 of file DirectPriorityMapper.h.
| ACE_INLINE OpenDDS::DCPS::DirectPriorityMapper::DirectPriorityMapper | ( | Priority | priority = 0 | ) |
Construct with a priority value.
Definition at line 14 of file DirectPriorityMapper.inl.
References OPENDDS_END_VERSIONED_NAMESPACE_DECL.
|
virtual |
Definition at line 22 of file DirectPriorityMapper.cpp.
|
virtual |
Access the mapped DiffServ codepoint value.
Implements OpenDDS::DCPS::PriorityMapper.
Definition at line 27 of file DirectPriorityMapper.cpp.
References ACE_DEBUG, ACE_TEXT(), OpenDDS::DCPS::DCPS_debug_level, LM_DEBUG, OpenDDS::DCPS::PriorityMapper::priority(), and value.
Referenced by OpenDDS::DCPS::TcpConnection::on_active_connection_established(), and OpenDDS::DCPS::UdpDataLink::open().
|
virtual |
Access the mapped thread priority value.
Implements OpenDDS::DCPS::PriorityMapper.
Definition at line 50 of file DirectPriorityMapper.cpp.
References ACE_DEBUG, ACE_TEXT(), OpenDDS::DCPS::DCPS_debug_level, LM_DEBUG, OPENDDS_END_VERSIONED_NAMESPACE_DECL, OpenDDS::DCPS::PriorityMapper::priority(), TheServiceParticipant, and value.
Referenced by OpenDDS::DCPS::TransportSendStrategy::TransportSendStrategy().
1.8.13