Package: inet.power.contract
ICcEnergyConsumer
module interfaceThis interface extends the corresponding energy model interface. It requires implementations to describe energy consumption and energy generation with current [A], and storage capacity with charge [C] and output voltage [V]. The Cc is an abbreviation that is used for charge and current based interfaces.
See also: ICcEnergySource, ICcEnergyGenerator, ICcEnergySink, ICcEnergyStorage, ICcEnergyManagement
Author: Levente Meszaros
Inheritance diagram
The following diagram shows inheritance relationships for this type. Unresolved types are missing from the diagram.
Implemented by
Name | Type | Description |
---|---|---|
CcEnergyConsumerBase | simple module |
This is an abstract base module for current based energy consumer models. It defines shared signals and statistics. |
StateBasedCcEnergyConsumer | simple module |
This module provides a radio energy consumer model. The current consumption is determined by the radio mode, the transmitter state and the receiver state using constant parameters. |
Extends
Name | Type | Description |
---|---|---|
IEnergyConsumer | module interface |
The energy consumer models describe the energy consumption process of devices over time. For example, a radio consumes energy when it transmits or receives signals, or a CPU consumes energy when the network layer processes packets, or a display consumes energy when it's turned on, etc. |
Properties
Name | Value | Description |
---|---|---|
display | i=block/plug |
Signals
Name | Type | Unit |
---|---|---|
currentConsumptionChanged | double |
Source code
// // This interface extends the corresponding energy model interface. It requires // implementations to describe energy consumption and energy generation with // current [A], and storage capacity with charge [C] and output voltage [V]. // The Cc is an abbreviation that is used for charge and current based interfaces. // // @see ~ICcEnergySource, ~ICcEnergyGenerator, ~ICcEnergySink, ~ICcEnergyStorage, ~ICcEnergyManagement // @author Levente Meszaros // moduleinterface ICcEnergyConsumer extends IEnergyConsumer { parameters: @display("i=block/plug"); @signal[currentConsumptionChanged](type=double); }File: src/inet/power/contract/ICcEnergyConsumer.ned