a Code for the Combination of Indirect and Direct Constraints on High Energy Physics Models Logo
ModelFactory.h
Go to the documentation of this file.
1/*
2 * Copyright (C) 2014 HEPfit Collaboration
3 *
4 *
5 * For the licensing terms see doc/COPYING.
6 */
7
8
9#ifndef MODELFACTORY_H
10#define MODELFACTORY_H
11
12#include "StandardModel.h"
13#include <functional>
14#include <map>
15
25public:
28 virtual ~ModelFactory(){};
29
30 void addModelToFactory (const std::string name, std::function<StandardModel*() >);
31
32 StandardModel* CreateModel(const std::string& ModelName);
33private:
34 std::map<std::string, std::function<StandardModel* ()> > modelFactory;
35
36};
37
38#endif /* MODELFACTORY_H */
39
std::string ModelName
Definition: Minimal.cpp:17
A class for.
Definition: ModelFactory.h:24
ModelFactory(const ModelFactory &orig)
virtual ~ModelFactory()
Definition: ModelFactory.h:28
std::map< std::string, std::function< StandardModel *()> > modelFactory
Definition: ModelFactory.h:34
void addModelToFactory(const std::string name, std::function< StandardModel *() >)
StandardModel * CreateModel(const std::string &ModelName)
A model class for the Standard Model.