Ref T270, push front for sequence and unified "insert" -> "push_back"

Remark: "CSequence::insert" is a synonym "push_back". This makes it clearer that push_back is used.
This commit is contained in:
Klaus Basan
2018-05-28 16:18:18 +02:00
parent abfa12c1ec
commit f7a0c69fc8
4 changed files with 12 additions and 9 deletions

View File

@@ -190,7 +190,7 @@ namespace BlackCore
//! \fixme KB 2017-11 maybe this code can be encapsulated somewhere //! \fixme KB 2017-11 maybe this code can be encapsulated somewhere
CApplicationInfoList apps = CApplication::getRunningApplications(); CApplicationInfoList apps = CApplication::getRunningApplications();
const CApplicationInfo myself = CApplication::instance()->getApplicationInfo(); const CApplicationInfo myself = CApplication::instance()->getApplicationInfo();
if (!apps.contains(myself)) { apps.insert(myself); } if (!apps.contains(myself)) { apps.push_back(myself); }
const bool ok = CFileUtils::writeStringToLockedFile(apps.toJsonString(), CFileUtils::appendFilePaths(swiftDataRoot(), "apps.json")); const bool ok = CFileUtils::writeStringToLockedFile(apps.toJsonString(), CFileUtils::appendFilePaths(swiftDataRoot(), "apps.json"));
if (!ok) { CLogMessage(static_cast<CApplication *>(nullptr)).error("Failed to write to application list file"); } if (!ok) { CLogMessage(static_cast<CApplication *>(nullptr)).error("Failed to write to application list file"); }
return ok; return ok;

View File

@@ -181,6 +181,9 @@ namespace BlackMisc
//! Insert as first element. //! Insert as first element.
void push_front(const T &value) { insert(begin(), value); } void push_front(const T &value) { insert(begin(), value); }
//! Inserts all elements from another sequence at the beginning of this sequence.
void push_front(const CSequence &other) { std::copy(other.begin(), other.end(), std::front_inserter(*this)); }
//! Insert as first element by keep maxElements //! Insert as first element by keep maxElements
void push_frontMaxElements(const T &value, int maxElements) void push_frontMaxElements(const T &value, int maxElements)
{ {

View File

@@ -768,7 +768,7 @@ namespace BlackMisc
for (const CAircraftModel &model : *this) for (const CAircraftModel &model : *this)
{ {
if (model.getAirlineIcaoCode() != airlineCode) { continue; } if (model.getAirlineIcaoCode() != airlineCode) { continue; }
icaos.insert(model.getAircraftIcaoCode()); icaos.push_back(model.getAircraftIcaoCode());
} }
return icaos; return icaos;
} }
@@ -1030,7 +1030,7 @@ namespace BlackMisc
Q_UNUSED(scope); Q_UNUSED(scope);
CAircraftModel value; CAircraftModel value;
value.convertFromMemoizedJson(i->toObject(), helper); value.convertFromMemoizedJson(i->toObject(), helper);
insert(value); this->push_back(value);
} }
} }

View File

@@ -270,7 +270,7 @@ namespace BlackWxPlugin
CAltitude surfaceAltitude(0, CAltitude::AboveGround, CLengthUnit::defaultUnit()); CAltitude surfaceAltitude(0, CAltitude::AboveGround, CLengthUnit::defaultUnit());
CTemperatureLayer surfaceTemperature(surfaceAltitude, CTemperature(gfsGridPoint.surfaceTemperature, CTemperatureUnit::K()), {}, {}); CTemperatureLayer surfaceTemperature(surfaceAltitude, CTemperature(gfsGridPoint.surfaceTemperature, CTemperatureUnit::K()), {}, {});
temperatureLayers.insert(surfaceTemperature); temperatureLayers.push_back(surfaceTemperature);
CWindLayerList windLayers; CWindLayerList windLayers;
for (auto isobaricLayerIt = gfsGridPoint.isobaricLayers.begin(); isobaricLayerIt != gfsGridPoint.isobaricLayers.end(); ++isobaricLayerIt) for (auto isobaricLayerIt = gfsGridPoint.isobaricLayers.begin(); isobaricLayerIt != gfsGridPoint.isobaricLayers.end(); ++isobaricLayerIt)
@@ -282,7 +282,7 @@ namespace BlackWxPlugin
auto dewPoint = calculateDewPoint(temperature, isobaricLayer.relativeHumidity); auto dewPoint = calculateDewPoint(temperature, isobaricLayer.relativeHumidity);
CTemperatureLayer temperatureLayer(level, temperature, dewPoint, isobaricLayer.relativeHumidity); CTemperatureLayer temperatureLayer(level, temperature, dewPoint, isobaricLayer.relativeHumidity);
temperatureLayers.insert(temperatureLayer); temperatureLayers.push_back(temperatureLayer);
double windDirection = -1 * CMathUtils::rad2deg(std::atan2(-isobaricLayer.windU, isobaricLayer.windV)); double windDirection = -1 * CMathUtils::rad2deg(std::atan2(-isobaricLayer.windU, isobaricLayer.windV));
windDirection += 180.0; windDirection += 180.0;
@@ -290,7 +290,7 @@ namespace BlackWxPlugin
if (windDirection >= 360.0) { windDirection -= 360.0; } if (windDirection >= 360.0) { windDirection -= 360.0; }
double windSpeed = std::hypot(isobaricLayer.windU, isobaricLayer.windV); double windSpeed = std::hypot(isobaricLayer.windU, isobaricLayer.windV);
CWindLayer windLayer(level, CAngle(windDirection, CAngleUnit::deg()), CSpeed(windSpeed, CSpeedUnit::m_s()), {}); CWindLayer windLayer(level, CAngle(windDirection, CAngleUnit::deg()), CSpeed(windSpeed, CSpeedUnit::m_s()), {});
windLayers.insert(windLayer); windLayers.push_back(windLayer);
} }
CCloudLayerList cloudLayers; CCloudLayerList cloudLayers;
@@ -307,7 +307,7 @@ namespace BlackWxPlugin
// Multiply with 3600 to convert to mm/h // Multiply with 3600 to convert to mm/h
cloudLayer.setPrecipitationRate(gfsGridPoint.surfacePrecipitationRate * 3600.0); cloudLayer.setPrecipitationRate(gfsGridPoint.surfacePrecipitationRate * 3600.0);
cloudLayer.setClouds(CCloudLayer::CloudsUnknown); cloudLayer.setClouds(CCloudLayer::CloudsUnknown);
cloudLayers.insert(cloudLayer); cloudLayers.push_back(cloudLayer);
} }
auto surfacePressure = PhysicalQuantities::CPressure { gfsGridPoint.surfacePressure, PhysicalQuantities::CPressureUnit::Pa() }; auto surfacePressure = PhysicalQuantities::CPressure { gfsGridPoint.surfacePressure, PhysicalQuantities::CPressureUnit::Pa() };
@@ -315,8 +315,8 @@ namespace BlackWxPlugin
CLatitude latitude(gfsGridPoint.latitude, CAngleUnit::deg()); CLatitude latitude(gfsGridPoint.latitude, CAngleUnit::deg());
CLongitude longitude(gfsGridPoint.longitude, CAngleUnit::deg()); CLongitude longitude(gfsGridPoint.longitude, CAngleUnit::deg());
auto position = CCoordinateGeodetic { latitude, longitude, {0} }; auto position = CCoordinateGeodetic { latitude, longitude, {0} };
BlackMisc::Weather::CGridPoint gridPoint({}, position, cloudLayers, temperatureLayers, {}, windLayers, surfacePressure); CGridPoint gridPoint({}, position, cloudLayers, temperatureLayers, {}, windLayers, surfacePressure);
m_weatherGrid.insert(gridPoint); m_weatherGrid.push_back(gridPoint);
} }
} }