DeviceManager: Initial class with DeviceSpecParser

Hopefully by the end of tonight we should be done with the dev
spec parser.
This commit is contained in:
2025-01-05 14:19:53 -04:00
parent f16d3b24b3
commit 6307d2869e
9 changed files with 128 additions and 2 deletions
+35
View File
@@ -0,0 +1,35 @@
#include <iostream>
#include <fstream>
#include <stdexcept>
#include <string>
#include <vector>
#include <sstream>
#include <opts.h>
#include <deviceManager/deviceSpecParser.h>
#include <deviceManager/deviceManager.h>
void DeviceManager::handleDeviceSpecifiers(const OptionParser& options)
{
std::vector<std::string> deviceStrings;
deviceStrings.insert(deviceStrings.end(), options.extro.begin(),
options.extro.end());
deviceStrings.insert(deviceStrings.end(), options.intero.begin(),
options.intero.end());
deviceStrings.insert(deviceStrings.end(), options.actuator.begin(),
options.actuator.end());
for (const auto& file : options.deviceSpecFiles) {
std::vector<std::string> fileDeviceStrings = readDeviceFile(file);
deviceStrings.insert(deviceStrings.end(), fileDeviceStrings.begin(),
fileDeviceStrings.end());
}
std::vector<std::pair<std::string, std::string>> deviceSpecifiers =
parseDeviceSpecifiers(deviceStrings);
// Use deviceSpecifiers with the device manager
for (const auto& specifier : deviceSpecifiers) {
std::cout << "Device: " << specifier.first << ", Specifier: "
<< specifier.second << std::endl;
}
}