GreenCloud Simulator
Public Member Functions | Public Attributes | List of all members
Capacity Class Reference

#include <resource.h>

Public Member Functions

 Capacity ()
 
 Capacity (int i)
 
 Capacity (double d)
 
Capacityoperator= (const double &val)
 
Capacityoperator= (const Capacity &c)
 
 operator double ()
 
Capacityoperator+= (const Capacity &rhs)
 
Capacityoperator-= (const Capacity &rhs)
 
Capacityoperator+= (const double &rhs)
 
Capacityoperator-= (const double &rhs)
 
double getValueRecursive ()
 

Public Attributes

double value
 
std::vector< Capacity * > virtual_capacities
 

Detailed Description

Definition at line 28 of file resource.h.

Constructor & Destructor Documentation

Capacity::Capacity ( )

Definition at line 11 of file resource.cc.

11  : value(0.0) {
12 
13  }
double value
Definition: resource.h:33
Capacity::Capacity ( int  i)

Definition at line 15 of file resource.cc.

15  : value(i){
16 
17  }
double value
Definition: resource.h:33
Capacity::Capacity ( double  d)

Definition at line 19 of file resource.cc.

19  : value(d){
20 
21  }
double value
Definition: resource.h:33

Member Function Documentation

double Capacity::getValueRecursive ( )

Definition at line 59 of file resource.cc.

59  {
60  double result = value;
61  std::vector<Capacity*>::iterator iter;
62  if(!virtual_capacities.empty()){
63  for(iter = virtual_capacities.begin(); iter!=virtual_capacities.end(); iter ++){
64  result += (*iter)->getValueRecursive();
65  }
66  }
67  return result;
68 }
std::vector< Capacity * > virtual_capacities
Definition: resource.h:34
double value
Definition: resource.h:33
Capacity::operator double ( )

Definition at line 37 of file resource.cc.

37  {
38  return value;
39 }
double value
Definition: resource.h:33
Capacity & Capacity::operator+= ( const Capacity rhs)

Definition at line 41 of file resource.cc.

41  {
42  this->value += rhs.value;
43  return *this;
44 }
double value
Definition: resource.h:33
Capacity & Capacity::operator+= ( const double &  rhs)

Definition at line 50 of file resource.cc.

50  {
51  this->value += rhs;
52  return *this;
53 }
double value
Definition: resource.h:33
Capacity & Capacity::operator-= ( const Capacity rhs)

Definition at line 45 of file resource.cc.

45  {
46  this->value -= rhs.value;
47  return *this;
48 }
double value
Definition: resource.h:33
Capacity & Capacity::operator-= ( const double &  rhs)

Definition at line 54 of file resource.cc.

54  {
55  this->value -= rhs;
56  return *this;
57 }
double value
Definition: resource.h:33
Capacity & Capacity::operator= ( const double &  val)

Definition at line 23 of file resource.cc.

23  {
24  this->value = val;
25  return *this; // Return ref for multiple assignment
26 }
double value
Definition: resource.h:33
Capacity & Capacity::operator= ( const Capacity c)

Definition at line 28 of file resource.cc.

28  {
29  if (this != &c) { // make sure it is not the same object
30  this->value = c.value;
31  this->virtual_capacities.clear();
33  }
34  return *this; // Return ref for multiple assignment
35 }
std::vector< Capacity * > virtual_capacities
Definition: resource.h:34
double value
Definition: resource.h:33

Member Data Documentation

double Capacity::value

Definition at line 33 of file resource.h.

std::vector<Capacity*> Capacity::virtual_capacities

Definition at line 34 of file resource.h.


The documentation for this class was generated from the following files: