Define basic sensor interface

This commit is contained in:
BlackMark 2020-07-04 17:04:13 +02:00
parent 0a7ff9ef71
commit a848ed4894
3 changed files with 54 additions and 0 deletions

View File

@ -15,6 +15,19 @@ int main(int argc, char* argv[])
SensorDriver sensorDriver;
const auto sensors = sensorDriver.enumerateSensors();
for(const auto& sensor: sensors) {
const auto sensorRange = sensor.readRange();
const auto sensorValues = sensor.readValues();
qInfo("Sensor range: [%d,%d]", sensorRange.first, sensorRange.second);
for(size_t i = 0; i < sensorValues.size(); ++i) {
qInfo("Sensor value %d: %d", i, sensorValues[i]);
}
}
QApplication application(argc, argv);
MainWindow mainWindow;
mainWindow.show();

View File

@ -4,6 +4,26 @@
#include <QtDebug>
#include <QtGlobal>
SensorDriver::Sensor::Sensor()
{
qDebug("Creating sensor");
}
SensorDriver::Sensor::~Sensor()
{
qDebug("Destroying sensor");
}
std::pair<int, int> SensorDriver::Sensor::readRange() const
{
return {0, 4 * 1024 - 1};
}
std::vector<int> SensorDriver::Sensor::readValues() const
{
return {520, 1233, 4233};
}
SensorDriver::SensorDriver()
{
qDebug("Initializing sensor driver");
@ -36,3 +56,8 @@ SensorDriver::~SensorDriver()
{
qDebug("Destroying sensor driver");
}
std::vector<SensorDriver::Sensor> SensorDriver::enumerateSensors() const
{
return {Sensor()};
}

View File

@ -1,9 +1,25 @@
#pragma once
#include <utility>
#include <vector>
class SensorDriver {
class Sensor {
public:
Sensor();
~Sensor();
std::pair<int, int> readRange() const;
std::vector<int> readValues() const;
private:
};
public:
SensorDriver();
~SensorDriver();
std::vector<Sensor> enumerateSensors() const;
private:
};