|
a/src/DIF/RMT/RMTMaxQBase.cc |
|
b/src/DIF/RMT/RMTMaxQBase.cc |
|
... |
|
... |
27 |
|
27 |
|
28 |
addrComparator = check_and_cast<AddressComparatorBase*>
|
28 |
addrComparator = check_and_cast<AddressComparatorBase*>
|
29 |
(getModuleByPath("^.^.resourceAllocator.addressComparator"));
|
29 |
(getModuleByPath("^.^.resourceAllocator.addressComparator"));
|
30 |
|
30 |
|
31 |
rmtAllocator = check_and_cast<RMTModuleAllocator*>
|
31 |
rmtAllocator = check_and_cast<RMTModuleAllocator*>
|
32 |
(getModuleByPath("^.rmtModuleAllocator"));
|
32 |
(getModuleByPath("^.allocator"));
|
33 |
|
33 |
|
34 |
// register slowdown signal for RA
|
34 |
// register slowdown signal for RA
|
35 |
sigRMTSDReq = registerSignal(SIG_RMT_SlowdownRequest);
|
35 |
sigRMTSDReq = registerSignal(SIG_RMT_SlowdownRequest);
|
36 |
sigRMTPortDrainDisable = registerSignal(SIG_RMT_PortDrainDisable);
|
|
|
37 |
sigRMTPortDrainEnable = registerSignal(SIG_RMT_PortDrainEnable);
|
|
|
38 |
sigRMTPortDrainSpeedUp = registerSignal(SIG_RMT_PortDrainSpeedUp);
|
|
|
39 |
sigRMTPortDrainSlowDown = registerSignal(SIG_RMT_PortDrainSlowDown);
|
|
|
40 |
|
|
|
41 |
|
36 |
|
42 |
// display active policy name
|
37 |
// display active policy name
|
43 |
cDisplayString& disp = getDisplayString();
|
38 |
cDisplayString& disp = getDisplayString();
|
44 |
disp.setTagArg("t", 1, "t");
|
39 |
disp.setTagArg("t", 1, "t");
|
45 |
disp.setTagArg("t", 0, getClassName());
|
40 |
disp.setTagArg("t", 0, getClassName());
|
|
... |
|
... |
59 |
bool RMTMaxQBase::run(RMTQueue* queue)
|
54 |
bool RMTMaxQBase::run(RMTQueue* queue)
|
60 |
{
|
55 |
{
|
61 |
return false;
|
56 |
return false;
|
62 |
}
|
57 |
}
|
63 |
|
58 |
|
|
|
59 |
void RMTMaxQBase::onQueueLengthDrop(RMTQueue* queue)
|
|
|
60 |
{
|
|
|
61 |
}
|
|
|
62 |
|
64 |
void RMTMaxQBase::notifySenderOfCongestion(const cPacket* pdu)
|
63 |
void RMTMaxQBase::notifySenderOfCongestion(const cPacket* pdu)
|
65 |
{
|
64 |
{
|
66 |
emit(sigRMTSDReq, pdu);
|
65 |
emit(sigRMTSDReq, pdu);
|
67 |
}
|
66 |
}
|
68 |
|
|
|
69 |
void RMTMaxQBase::disableSenderPortDrain(const cPacket* pdu)
|
|
|
70 |
{
|
|
|
71 |
emit(sigRMTPortDrainDisable, pdu);
|
|
|
72 |
}
|
|
|
73 |
|
|
|
74 |
void RMTMaxQBase::enableSenderPortDrain(const cPacket* pdu)
|
|
|
75 |
{
|
|
|
76 |
emit(sigRMTPortDrainEnable, pdu);
|
|
|
77 |
}
|
|
|
78 |
|
|
|
79 |
void RMTMaxQBase::slowDownSenderPortDrain(const cPacket* pdu)
|
|
|
80 |
{
|
|
|
81 |
emit(sigRMTPortDrainSlowDown, pdu);
|
|
|
82 |
}
|
|
|
83 |
|
|
|
84 |
void RMTMaxQBase::speedUpSenderPortDrain(const cPacket* pdu)
|
|
|
85 |
{
|
|
|
86 |
emit(sigRMTPortDrainSpeedUp, pdu);
|
|
|
87 |
}
|
|
|