#include <Linear_Network_Priority_Mapping.h>
Inheritance diagram for TAO_Linear_Network_Priority_Mapping:
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) |
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.
|
Definition at line 96 of file Linear_Network_Priority_Mapping.cpp.
00097 { 00098 } |
|
Implements TAO_Network_Priority_Mapping. Definition at line 129 of file Linear_Network_Priority_Mapping.cpp. References ACE_DEBUG, LM_DEBUG, RTCORBA::NetworkPriority, RTCORBA::Priority, and TAO_debug_level.
00131 { 00132 if (TAO_debug_level) 00133 ACE_DEBUG ((LM_DEBUG, 00134 "TAO_Linear_Network_Priority_Mapping::to_CORBA network_priority %d\n", 00135 network_priority)); 00136 00137 return 0; 00138 } |
|
Implements TAO_Network_Priority_Mapping. Definition at line 101 of file Linear_Network_Priority_Mapping.cpp. References ACE_DEBUG, dscp, LM_DEBUG, RTCORBA::NetworkPriority, RTCORBA::Priority, and TAO_debug_level.
00104 { 00105 if (TAO_debug_level) 00106 ACE_DEBUG ((LM_DEBUG, 00107 "TAO_Linear_Network_Priority_Mapping::to_network corba_priority %d\n", 00108 corba_priority)); 00109 00110 int const total_slots = sizeof (dscp) / sizeof (int); 00111 00112 int array_slot = 00113 static_cast<int> (((corba_priority - RTCORBA::minPriority) / double (RTCORBA::maxPriority - RTCORBA::minPriority)) * total_slots); 00114 00115 if (array_slot == total_slots) 00116 array_slot -= 1; 00117 00118 network_priority = dscp[array_slot]; 00119 00120 if (TAO_debug_level) 00121 ACE_DEBUG ((LM_DEBUG, 00122 "TAO_Linear_Network_Priority_Mapping::to_network = %x\n", 00123 network_priority)); 00124 00125 return 1; 00126 } |