A simple implementation of the Network_Priority_Mapping interface. More...
#include <Linear_Network_Priority_Mapping.h>
Public Member Functions | |
TAO_Linear_Network_Priority_Mapping (long) | |
CORBA::Boolean | to_network (RTCORBA::Priority corba_priority, RTCORBA::NetworkPriority &network_priority) |
CORBA::Boolean | to_CORBA (RTCORBA::NetworkPriority network_priority, RTCORBA::Priority &corba_priority) |
A simple implementation of the Network_Priority_Mapping interface.
This implementation uses linear mapping between the range of DiffServ priorities and CORBA priorities.
Definition at line 43 of file Linear_Network_Priority_Mapping.h.
TAO_Linear_Network_Priority_Mapping::TAO_Linear_Network_Priority_Mapping | ( | long | ) |
Definition at line 96 of file Linear_Network_Priority_Mapping.cpp.
{ }
CORBA::Boolean TAO_Linear_Network_Priority_Mapping::to_CORBA | ( | RTCORBA::NetworkPriority | network_priority, | |
RTCORBA::Priority & | corba_priority | |||
) | [virtual] |
Implements TAO_Network_Priority_Mapping.
Definition at line 129 of file Linear_Network_Priority_Mapping.cpp.
{ if (TAO_debug_level) ACE_DEBUG ((LM_DEBUG, "TAO_Linear_Network_Priority_Mapping::to_CORBA network_priority %d\n", network_priority)); return 0; }
CORBA::Boolean TAO_Linear_Network_Priority_Mapping::to_network | ( | RTCORBA::Priority | corba_priority, | |
RTCORBA::NetworkPriority & | network_priority | |||
) | [virtual] |
Implements TAO_Network_Priority_Mapping.
Definition at line 101 of file Linear_Network_Priority_Mapping.cpp.
{ if (TAO_debug_level) ACE_DEBUG ((LM_DEBUG, "TAO_Linear_Network_Priority_Mapping::to_network corba_priority %d\n", corba_priority)); int const total_slots = sizeof (dscp) / sizeof (int); int array_slot = static_cast<int> (((corba_priority - RTCORBA::minPriority) / double (RTCORBA::maxPriority - RTCORBA::minPriority)) * total_slots); if (array_slot == total_slots) array_slot -= 1; network_priority = dscp[array_slot]; if (TAO_debug_level) ACE_DEBUG ((LM_DEBUG, "TAO_Linear_Network_Priority_Mapping::to_network = %x\n", network_priority)); return 1; }