From 221951fe7cca1fc9b2343bdbc78b450f7f892ecb 2017-08-21 13:15:49 From: Alexandre Leroux Date: 2017-08-21 13:15:49 Subject: [PATCH] Uses std::shared_ptr --- diff --git a/gui/include/Visualization/VisualizationGraphHelper.h b/gui/include/Visualization/VisualizationGraphHelper.h index be0b95d..33eee26 100644 --- a/gui/include/Visualization/VisualizationGraphHelper.h +++ b/gui/include/Visualization/VisualizationGraphHelper.h @@ -32,7 +32,7 @@ struct VisualizationGraphHelper { */ static PlottablesMap create(std::shared_ptr variable, QCustomPlot &plot) noexcept; - static void updateData(PlottablesMap &plottables, IDataSeries *dataSeries, + static void updateData(PlottablesMap &plottables, std::shared_ptr dataSeries, const SqpRange &dateTime); }; diff --git a/gui/src/Visualization/VisualizationGraphHelper.cpp b/gui/src/Visualization/VisualizationGraphHelper.cpp index 022a6a1..1339c16 100644 --- a/gui/src/Visualization/VisualizationGraphHelper.cpp +++ b/gui/src/Visualization/VisualizationGraphHelper.cpp @@ -201,12 +201,12 @@ struct PlottablesHelper : public IPlottablesHelper { }; /// Creates IPlottablesHelper according to a data series -std::unique_ptr createHelper(IDataSeries *dataSeries) noexcept +std::unique_ptr createHelper(std::shared_ptr dataSeries) noexcept { - if (auto scalarSeries = dynamic_cast(dataSeries)) { + if (auto scalarSeries = std::dynamic_pointer_cast(dataSeries)) { return std::make_unique >(*scalarSeries); } - else if (auto vectorSeries = dynamic_cast(dataSeries)) { + else if (auto vectorSeries = std::dynamic_pointer_cast(dataSeries)) { return std::make_unique >(*vectorSeries); } else { @@ -220,7 +220,7 @@ PlottablesMap VisualizationGraphHelper::create(std::shared_ptr variabl QCustomPlot &plot) noexcept { if (variable) { - auto helper = createHelper(variable->dataSeries().get()); + auto helper = createHelper(variable->dataSeries()); auto plottables = helper->create(plot); return plottables; } @@ -231,7 +231,8 @@ PlottablesMap VisualizationGraphHelper::create(std::shared_ptr variabl } } -void VisualizationGraphHelper::updateData(PlottablesMap &plottables, IDataSeries *dataSeries, +void VisualizationGraphHelper::updateData(PlottablesMap &plottables, + std::shared_ptr dataSeries, const SqpRange &dateTime) { auto helper = createHelper(dataSeries); diff --git a/gui/src/Visualization/VisualizationGraphWidget.cpp b/gui/src/Visualization/VisualizationGraphWidget.cpp index 365447b..2245196 100644 --- a/gui/src/Visualization/VisualizationGraphWidget.cpp +++ b/gui/src/Visualization/VisualizationGraphWidget.cpp @@ -297,7 +297,7 @@ void VisualizationGraphWidget::onDataCacheVariableUpdated() qCDebug(LOG_VisualizationGraphWidget()) << "TORM: VisualizationGraphWidget::onDataCacheVariableUpdated E" << dateTime; if (dateTime.contains(variable->range()) || dateTime.intersect(variable->range())) { - VisualizationGraphHelper::updateData(variableEntry.second, variable->dataSeries().get(), + VisualizationGraphHelper::updateData(variableEntry.second, variable->dataSeries(), variable->range()); } } @@ -308,6 +308,6 @@ void VisualizationGraphWidget::onUpdateVarDisplaying(std::shared_ptr v { auto it = impl->m_VariableToPlotMultiMap.find(variable); if (it != impl->m_VariableToPlotMultiMap.end()) { - VisualizationGraphHelper::updateData(it->second, variable->dataSeries().get(), range); + VisualizationGraphHelper::updateData(it->second, variable->dataSeries(), range); } }