45 #include "contiki-conf.h"
62 static uint32_t last_listen, last_transmit;
63 uint32_t listen, transmit;
67 listen = energest_type_time(ENERGEST_TYPE_LISTEN);
68 e->listen += listen - last_listen;
71 transmit = energest_type_time(ENERGEST_TYPE_TRANSMIT);
72 e->transmit += transmit - last_transmit;
73 last_transmit = transmit;
79 e->listen = e->transmit = 0;
85 packetbuf_set_attr(PACKETBUF_ATTR_LISTEN_TIME,
86 packetbuf_attr(PACKETBUF_ATTR_LISTEN_TIME) + e->listen);
87 packetbuf_set_attr(PACKETBUF_ATTR_TRANSMIT_TIME,
88 packetbuf_attr(PACKETBUF_ATTR_TRANSMIT_TIME) + e->transmit);
94 e->listen += packetbuf_attr(PACKETBUF_ATTR_LISTEN_TIME);
95 e->transmit += packetbuf_attr(PACKETBUF_ATTR_TRANSMIT_TIME);
void compower_accumulate(struct compower_activity *e)
Accumulate power contumption for a communication activity.
void compower_init(void)
Initialize the communication power accounting module.
Header file for the Rime buffer (packetbuf) management
void compower_attrconv(struct compower_activity *e)
Convert power contumption information to packet attributes.
struct compower_activity compower_idle_activity
The default idle communication activity.
void compower_clear(struct compower_activity *e)
Clear power consumption information for a communication activity.
Header file for the communication power accounting module
Header file for the energy estimation mechanism
void compower_accumulate_attrs(struct compower_activity *e)
Accumulate power contumption for a communication activity based on energy data in packet attributes...
An activity record that contains power consumption information for a specific communication activity...