|
a |
|
b/src/DIF/RMT/policies/monitor/RED.h |
|
|
1 |
/*
|
|
|
2 |
* RED.h
|
|
|
3 |
*
|
|
|
4 |
* Created on: 17. 11. 2014
|
|
|
5 |
* Author: cloq
|
|
|
6 |
*/
|
|
|
7 |
|
|
|
8 |
#ifndef RED_H_
|
|
|
9 |
#define RED_H_
|
|
|
10 |
|
|
|
11 |
#include "RMTQMonitorBase.h"
|
|
|
12 |
|
|
|
13 |
typedef std::map<RMTQueue*, double> REDParamMap;
|
|
|
14 |
|
|
|
15 |
class RED : public RMTQMonitorBase
|
|
|
16 |
{
|
|
|
17 |
public:
|
|
|
18 |
virtual void run(RMTQueue* queue);
|
|
|
19 |
virtual void postQueueCreation(RMTQueue* queue);
|
|
|
20 |
virtual void preQueueRemoval(RMTQueue* queue);
|
|
|
21 |
|
|
|
22 |
private:
|
|
|
23 |
REDParamMap qAvgLengths;
|
|
|
24 |
REDParamMap qWeights;
|
|
|
25 |
REDParamMap qProbabilities;
|
|
|
26 |
REDParamMap qCounters;
|
|
|
27 |
};
|
|
|
28 |
|
|
|
29 |
#endif /* RED_H_ */
|