#include <NiceCluster.h>
Public Member Functions | |
NiceCluster () | |
void | add (const TransportAddress &member) |
void | clear () |
bool | contains (const TransportAddress &member) |
int | getSize () |
const TransportAddress & | get (int i) |
void | remove (const TransportAddress &member) |
void | setLeader (const TransportAddress &leader) |
const TransportAddress & | getLeader () |
simtime_t | get_Last_LT () |
void | set_Last_LT () |
Private Types | |
typedef std::set < TransportAddress > ::const_iterator | ConstClusterIterator |
typedef std::set < TransportAddress >::iterator | ClusterIterator |
Private Attributes | |
std::set< TransportAddress > | cluster |
TransportAddress | leader |
simtime_t | last_LT |
Definition at line 30 of file NiceCluster.h.
typedef std::set<TransportAddress>::iterator NiceCluster::ClusterIterator [private] |
Definition at line 42 of file NiceCluster.h.
typedef std::set<TransportAddress>::const_iterator NiceCluster::ConstClusterIterator [private] |
Definition at line 41 of file NiceCluster.h.
NiceCluster::NiceCluster | ( | ) |
Definition at line 28 of file NiceCluster.cc.
00029 { 00030 WATCH_SET(cluster); 00031 WATCH(leader); 00032 00033 setLeader(TransportAddress::UNSPECIFIED_NODE); 00034 00035 last_LT = 0.0; 00036 00037 } // NICECluster
void NiceCluster::add | ( | const TransportAddress & | member | ) |
Definition at line 40 of file NiceCluster.cc.
00041 { 00042 00043 cluster.insert(member); 00044 00045 } // add
void NiceCluster::clear | ( | ) |
Definition at line 48 of file NiceCluster.cc.
00049 { 00050 00051 cluster.clear(); 00052 setLeader(TransportAddress::UNSPECIFIED_NODE); 00053 00054 last_LT = 0.0; 00055 00056 } // clear
bool NiceCluster::contains | ( | const TransportAddress & | member | ) |
Definition at line 59 of file NiceCluster.cc.
00060 { 00061 00062 ConstClusterIterator it = cluster.find(member); 00063 00064 if (it != cluster.end()) 00065 return true; 00066 00067 return false; 00068 00069 } // contains
const TransportAddress & NiceCluster::get | ( | int | i | ) |
Definition at line 80 of file NiceCluster.cc.
00081 { 00082 00083 ConstClusterIterator it = cluster.begin(); 00084 00085 for (int j = 0; j < i; j++) 00086 it++; 00087 00088 return *it; 00089 00090 } // get
simtime_t NiceCluster::get_Last_LT | ( | ) |
Definition at line 118 of file NiceCluster.cc.
00119 { 00120 00121 return last_LT; 00122 00123 }
const TransportAddress & NiceCluster::getLeader | ( | ) |
Definition at line 110 of file NiceCluster.cc.
00111 { 00112 00113 return leader; 00114 00115 } // getLeader
int NiceCluster::getSize | ( | ) |
Definition at line 72 of file NiceCluster.cc.
00073 { 00074 00075 return cluster.size(); 00076 00077 } // getSize
void NiceCluster::remove | ( | const TransportAddress & | member | ) |
Definition at line 92 of file NiceCluster.cc.
00093 { 00094 00095 cluster.erase(member); 00096 00097 } // remove
void NiceCluster::set_Last_LT | ( | ) |
Definition at line 125 of file NiceCluster.cc.
00126 { 00127 00128 last_LT = simTime(); 00129 00130 }
void NiceCluster::setLeader | ( | const TransportAddress & | leader | ) |
Definition at line 100 of file NiceCluster.cc.
Referenced by clear(), and NiceCluster().
std::set<TransportAddress> NiceCluster::cluster [private] |
Definition at line 36 of file NiceCluster.h.
Referenced by add(), clear(), contains(), get(), getSize(), NiceCluster(), and remove().
simtime_t NiceCluster::last_LT [private] |
Definition at line 39 of file NiceCluster.h.
Referenced by clear(), get_Last_LT(), NiceCluster(), and set_Last_LT().
TransportAddress NiceCluster::leader [private] |
Definition at line 38 of file NiceCluster.h.
Referenced by getLeader(), and NiceCluster().