![]() |
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... |
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.