blob: 3a51a2957f6a8c3b58a0e800c9ceedf6881075d5 [file] [log] [blame]
Brad Bishop26b815f2017-01-04 13:32:47 -05001#pragma once
Patrick Williams3667cf32015-10-20 22:39:11 -05002
3#include <fstream>
4#include <string>
5
6template <typename T>
7void read_sysfs(const std::string& path, T& val)
8{
9 std::ifstream s(path);
10 s >> val;
11}
12
13template <typename T>
14void write_sysfs(const std::string& path, const T& val)
15{
16 std::ofstream s(path);
17 s << val;
18}
19
20const std::string make_sysfs_path(const std::string& path,
21 const std::string& type,
22 const std::string& id,
23 const std::string& entry)
24{
25 using namespace std::literals;
26
27 return path + "/"s + type + id + "_"s + entry;
28}
29
Brad Bishop03476f12016-12-19 13:09:12 -050030// vim: tabstop=8 expandtab shiftwidth=4 softtabstop=4