1pub mod power_manager_metrics {
4pub const CUSTOMER_NAME: &str = "fuchsia";
5pub const CUSTOMER_ID: u32 = 1;
6pub const PROJECT_NAME: &str = "power";
7pub const PROJECT_ID: u32 = 3;
8
9pub const POWER_BROKER_INSPECT_VMO_USED_BYTES_PER_DEVICE_DAILY_HISTOGRAM_MAX_INT_BUCKETS_FLOOR: i64 = 0;
11pub const POWER_BROKER_INSPECT_VMO_USED_BYTES_PER_DEVICE_DAILY_HISTOGRAM_MAX_INT_BUCKETS_NUM_BUCKETS: u32 = 1024;
12pub const POWER_BROKER_INSPECT_VMO_USED_BYTES_PER_DEVICE_DAILY_HISTOGRAM_MAX_INT_BUCKETS_STEP_SIZE: u32 = 4096;
13
14pub const POWER_BROKER_INSPECT_VMO_USED_PER_TEN_K_PER_DEVICE_DAILY_HISTOGRAM_MAX_INT_BUCKETS_FLOOR: i64 = 0;
16pub const POWER_BROKER_INSPECT_VMO_USED_PER_TEN_K_PER_DEVICE_DAILY_HISTOGRAM_MAX_INT_BUCKETS_NUM_BUCKETS: u32 = 100;
17pub const POWER_BROKER_INSPECT_VMO_USED_PER_TEN_K_PER_DEVICE_DAILY_HISTOGRAM_MAX_INT_BUCKETS_STEP_SIZE: u32 = 100;
18
19pub const POWER_BROKER_INSPECT_EVENT_BUFFER_CAPACITY_PER_DEVICE_DAILY_MAX_INT_BUCKETS_FLOOR: i64 = 0;
21pub const POWER_BROKER_INSPECT_EVENT_BUFFER_CAPACITY_PER_DEVICE_DAILY_MAX_INT_BUCKETS_NUM_BUCKETS: u32 = 1024;
22pub const POWER_BROKER_INSPECT_EVENT_BUFFER_CAPACITY_PER_DEVICE_DAILY_MAX_INT_BUCKETS_STEP_SIZE: u32 = 256;
23
24pub const POWER_BROKER_INSPECT_EVENT_HISTORY_DURATION_SECONDS_PER_DEVICE_DAILY_HISTOGRAM_MIN_INT_BUCKETS_FLOOR: i64 = 0;
26pub const POWER_BROKER_INSPECT_EVENT_HISTORY_DURATION_SECONDS_PER_DEVICE_DAILY_HISTOGRAM_MIN_INT_BUCKETS_NUM_BUCKETS: u32 = 288;
27pub const POWER_BROKER_INSPECT_EVENT_HISTORY_DURATION_SECONDS_PER_DEVICE_DAILY_HISTOGRAM_MIN_INT_BUCKETS_STEP_SIZE: u32 = 300;
28
29pub const SYSTEM_ACTIVITY_GOVERNOR_INSPECT_VMO_USED_BYTES_PER_DEVICE_DAILY_HISTOGRAM_MAX_INT_BUCKETS_FLOOR: i64 = 0;
31pub const SYSTEM_ACTIVITY_GOVERNOR_INSPECT_VMO_USED_BYTES_PER_DEVICE_DAILY_HISTOGRAM_MAX_INT_BUCKETS_NUM_BUCKETS: u32 = 1024;
32pub const SYSTEM_ACTIVITY_GOVERNOR_INSPECT_VMO_USED_BYTES_PER_DEVICE_DAILY_HISTOGRAM_MAX_INT_BUCKETS_STEP_SIZE: u32 = 4096;
33
34pub const SYSTEM_ACTIVITY_GOVERNOR_INSPECT_VMO_USED_PER_TEN_K_PER_DEVICE_DAILY_HISTOGRAM_MAX_INT_BUCKETS_FLOOR: i64 = 0;
36pub const SYSTEM_ACTIVITY_GOVERNOR_INSPECT_VMO_USED_PER_TEN_K_PER_DEVICE_DAILY_HISTOGRAM_MAX_INT_BUCKETS_NUM_BUCKETS: u32 = 100;
37pub const SYSTEM_ACTIVITY_GOVERNOR_INSPECT_VMO_USED_PER_TEN_K_PER_DEVICE_DAILY_HISTOGRAM_MAX_INT_BUCKETS_STEP_SIZE: u32 = 100;
38
39pub const SYSTEM_ACTIVITY_GOVERNOR_INSPECT_EVENT_BUFFER_CAPACITY_PER_DEVICE_DAILY_MAX_INT_BUCKETS_FLOOR: i64 = 0;
41pub const SYSTEM_ACTIVITY_GOVERNOR_INSPECT_EVENT_BUFFER_CAPACITY_PER_DEVICE_DAILY_MAX_INT_BUCKETS_NUM_BUCKETS: u32 = 1024;
42pub const SYSTEM_ACTIVITY_GOVERNOR_INSPECT_EVENT_BUFFER_CAPACITY_PER_DEVICE_DAILY_MAX_INT_BUCKETS_STEP_SIZE: u32 = 256;
43
44pub const SYSTEM_ACTIVITY_GOVERNOR_INSPECT_EVENT_HISTORY_DURATION_SECONDS_PER_DEVICE_DAILY_HISTOGRAM_MIN_INT_BUCKETS_FLOOR: i64 = 0;
46pub const SYSTEM_ACTIVITY_GOVERNOR_INSPECT_EVENT_HISTORY_DURATION_SECONDS_PER_DEVICE_DAILY_HISTOGRAM_MIN_INT_BUCKETS_NUM_BUCKETS: u32 = 288;
47pub const SYSTEM_ACTIVITY_GOVERNOR_INSPECT_EVENT_HISTORY_DURATION_SECONDS_PER_DEVICE_DAILY_HISTOGRAM_MIN_INT_BUCKETS_STEP_SIZE: u32 = 300;
48
49pub const RAW_TEMPERATURE_MIGRATED_INT_BUCKETS_FLOOR: i64 = 20;
51pub const RAW_TEMPERATURE_MIGRATED_INT_BUCKETS_NUM_BUCKETS: u32 = 80;
52pub const RAW_TEMPERATURE_MIGRATED_INT_BUCKETS_STEP_SIZE: u32 = 1;
53
54pub const MIN_POWER_CONSUMPTION_INT_BUCKETS_FLOOR: i64 = 0;
56pub const MIN_POWER_CONSUMPTION_INT_BUCKETS_NUM_BUCKETS: u32 = 100;
57pub const MIN_POWER_CONSUMPTION_INT_BUCKETS_STEP_SIZE: u32 = 50;
58
59pub const MAX_POWER_CONSUMPTION_INT_BUCKETS_FLOOR: i64 = 0;
61pub const MAX_POWER_CONSUMPTION_INT_BUCKETS_NUM_BUCKETS: u32 = 100;
62pub const MAX_POWER_CONSUMPTION_INT_BUCKETS_STEP_SIZE: u32 = 50;
63
64pub const AVG_POWER_CONSUMPTION_INT_BUCKETS_FLOOR: i64 = 0;
66pub const AVG_POWER_CONSUMPTION_INT_BUCKETS_NUM_BUCKETS: u32 = 100;
67pub const AVG_POWER_CONSUMPTION_INT_BUCKETS_STEP_SIZE: u32 = 50;
68
69pub const MEDIAN_POWER_CONSUMPTION_INT_BUCKETS_FLOOR: i64 = 0;
71pub const MEDIAN_POWER_CONSUMPTION_INT_BUCKETS_NUM_BUCKETS: u32 = 100;
72pub const MEDIAN_POWER_CONSUMPTION_INT_BUCKETS_STEP_SIZE: u32 = 50;
73
74pub const POWER_BROKER_INSPECT_VMO_USED_BYTES_METRIC_ID: u32 = 7;
77pub const POWER_BROKER_INSPECT_VMO_USED_PER_TEN_K_METRIC_ID: u32 = 8;
79pub const POWER_BROKER_INSPECT_EVENT_BUFFER_CAPACITY_METRIC_ID: u32 = 9;
81pub const POWER_BROKER_INSPECT_EVENT_HISTORY_DURATION_SECONDS_METRIC_ID: u32 = 11;
83pub const SYSTEM_ACTIVITY_GOVERNOR_INSPECT_VMO_USED_BYTES_METRIC_ID: u32 = 12;
85pub const SYSTEM_ACTIVITY_GOVERNOR_INSPECT_VMO_USED_PER_TEN_K_METRIC_ID: u32 = 13;
87pub const SYSTEM_ACTIVITY_GOVERNOR_INSPECT_EVENT_BUFFER_CAPACITY_METRIC_ID: u32 = 14;
89pub const SYSTEM_ACTIVITY_GOVERNOR_INSPECT_EVENT_HISTORY_DURATION_SECONDS_METRIC_ID: u32 = 15;
91pub const ODPM_SUSPEND_RESUME_AVG_POWER_UW_METRIC_ID: u32 = 16;
93pub const ODPM_SUSPEND_RESUME_MIN_POWER_UW_METRIC_ID: u32 = 17;
95pub const ODPM_SUSPEND_RESUME_MAX_POWER_UW_METRIC_ID: u32 = 18;
97pub const THERMAL_LIMIT_RESULT_MIGRATED_METRIC_ID: u32 = 105;
99pub const RAW_TEMPERATURE_MIGRATED_METRIC_ID: u32 = 106;
101pub const MIN_POWER_CONSUMPTION_METRIC_ID: u32 = 1004;
103pub const MAX_POWER_CONSUMPTION_METRIC_ID: u32 = 1005;
105pub const AVG_POWER_CONSUMPTION_METRIC_ID: u32 = 1006;
107pub const MEDIAN_POWER_CONSUMPTION_METRIC_ID: u32 = 1007;
109
110#[derive(Clone, Copy, PartialEq, PartialOrd, Eq, Ord, Debug, Hash)]
112pub enum PowerMetricDimensionPhase {
113 Unknown = 0,
114 Suspended = 1,
115 Active = 2,
116}
117
118impl cobalt_client::traits::AsEventCode for PowerMetricDimensionPhase {
119 fn as_event_code(&self) -> u32 {
120 *self as u32
121 }
122}
123pub use PowerMetricDimensionPhase as OdpmSuspendResumeAvgPowerUwMetricDimensionPhase;
125
126pub use PowerMetricDimensionPhase as OdpmSuspendResumeMinPowerUwMetricDimensionPhase;
128
129pub use PowerMetricDimensionPhase as OdpmSuspendResumeMaxPowerUwMetricDimensionPhase;
131
132#[derive(Clone, Copy, PartialEq, PartialOrd, Eq, Ord, Debug, Hash)]
134pub enum PowerMetricDimensionResult {
135 Mitigated = 0,
136 Shutdown = 1,
137}
138
139impl cobalt_client::traits::AsEventCode for PowerMetricDimensionResult {
140 fn as_event_code(&self) -> u32 {
141 *self as u32
142 }
143}
144pub use PowerMetricDimensionResult as ThermalLimitResultMigratedMetricDimensionResult;
146
147#[derive(Clone, Copy, PartialEq, PartialOrd, Eq, Ord, Debug, Hash)]
149pub enum PowerMetricDimensionSensor {
150 Ambient = 0,
151 ThermalPolicyInput1 = 1,
152}
153
154impl cobalt_client::traits::AsEventCode for PowerMetricDimensionSensor {
155 fn as_event_code(&self) -> u32 {
156 *self as u32
157 }
158}
159pub use PowerMetricDimensionSensor as RawTemperatureMigratedMetricDimensionSensor;
161
162#[derive(Clone, Copy, PartialEq, PartialOrd, Eq, Ord, Debug, Hash)]
164pub enum PowerMetricDimensionSensorTarget {
165 Unknown = 0,
166 Mlb = 1,
167 Audio = 2,
168}
169
170impl cobalt_client::traits::AsEventCode for PowerMetricDimensionSensorTarget {
171 fn as_event_code(&self) -> u32 {
172 *self as u32
173 }
174}
175pub use PowerMetricDimensionSensorTarget as MinPowerConsumptionMetricDimensionSensorTarget;
177
178pub use PowerMetricDimensionSensorTarget as MaxPowerConsumptionMetricDimensionSensorTarget;
180
181pub use PowerMetricDimensionSensorTarget as AvgPowerConsumptionMetricDimensionSensorTarget;
183
184pub use PowerMetricDimensionSensorTarget as MedianPowerConsumptionMetricDimensionSensorTarget;
186
187#[derive(Clone, Copy, PartialEq, PartialOrd, Eq, Ord, Debug, Hash)]
189pub enum PowerMetricDimensionIdleness {
190 Unknown = 0,
191 Idle = 1,
192 Active = 2,
193}
194
195impl cobalt_client::traits::AsEventCode for PowerMetricDimensionIdleness {
196 fn as_event_code(&self) -> u32 {
197 *self as u32
198 }
199}
200pub use PowerMetricDimensionIdleness as MinPowerConsumptionMetricDimensionIdleness;
202
203pub use PowerMetricDimensionIdleness as MaxPowerConsumptionMetricDimensionIdleness;
205
206pub use PowerMetricDimensionIdleness as AvgPowerConsumptionMetricDimensionIdleness;
208
209pub use PowerMetricDimensionIdleness as MedianPowerConsumptionMetricDimensionIdleness;
211
212#[derive(Clone, Copy, PartialEq, PartialOrd, Eq, Ord, Debug, Hash)]
213pub struct MinPowerConsumptionEventCodes {
214 pub sensor_target: MinPowerConsumptionMetricDimensionSensorTarget,
215 pub idleness: MinPowerConsumptionMetricDimensionIdleness,
216}
217
218impl cobalt_client::traits::AsEventCodes for MinPowerConsumptionEventCodes {
219 fn as_event_codes(&self) -> Vec<u32> {
220 use cobalt_client::traits::AsEventCode;
221 vec![
222 self.sensor_target.as_event_code(),
223 self.idleness.as_event_code(),
224 ]
225 }
226}
227
228#[derive(Clone, Copy, PartialEq, PartialOrd, Eq, Ord, Debug, Hash)]
229pub struct MaxPowerConsumptionEventCodes {
230 pub sensor_target: MaxPowerConsumptionMetricDimensionSensorTarget,
231 pub idleness: MaxPowerConsumptionMetricDimensionIdleness,
232}
233
234impl cobalt_client::traits::AsEventCodes for MaxPowerConsumptionEventCodes {
235 fn as_event_codes(&self) -> Vec<u32> {
236 use cobalt_client::traits::AsEventCode;
237 vec![
238 self.sensor_target.as_event_code(),
239 self.idleness.as_event_code(),
240 ]
241 }
242}
243
244#[derive(Clone, Copy, PartialEq, PartialOrd, Eq, Ord, Debug, Hash)]
245pub struct AvgPowerConsumptionEventCodes {
246 pub sensor_target: AvgPowerConsumptionMetricDimensionSensorTarget,
247 pub idleness: AvgPowerConsumptionMetricDimensionIdleness,
248}
249
250impl cobalt_client::traits::AsEventCodes for AvgPowerConsumptionEventCodes {
251 fn as_event_codes(&self) -> Vec<u32> {
252 use cobalt_client::traits::AsEventCode;
253 vec![
254 self.sensor_target.as_event_code(),
255 self.idleness.as_event_code(),
256 ]
257 }
258}
259
260#[derive(Clone, Copy, PartialEq, PartialOrd, Eq, Ord, Debug, Hash)]
261pub struct MedianPowerConsumptionEventCodes {
262 pub sensor_target: MedianPowerConsumptionMetricDimensionSensorTarget,
263 pub idleness: MedianPowerConsumptionMetricDimensionIdleness,
264}
265
266impl cobalt_client::traits::AsEventCodes for MedianPowerConsumptionEventCodes {
267 fn as_event_codes(&self) -> Vec<u32> {
268 use cobalt_client::traits::AsEventCode;
269 vec![
270 self.sensor_target.as_event_code(),
271 self.idleness.as_event_code(),
272 ]
273 }
274}
275
276}