User Manual, Developers Guide and API Documentation

wimemac::management::BeaconEvaluator Class Reference

BeaconEvaluator evaluates beacon compounds. For each new DRP connection a DRPManager is created. DRPManager holds the necessary information to identify a common drp connection. The queue interface represents the connection between "beacon plane (BeaconCollector, BeaconEvaluator)" and "data plane (DataCollector)". This interface is used by each DRPManager to notify the data queues about the beginning drp reservation for a specific drp connection.

#include <management/BeaconEvaluator.hpp>

Inheritance diagram for wimemac::management::BeaconEvaluator:

Inheritance graph
[legend]
Collaboration diagram for wimemac::management::BeaconEvaluator:

Collaboration graph
[legend]

List of all members.

Public Member Functions

 BeaconEvaluator ()
void BeaconExamination (wns::service::dll::UnicastAddress tx, wns::service::dll::UnicastAddress iam, BeaconCommand *BeaconCommand, wns::logger::Logger _logger)
 After receiving a beacon, compound will be examined.
int CollectDRPmaps (wns::simulator::Time BPDuration)
 register drp connection timer for each drp connection after BP has finished
bool CreateBPOIE (BeaconCommand *BeaconCommand)
bool CreateDRPIE (BeaconCommand *BeaconCommand)
void CreateDRPManager (wns::service::dll::UnicastAddress rx, int CompoundspSF, int BitspSF, int MaxCompoundSize, wimemac::convergence::PhyMode DefPhyMode)
void CreateDRPMaps ()
bool CreateProbeIE (BeaconCommand *BeaconCommand)
void EvaluateConnection ()
void evaluatePERforConnections ()
wimemac::convergence::PhyMode getPhyMode (wns::service::dll::UnicastAddress rx, int masNumber)
 Get the PhyMode for a transmission partner.
Vector getReservedMASs ()
void RequestIE (wns::service::dll::UnicastAddress rx, BeaconCommand::ProbeElementID elementID)
 call to request an IE from the specified address
void SetBPDuration (wns::simulator::Time duration)
void setFriend (helper::IDRPQueueInterface *QueueInterface)
 register specific queue interface
void SetLogger (wns::logger::Logger _logger)
void setManagerFriend (wimemac::lowerMAC::Manager *manager_)
 register manager
void UpdateDRPManager (wns::service::dll::UnicastAddress rx, int CompoundspSF, int BitspSF, int MaxCompoundSize)
void UpdateGlobalDRPMap (Vector DRPMap)
void UpdateGlobalHardDRPMap (Vector SoftDRPMap)
void UpdateGlobalSoftDRPMap (Vector HardDRPMap)
bool UpdateMapWithPeerAvailabilityMap (wns::service::dll::UnicastAddress rx, Vector &DRPMap)

Protected Member Functions

Vector getAllocatedMASs ()

Protected Attributes

wns::simulator::Time BPDuration
wns::simulator::Time BPStartTime
drp::DRPmapDRPmapManager
int NumberOfBPSlots
struct
wimemac::management::BeaconEvaluator::Probes 
requestedProbes

Private Types

typedef
wns::container::Registry
< wns::service::dll::UnicastAddress,
drp::DRPManager * > 
ContainerType

Private Member Functions

void ExamineBeaconPeriodOccupancy (wns::service::dll::UnicastAddress tx, BeaconCommand *BeaconCommand)
int getBeaconSlot ()
void InsertInNeighoursBPoccupancy (wns::service::dll::UnicastAddress tx, BeaconCommand *BeaconCommand)

Private Attributes

std::vector
< wns::service::dll::UnicastAddress
BPoccupancy
 Topology discovering through Beacon Period Occupancy, BPoccupancy is the device's BPOIE.
int calp
ContainerType DRPIncomingConnections
 DRPconnection holds all DRPManager, mac address represents a key.
drp::DRPManagerDRPmanager
ContainerType DRPOutgoingConnections
bool FirstEval
struct
wimemac::management::BeaconEvaluator::Friends 
friends
bool hasPendingProbe
 ProbeIEs.
ContainerType::const_iterator it
wns::logger::Logger logger
std::vector< BPallocationNeighboursBPoccupancy
 NeighboursBPoccupancy is used as a container for all received BPOIEs of the neighbours.
wns::container::Registry
< wns::service::dll::UnicastAddress,
std::queue
< BeaconCommand::ProbeElementID > > 
pendingProbe
helper::IDRPQueueInterfacequeueInterface
wns::container::Registry
< wns::service::dll::UnicastAddress,
Vector
rxAvailabilityBitmap
Vector tmpAllocatedMAS

Classes

struct  BPallocation
struct  Friends
struct  Probes
 Respond to probes with the requested IEs in the next beacons. More...


Detailed Description

Definition at line 60 of file BeaconEvaluator.hpp.


Member Typedef Documentation

Definition at line 125 of file BeaconEvaluator.hpp.


Constructor & Destructor Documentation

BeaconEvaluator::BeaconEvaluator (  ) 

Definition at line 35 of file BeaconEvaluator.cpp.


Member Function Documentation

void BeaconEvaluator::BeaconExamination ( wns::service::dll::UnicastAddress  tx,
wns::service::dll::UnicastAddress  iam,
BeaconCommand BeaconCommand,
wns::logger::Logger  _logger 
)

Definition at line 72 of file BeaconEvaluator.cpp.

int BeaconEvaluator::CollectDRPmaps ( wns::simulator::Time  BPDuration  ) 

Definition at line 313 of file BeaconEvaluator.cpp.

bool BeaconEvaluator::CreateBPOIE ( BeaconCommand BeaconCommand  ) 

Definition at line 524 of file BeaconEvaluator.cpp.

bool BeaconEvaluator::CreateDRPIE ( BeaconCommand BeaconCommand  ) 

Definition at line 535 of file BeaconEvaluator.cpp.

void BeaconEvaluator::CreateDRPManager ( wns::service::dll::UnicastAddress  rx,
int  CompoundspSF,
int  BitspSF,
int  MaxCompoundSize,
wimemac::convergence::PhyMode  DefPhyMode 
)

Definition at line 486 of file BeaconEvaluator.cpp.

void BeaconEvaluator::CreateDRPMaps (  ) 

Definition at line 264 of file BeaconEvaluator.cpp.

bool BeaconEvaluator::CreateProbeIE ( BeaconCommand BeaconCommand  ) 

Definition at line 677 of file BeaconEvaluator.cpp.

void BeaconEvaluator::EvaluateConnection (  ) 

Definition at line 350 of file BeaconEvaluator.cpp.

void BeaconEvaluator::evaluatePERforConnections (  ) 

Definition at line 460 of file BeaconEvaluator.cpp.

void BeaconEvaluator::ExamineBeaconPeriodOccupancy ( wns::service::dll::UnicastAddress  tx,
BeaconCommand BeaconCommand 
) [private]

Definition at line 787 of file BeaconEvaluator.cpp.

Vector BeaconEvaluator::getAllocatedMASs (  )  [protected]

Definition at line 759 of file BeaconEvaluator.cpp.

int BeaconEvaluator::getBeaconSlot (  )  [private]

Definition at line 773 of file BeaconEvaluator.cpp.

wimemac::convergence::PhyMode BeaconEvaluator::getPhyMode ( wns::service::dll::UnicastAddress  rx,
int  masNumber 
)

Definition at line 52 of file BeaconEvaluator.cpp.

Vector BeaconEvaluator::getReservedMASs (  ) 

Definition at line 765 of file BeaconEvaluator.cpp.

void BeaconEvaluator::InsertInNeighoursBPoccupancy ( wns::service::dll::UnicastAddress  tx,
BeaconCommand BeaconCommand 
) [private]

Definition at line 859 of file BeaconEvaluator.cpp.

void BeaconEvaluator::RequestIE ( wns::service::dll::UnicastAddress  rx,
BeaconCommand::ProbeElementID  elementID 
)

Definition at line 694 of file BeaconEvaluator.cpp.

void BeaconEvaluator::SetBPDuration ( wns::simulator::Time  duration  ) 

Reimplemented in wimemac::management::BeaconBuilder.

Definition at line 449 of file BeaconEvaluator.cpp.

void BeaconEvaluator::setFriend ( helper::IDRPQueueInterface QueueInterface  ) 

Definition at line 437 of file BeaconEvaluator.cpp.

void BeaconEvaluator::SetLogger ( wns::logger::Logger  _logger  ) 

Definition at line 45 of file BeaconEvaluator.cpp.

void BeaconEvaluator::setManagerFriend ( wimemac::lowerMAC::Manager manager_  ) 

Definition at line 443 of file BeaconEvaluator.cpp.

void BeaconEvaluator::UpdateDRPManager ( wns::service::dll::UnicastAddress  rx,
int  CompoundspSF,
int  BitspSF,
int  MaxCompoundSize 
)

Definition at line 516 of file BeaconEvaluator.cpp.

void BeaconEvaluator::UpdateGlobalDRPMap ( Vector  DRPMap  ) 

Definition at line 728 of file BeaconEvaluator.cpp.

void BeaconEvaluator::UpdateGlobalHardDRPMap ( Vector  SoftDRPMap  ) 

Definition at line 721 of file BeaconEvaluator.cpp.

void BeaconEvaluator::UpdateGlobalSoftDRPMap ( Vector  HardDRPMap  ) 

Definition at line 713 of file BeaconEvaluator.cpp.

bool BeaconEvaluator::UpdateMapWithPeerAvailabilityMap ( wns::service::dll::UnicastAddress  rx,
Vector DRPMap 
)

Definition at line 736 of file BeaconEvaluator.cpp.


Member Data Documentation

Definition at line 109 of file BeaconEvaluator.hpp.

Definition at line 141 of file BeaconEvaluator.hpp.

Definition at line 120 of file BeaconEvaluator.hpp.

Definition at line 124 of file BeaconEvaluator.hpp.

Definition at line 127 of file BeaconEvaluator.hpp.

Definition at line 131 of file BeaconEvaluator.hpp.

Definition at line 108 of file BeaconEvaluator.hpp.

Definition at line 128 of file BeaconEvaluator.hpp.

Definition at line 159 of file BeaconEvaluator.hpp.

Definition at line 158 of file BeaconEvaluator.hpp.

Definition at line 129 of file BeaconEvaluator.hpp.

Reimplemented in wimemac::management::BeaconBuilder.

Definition at line 161 of file BeaconEvaluator.hpp.

Definition at line 154 of file BeaconEvaluator.hpp.

Definition at line 110 of file BeaconEvaluator.hpp.

Definition at line 160 of file BeaconEvaluator.hpp.

Definition at line 162 of file BeaconEvaluator.hpp.

Definition at line 156 of file BeaconEvaluator.hpp.

Definition at line 132 of file BeaconEvaluator.hpp.


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

Generated on Sat May 26 03:32:50 2012 for openWNS by  doxygen 1.5.5