Linux driver: added system_utils.hpp with a helper class that reads Linux machine ID

This commit is contained in:
Pavel Kirienko
2015-05-11 21:54:16 +03:00
parent 92c8944e49
commit 0253933f75
4 changed files with 179 additions and 1 deletions
@@ -0,0 +1,39 @@
/*
* Copyright (C) 2015 Pavel Kirienko <pavel.kirienko@gmail.com>
*/
#include <uavcan_linux/uavcan_linux.hpp>
#include <iostream>
#include <iomanip>
#include "debug.hpp"
int main(int argc, const char** argv)
{
try
{
const std::vector<std::string> iface_names(argv + 1, argv + argc);
const auto res = uavcan_linux::MachineIDReader(iface_names).readAndGetLocation();
const auto original_flags = std::cout.flags();
for (auto x : res.first)
{
std::cout << std::hex << std::setw(2) << std::setfill('0') << int(x);
}
std::cout.width(0);
std::cout.flags(original_flags);
std::cout << std::endl;
std::cout << res.second << std::endl;
return 0;
}
catch (const std::exception& ex)
{
std::cerr << "Exception: " << ex.what() << std::endl;
return 1;
}
}