DESERT 4.0.0
cool-addon.h
Go to the documentation of this file.
1#ifndef COOL_ADDON_H
2#define COOL_ADDON_H
3
4#include <uwcbr-module.h>
5
6#include <iostream>
7#include <rng.h>
8#include <stdint.h>
9#include <string>
10
11class CoolAddon;
12
13class THRMonitorTimer : public TimerHandler
14{
15public:
17 : TimerHandler()
18 {
19 module = m;
20 }
21protected:
22 virtual void expire(Event *e);
23 CoolAddon *module;
24};
25
26
27class CoolAddon : public UwCbrModule
28{
29 friend class THRMonitorTimer;
30
31public:
35 CoolAddon();
39 virtual ~CoolAddon() = default;
49 virtual int command(int argc, const char *const *argv);
50
54 virtual void start();
55
59 virtual void stop();
60
65 void recv(Packet* p);
66
71 void initTHRPacket(Packet* p);
72
76 void sendTHRWarning(double throughput);
77
78protected:
79
81
82private:
83 double thr_thresh;
87};
88
89#endif
Definition cool-addon.h:28
virtual int command(int argc, const char *const *argv)
Definition cool-addon.cpp:31
void initTHRPacket(Packet *p)
Definition cool-addon.cpp:54
int receiving
Definition cool-addon.h:86
THRMonitorTimer cool_timer
Definition cool-addon.h:80
CoolAddon()
Definition cool-addon.cpp:19
virtual void stop()
Definition cool-addon.cpp:47
double thr_thresh
Definition cool-addon.h:83
double thr_check_period
Definition cool-addon.h:84
void recv(Packet *p)
Definition cool-addon.cpp:81
void sendTHRWarning(double throughput)
Definition cool-addon.cpp:62
virtual ~CoolAddon()=default
virtual void start()
Definition cool-addon.cpp:37
Definition cool-addon.h:14
THRMonitorTimer(CoolAddon *m)
Definition cool-addon.h:16
virtual void expire(Event *e)
Definition cool-addon.cpp:95
Definition uwcbr-module.h:162
Provides the UWCBR packets header description and the definition of the class UWCBR.