#include <LBTS.hh>

Public Types | |
| typedef std::pair < FederateHandle, FederationTime > | FederateClock |
Public Member Functions | |
| LBTS () | |
| Constructor. | |
| ~LBTS () | |
| void | compute () |
| Compute the LBTS. | |
| bool | exists (FederateHandle) const |
| Check if a federate exists. | |
| void | get (std::vector< FederateClock > &) const |
| Get all the federate handle and time in a list of pairs. | |
| void | insert (FederateHandle num_fed, FederationTime the_time) |
| Insert a new federate and time. | |
| void | remove (FederateHandle num_fed) |
| Remove a federate. | |
| void | setFederate (FederateHandle handle) |
| size_t | size () const |
| void | update (FederateHandle num_fed, FederationTime the_time) |
| update a federate | |
Protected Attributes | |
| FederationTime | _LBTS |
| FederateHandle | MyFederateNumber |
Private Types | |
| typedef std::map < FederateHandle, FederationTime > | ClockSet |
Private Attributes | |
| ClockSet | clocks |
Definition at line 41 of file LBTS.hh.
| typedef std::pair<FederateHandle, FederationTime> FederateClock |
typedef std::map<FederateHandle, FederationTime> ClockSet [private] |
| LBTS | ( | ) |
| void compute | ( | ) |
Compute the LBTS.
Definition at line 64 of file LBTS.cc.
References LBTS::_LBTS, LBTS::clocks, and LBTS::MyFederateNumber.
Referenced by LBTS::insert(), LBTS::remove(), and LBTS::update().
| bool exists | ( | FederateHandle | federate | ) | const |
Check if a federate exists.
Definition at line 85 of file LBTS.cc.
References LBTS::clocks.
Referenced by LBTS::insert().
| void get | ( | std::vector< FederateClock > & | v | ) | const |
Get all the federate handle and time in a list of pairs.
| v | Output parameter, list receiving values |
Definition at line 95 of file LBTS.cc.
References LBTS::clocks.
Referenced by Federation::add().
| void insert | ( | FederateHandle | num_fed, | |
| FederationTime | the_time | |||
| ) |
Insert a new federate and time.
Definition at line 109 of file LBTS.cc.
References LBTS::clocks, LBTS::compute(), and LBTS::exists().
Referenced by Federation::addRegulator(), FederationManagement::joinFederationExecution(), and RTIA::processNetworkMessage().

| void remove | ( | FederateHandle | num_fed | ) |
Remove a federate.
Definition at line 150 of file LBTS.cc.
References LBTS::clocks, and LBTS::compute().
Referenced by RTIA::processNetworkMessage(), and Federation::removeRegulator().

| void setFederate | ( | FederateHandle | handle | ) | [inline] |
Definition at line 54 of file LBTS.hh.
Referenced by FederationManagement::joinFederationExecution().
| size_t size | ( | ) | const [inline] |
| void update | ( | FederateHandle | num_fed, | |
| FederationTime | the_time | |||
| ) |
update a federate
Definition at line 123 of file LBTS.cc.
References LBTS::clocks, LBTS::compute(), certi::D, FedTime::getTime(), PrettyDebug::Out(), and pdDebug.
Referenced by RTIA::processNetworkMessage(), and Federation::updateRegulator().

FederationTime _LBTS [protected] |
Definition at line 59 of file LBTS.hh.
Referenced by LBTS::compute(), TimeManagement::nextEventAdvance(), TimeManagement::requestFederationTime(), TimeManagement::requestLBTS(), TimeManagement::requestMinNextEventTime(), and TimeManagement::timeAdvance().
FederateHandle MyFederateNumber [protected] |
Definition at line 65 of file LBTS.hh.
Referenced by LBTS::compute(), LBTS::exists(), LBTS::get(), LBTS::insert(), LBTS::remove(), and LBTS::update().
1.5.5