Skip to content
Snippets Groups Projects
Commit cc2c1990 authored by Wuttke, Joachim's avatar Wuttke, Joachim
Browse files

rm name2registry

parent 92fb1700
No related branches found
No related tags found
1 merge request!328Simplify how GUI accesses standard sample builders
......@@ -16,38 +16,19 @@
#include "GUI/Models/GUIObjectBuilder.h"
#include "Sample/Multilayer/MultiLayer.h"
#include "Sample/StandardSamples/SampleBuilderFactory.h"
#include <QMap>
#include <memory>
namespace {
QMap<QString, QString> name2registry = {
{"CylindersAndPrismsBuilder", "CylindersAndPrismsBuilder"},
{"RadialParaCrystalBuilder", "RadialParaCrystalBuilder"},
{"HexParaCrystalBuilder", "HexParaCrystalBuilder"},
{"CoreShellParticleBuilder", "CoreShellParticleBuilder"},
{"MultiLayerWithRoughnessBuilder", "MultiLayerWithRoughnessBuilder"},
{"SquareLattice2DBuilder", "SquareLattice2DBuilder"},
{"RotatedPyramidsBuilder", "RotatedPyramidsBuilder"},
{"ParticleCompositionBuilder", "ParticleCompositionBuilder"},
{"MesoCrystalBuilder", "MesoCrystalBuilder"},
};
} // namespace
bool GUIExamplesFactory::isValidExampleName(const QString& name)
{
return name2registry.contains(name);
return SampleBuilderFactory().contains(name.toStdString());
}
//! Populate sample model with
SessionItem* GUIExamplesFactory::createSampleItems(const QString& name, SampleModel* sampleModel,
MaterialModel* materialModel)
{
QString exampleName = name2registry[name];
SampleBuilderFactory factory;
const std::unique_ptr<MultiLayer> sample(factory.createSampleByName(exampleName.toStdString()));
const std::unique_ptr<MultiLayer> sample(
SampleBuilderFactory().createSampleByName(name.toStdString()));
return GUI::Model::ObjectBuilder::populateSampleModel(sampleModel, materialModel, *sample.get(),
name);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment