Add groups to the sensors
This commit is contained in:
parent
2fbfd1d458
commit
221cb519a2
6 changed files with 68 additions and 5 deletions
|
|
@ -33,6 +33,29 @@ void SensorStore::load(const QJsonObject& json)
|
|||
}
|
||||
}
|
||||
|
||||
std::vector<QString> SensorStore::allGroups() const
|
||||
{
|
||||
std::vector<QString> groups;
|
||||
for(const Sensor& sensor : sensors_)
|
||||
{
|
||||
if(!sensor.groupName.isEmpty())
|
||||
{
|
||||
bool found = false;
|
||||
for(const QString& group : groups)
|
||||
{
|
||||
if(group == sensor.groupName)
|
||||
{
|
||||
found = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if(!found)
|
||||
groups.push_back(sensor.groupName);
|
||||
}
|
||||
}
|
||||
return groups;
|
||||
}
|
||||
|
||||
void SensorStore::sensorGotState(const Sensor& sensor, sensor_update_type_t type)
|
||||
{
|
||||
bool inSensors = false;
|
||||
|
|
@ -48,6 +71,7 @@ void SensorStore::sensorGotState(const Sensor& sensor, sensor_update_type_t type
|
|||
{
|
||||
sensors_[i].name = sensor.name;
|
||||
sensors_[i].hidden = sensor.hidden;
|
||||
sensors_[i].groupName = sensor.groupName;
|
||||
// Also update knownSensors_
|
||||
for(Sensor& known : knownSensors_)
|
||||
{
|
||||
|
|
@ -55,6 +79,7 @@ void SensorStore::sensorGotState(const Sensor& sensor, sensor_update_type_t type
|
|||
{
|
||||
known.name = sensor.name;
|
||||
known.hidden = sensor.hidden;
|
||||
known.groupName = sensor.groupName;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
@ -76,6 +101,7 @@ void SensorStore::sensorGotState(const Sensor& sensor, sensor_update_type_t type
|
|||
{
|
||||
newSensor.name = known.name;
|
||||
newSensor.hidden = known.hidden;
|
||||
newSensor.groupName = known.groupName;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue