From db6b56fcd78e53efda6fb617cab1aa2e9ee9ecf7 Mon Sep 17 00:00:00 2001 From: "Joachim Wuttke (h)" <j.wuttke@fz-juelich.de> Date: Thu, 9 Sep 2021 09:15:33 +0200 Subject: [PATCH] member variable -> static local --- GUI/Models/GUIExamplesFactory.cpp | 36 +++++++++++++++---------------- GUI/Models/GUIExamplesFactory.h | 6 +----- 2 files changed, 18 insertions(+), 24 deletions(-) diff --git a/GUI/Models/GUIExamplesFactory.cpp b/GUI/Models/GUIExamplesFactory.cpp index ee7e84c13fd..d7160bde22d 100644 --- a/GUI/Models/GUIExamplesFactory.cpp +++ b/GUI/Models/GUIExamplesFactory.cpp @@ -17,36 +17,34 @@ #include "Sample/Multilayer/MultiLayer.h" #include "Sample/StandardSamples/SampleBuilderFactory.h" #include <memory> +#include <QMap> -//! Defines correspondence between example name and real name of simulation from SimulationFactory -QMap<QString, QString> init_NameToRegistry() -{ - QMap<QString, QString> result; - result["example01"] = "CylindersAndPrismsBuilder"; - result["example02"] = "RadialParaCrystalBuilder"; - result["example03"] = "HexParaCrystalBuilder"; - result["example04"] = "CoreShellParticleBuilder"; - result["example05"] = "MultiLayerWithRoughnessBuilder"; - result["example06"] = "SquareLattice2DBuilder"; - result["example07"] = "RotatedPyramidsBuilder"; - result["example09"] = "ParticleCompositionBuilder"; - result["example10"] = "MesoCrystalBuilder"; - - return result; -} +namespace { + +QMap<QString, QString> name2registry = { + {"example01", "CylindersAndPrismsBuilder"}, + {"example02", "RadialParaCrystalBuilder"}, + {"example03", "HexParaCrystalBuilder"}, + {"example04", "CoreShellParticleBuilder"}, + {"example05", "MultiLayerWithRoughnessBuilder"}, + {"example06", "SquareLattice2DBuilder"}, + {"example07", "RotatedPyramidsBuilder"}, + {"example09", "ParticleCompositionBuilder"}, + {"example10", "MesoCrystalBuilder"}, +}; -QMap<QString, QString> GUIExamplesFactory::m_name_to_registry = init_NameToRegistry(); +} // namespace bool GUIExamplesFactory::isValidExampleName(const QString& name) { - return m_name_to_registry.contains(name); + return name2registry.contains(name); } //! Populate sample model with SessionItem* GUIExamplesFactory::createSampleItems(const QString& name, SampleModel* sampleModel, MaterialModel* materialModel) { - QString exampleName = m_name_to_registry[name]; + QString exampleName = name2registry[name]; SampleBuilderFactory factory; const std::unique_ptr<MultiLayer> sample(factory.createSampleByName(exampleName.toStdString())); diff --git a/GUI/Models/GUIExamplesFactory.h b/GUI/Models/GUIExamplesFactory.h index eb1753e8216..46b309cf821 100644 --- a/GUI/Models/GUIExamplesFactory.h +++ b/GUI/Models/GUIExamplesFactory.h @@ -15,7 +15,7 @@ #ifndef BORNAGAIN_GUI_MODELS_GUIEXAMPLESFACTORY_H #define BORNAGAIN_GUI_MODELS_GUIEXAMPLESFACTORY_H -#include <QMap> +#include <QString> class SessionItem; class SampleModel; @@ -28,10 +28,6 @@ public: static SessionItem* createSampleItems(const QString& name, SampleModel* sampleModel, MaterialModel* materialModel); - -private: - static QMap<QString, QString> m_name_to_registry; - //!< correspondence of GUI example name and name from StandardSamples registry }; #endif // BORNAGAIN_GUI_MODELS_GUIEXAMPLESFACTORY_H -- GitLab