GreenCloud Simulator
Main Page
Classes
Files
File List
File Members
greencloud
switchenergymodel.h
Go to the documentation of this file.
1
/* -*- Mode:C++; c-basic-offset:8; tab-width:8; indent-tabs-mode:t -*- */
2
/*
3
*/
4
5
#ifndef ns_switchenergymodel_h
6
#define ns_switchenergymodel_h
7
8
#include "tclcl.h"
9
#include "classifier.h"
10
#include "timer-handler.h"
11
#include "app.h"
12
13
class
Classifier;
14
15
class
SwitchEnergyModel
;
16
17
class
SwitchEnergyTimer
:
public
TimerHandler {
18
public
:
19
SwitchEnergyTimer
(
SwitchEnergyModel
* em) :
em_
(em) {}
20
protected
:
21
void
expire
(Event*);
22
SwitchEnergyModel
*
em_
;
23
};
24
25
class
SwitchEnergyModel
:
public
TclObject {
26
public
:
27
SwitchEnergyModel
();
28
virtual
~
SwitchEnergyModel
();
29
30
virtual
int
command(
int
argc,
const
char
*
const
* argv);
31
virtual
void
timeout();
32
void
setClassifier
(Classifier *classifier){classifier_ = classifier;};
33
void
updateEnergy(
int
curSlot,
int
nports);
34
35
void
start();
36
void
stop();
37
38
double
eConsumed_
;
39
40
double
eChassis_
;
41
double
eLineCard_
;
42
double
ePort_
;
43
44
double
eSimEnd_
;
45
46
int
eDVFS_enabled_
;
47
int
eDNS_enabled_
;
48
double
eDNS_delay_
;
49
50
protected
:
51
double
computeCurrentRate();
52
53
int
eEnabled_
;
54
55
double
eCurrentRate_
;
56
double
eLastSample_
;
57
int
eActivePorts_
;
58
59
double
eSimDuration_
;
60
61
Classifier *
classifier_
;
62
SwitchEnergyTimer
energytimer_
;
63
};
64
65
#endif
SwitchEnergyModel::eSimEnd_
double eSimEnd_
Definition:
switchenergymodel.h:44
SwitchEnergyModel::ePort_
double ePort_
Definition:
switchenergymodel.h:42
SwitchEnergyModel::eLineCard_
double eLineCard_
Definition:
switchenergymodel.h:41
SwitchEnergyModel::eDNS_enabled_
int eDNS_enabled_
Definition:
switchenergymodel.h:47
SwitchEnergyModel::eEnabled_
int eEnabled_
Definition:
switchenergymodel.h:53
SwitchEnergyModel::energytimer_
SwitchEnergyTimer energytimer_
Definition:
switchenergymodel.h:62
SwitchEnergyModel::eCurrentRate_
double eCurrentRate_
Definition:
switchenergymodel.h:55
SwitchEnergyTimer::SwitchEnergyTimer
SwitchEnergyTimer(SwitchEnergyModel *em)
Definition:
switchenergymodel.h:19
SwitchEnergyModel::eActivePorts_
int eActivePorts_
Definition:
switchenergymodel.h:57
SwitchEnergyModel::eDNS_delay_
double eDNS_delay_
Definition:
switchenergymodel.h:48
SwitchEnergyModel::eChassis_
double eChassis_
Definition:
switchenergymodel.h:40
SwitchEnergyTimer::expire
void expire(Event *)
Definition:
switchenergymodel.cc:94
SwitchEnergyModel::eConsumed_
double eConsumed_
Definition:
switchenergymodel.h:38
SwitchEnergyModel::eSimDuration_
double eSimDuration_
Definition:
switchenergymodel.h:59
SwitchEnergyModel::eDVFS_enabled_
int eDVFS_enabled_
Definition:
switchenergymodel.h:46
SwitchEnergyModel::eLastSample_
double eLastSample_
Definition:
switchenergymodel.h:56
SwitchEnergyTimer::em_
SwitchEnergyModel * em_
Definition:
switchenergymodel.h:22
SwitchEnergyModel
Definition:
switchenergymodel.h:25
SwitchEnergyTimer
Definition:
switchenergymodel.h:17
SwitchEnergyModel::setClassifier
void setClassifier(Classifier *classifier)
Definition:
switchenergymodel.h:32
SwitchEnergyModel::classifier_
Classifier * classifier_
Definition:
switchenergymodel.h:61
Generated on Sat Jan 30 2016 10:58:35 for GreenCloud Simulator by
1.8.11