Belle II Software development
GeoCOILCreator.h
1/**************************************************************************
2 * basf2 (Belle II Analysis Software Framework) *
3 * Author: The Belle II Collaboration *
4 * *
5 * See git log for contributors and copyright holders. *
6 * This file is licensed under LGPL-3.0, see LICENSE.md. *
7 **************************************************************************/
8
9#ifndef GEOCOILCREATOR_H
10#define GEOCOILCREATOR_H
11
12#include <geometry/CreatorBase.h>
13#include <framework/gearbox/GearDir.h>
14
15#include <framework/database/IntervalOfValidity.h>
16
17#include <structure/dbobjects/COILGeometryPar.h>
18
19#include <string>
20#include <vector>
21
22class G4LogicalVolume;
23class G4VisAttributes;
24//class G4Polycone
25
26namespace Belle2 {
32 namespace coil {
33
35
39
40 public:
41
44
46 virtual ~GeoCOILCreator();
47
48
50
56 virtual void create(const GearDir& content, G4LogicalVolume& topVolume, geometry::GeometryTypes type) override;
57
60 virtual void createPayloads(const GearDir& content, const IntervalOfValidity& iov) override;
61
63 virtual void createFromDB(const std::string& name, G4LogicalVolume& topVolume, geometry::GeometryTypes type) override;
64
65
66 protected:
67
68 private:
69
71
76
77
79
83 virtual void createGeometry(const COILGeometryPar& parameters, G4LogicalVolume& topVolume, geometry::GeometryTypes);
84
86 std::vector<G4VisAttributes*> m_VisAttributes;
87
88 };
89 }
91}
92
93#endif /* GEOCOILCREATOR_H */
The Class for COIL geometry parameters.
GearDir is the basic class used for accessing the parameter store.
Definition: GearDir.h:31
A class that describes the interval of experiments/runs for which an object in the database is valid.
The GeoCoilCreator class.
virtual void createFromDB(const std::string &name, G4LogicalVolume &topVolume, geometry::GeometryTypes type) override
Create the geometry from the Database.
std::vector< G4VisAttributes * > m_VisAttributes
Vector of pointers to G4VisAttributes.
COILGeometryPar readConfiguration(const GearDir &param)
Creates a parameter object from the Gearbox XML parameters.
virtual void createPayloads(const GearDir &content, const IntervalOfValidity &iov) override
Create the configuration objects and save them in the Database.
GeoCOILCreator()
Constructor of the GeoCOILCreator class.
virtual ~GeoCOILCreator()
The destructor of the GeoCOILCreator class.
virtual void createGeometry(const COILGeometryPar &parameters, G4LogicalVolume &topVolume, geometry::GeometryTypes)
Creates the ROOT Objects for the coil geometry.
virtual void create(const GearDir &content, G4LogicalVolume &topVolume, geometry::GeometryTypes type) override
Creates the Geant4 objects for the structure geometry from Gearbox.
Pure virtual base class for all geometry creators.
Definition: CreatorBase.h:28
GeometryTypes
Flag indiciating the type of geometry to be used.
Abstract base class for different kinds of events.