Classes

Power consumption - Classes using/defining power consumption

Collaboration diagram for Power consumption - Classes using/defining power consumption:

Classes

class  DrawAmount
 Defines the amount of power drawn by a device from a power source. More...
class  BaseBattery
 Base class for any power source. More...
class  BatteryAccess
 Extends BaseModule by several methods which provide access to the battery module. More...
class  HostState
 HostState is published by the battery to announce host failure. More...
class  Decider80211Battery
 Extends Decider80211 by drawing power during receiving of messages. More...
class  PhyLayerBattery
 Extends PhyLayer by adding power consumption for tx, rx and idle. More...
class  PhyLayerUWBIR
 Physical layer that models an Ultra Wideband Impulse Radio wireless communication system. More...
class  BatteryState
 residual capacity of battery More...
class  BatteryStats
 collects and formates statistical data from the battery More...
class  DeviceEntry
 per-device/per-account record of battery consumption, is passed to BatteryStats on finish() More...
class  SimpleBattery
 A simple linear model of battery consumption. More...

Detailed Description

power.png

Classes handling power consumption and host state

Every BaseModule automatically receives HostState changes published by BaseUtilities blackboard functionality. BaseModule itself raises an error inside "handleHostState()" method if the hosts state changes to something else then active. This means every host module (which derives from BaseModule) has to override this method if it wants to work with host states other then active (like sleep, or off).

BaseBattery defines the methods every battery module (or power source) has to implement for tracking power consumption. BatteryAccess provides for every host module access to the battery (/power source) by providing methods for registration with and drawing power from the battery.

SimpleBattery is a simple implementation of a battery module. PhyLayerBattery and BurstApplicationLayerBattery are only two examples for host modules which support power consumption and host state changes.