GEAR  1.9.0
 All Classes Namespaces Functions Variables Typedefs Enumerations Friends Pages
MaterialMapFactory.h
1 #ifndef GEAR_MATERIALMAPFACTORY_H
2 #define GEAR_MATERIALMAPFACTORY_H 1
3 
4 #include <string>
5 #include <vector>
6 
7 #include "gear/GEAR.h"
8 #include "gear/geartgeo/MaterialMap.h"
9 #include "gear/GearMgr.h"
10 
11 
12 namespace gear {
13 
31 
32  public:
33  MaterialMapFactory(const MaterialMapFactory&) = delete ;
34  MaterialMapFactory& operator=(const MaterialMapFactory&) = delete ;
35 
36 
37  MaterialMapFactory(GearMgr *gearMgr);
39  virtual ~MaterialMapFactory() {
40  ;}
48  MaterialMap* createMaterialMap(double xmin, double xmax, int nxsteps,
49  double ymin, double ymax, int nysteps,
50  double zmin, double zmax, int nzsteps, int coord);
51 
52 
53  protected:
54  GearMgr *_gearMgr = nullptr ;
55  std::map< std::vector<double> , MaterialMap* > _managerMap{};
56  }; // class
57 } // namespace gear
58 #endif /* ifndef GEAR_MATERIALMAPFACTORY_H */
Material map using GearDistanceProperties.
Definition: MaterialMap.h:16
MaterialMap * createMaterialMap(double xmin, double xmax, int nxsteps, double ymin, double ymax, int nysteps, double zmin, double zmax, int nzsteps, int coord)
Creating a material map in memory.
Factory to create material maps using GearDistanceProperties.
virtual ~MaterialMapFactory()
Destructor.
Abstract interface for a manager class that returns the Gear classes for the relevant subdetectors...
Definition: GearMgr.h:36