Loop Timing Witness
Native controller and runtime interfaces; hardware qualification pending
Toggle main menu visibility
Loading...
Searching...
No Matches
power_configuration.h
Go to the documentation of this file.
1
// SPDX-License-Identifier: AGPL-3.0-or-later
2
// Commercial license available
3
// © Concepts 1996–2026 Miroslav Šotek. All rights reserved.
4
// © Code 2020–2026 Miroslav Šotek. All rights reserved.
5
// ORCID: 0009-0009-3560-0851
6
// Contact: www.anulum.li | protoscience@anulum.li
7
// Loop Timing Witness — explicit PAC1934 acquisition configuration
8
12
13
#ifndef WITNESS_POWER_CONFIGURATION_H
14
#define WITNESS_POWER_CONFIGURATION_H
15
#include <array>
16
#include <cstdint>
17
#include <string>
18
19
namespace
witness {
21
struct
PowerRail
{
22
std::string
name
,
label
;
23
unsigned
channel
;
24
std::uint32_t
shunt_microohms
;
25
};
26
27
struct
PowerConfiguration
{
28
std::string
device
,
kernel_release
;
29
std::uint64_t
period_ns
,
maximum_read_ns
;
30
int
worker_cpu
;
31
unsigned
sample_rate
;
32
std::array<PowerRail, 4>
rails
;
33
};
34
35
void
validate_power_configuration
(
const
PowerConfiguration
&configuration);
37
PowerConfiguration
read_power_configuration
(
const
std::string &path);
38
}
// namespace witness
72
73
#endif
witness::validate_power_configuration
void validate_power_configuration(const PowerConfiguration &configuration)
witness::read_power_configuration
PowerConfiguration read_power_configuration(const std::string &path)
witness::PowerConfiguration
Definition
power_configuration.h:27
witness::PowerConfiguration::maximum_read_ns
std::uint64_t maximum_read_ns
Definition
power_configuration.h:29
witness::PowerConfiguration::sample_rate
unsigned sample_rate
Definition
power_configuration.h:31
witness::PowerConfiguration::worker_cpu
int worker_cpu
Definition
power_configuration.h:30
witness::PowerConfiguration::period_ns
std::uint64_t period_ns
Definition
power_configuration.h:29
witness::PowerConfiguration::rails
std::array< PowerRail, 4 > rails
Definition
power_configuration.h:32
witness::PowerConfiguration::device
std::string device
Definition
power_configuration.h:28
witness::PowerConfiguration::kernel_release
std::string kernel_release
Definition
power_configuration.h:28
witness::PowerRail
Definition
power_configuration.h:21
witness::PowerRail::name
std::string name
Definition
power_configuration.h:22
witness::PowerRail::shunt_microohms
std::uint32_t shunt_microohms
Definition
power_configuration.h:24
witness::PowerRail::channel
unsigned channel
Definition
power_configuration.h:23
witness::PowerRail::label
std::string label
Definition
power_configuration.h:22
runtime
linux
power_configuration.h
Generated by
1.18.0