Belle II Software  release-05-01-25
GeoCOILCreator.h
1 /**************************************************************************
2  * BASF2 (Belle Analysis Framework 2) *
3  * Copyright(C) 2010 - Belle II Collaboration *
4  * *
5  * Author: The Belle II Collaboration *
6  * Contributors: *
7  * *
8  * This software is provided "as is" without any warranty. *
9  **************************************************************************/
10 
11 #ifndef GEOCOILCREATOR_H
12 #define GEOCOILCREATOR_H
13 
14 #include <geometry/CreatorBase.h>
15 #include <framework/gearbox/GearDir.h>
16 
17 #include <framework/database/IntervalOfValidity.h>
18 
19 #include <structure/dbobjects/COILGeometryPar.h>
20 
21 #include <string>
22 #include <vector>
23 
24 class G4LogicalVolume;
25 class G4VisAttributes;
26 //class G4Polycone
27 
28 namespace Belle2 {
34  namespace coil {
35 
37 
41 
42  public:
43 
46 
48  virtual ~GeoCOILCreator();
49 
50 
52 
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& paramaters, G4LogicalVolume& topVolume, geometry::GeometryTypes);
84 
86  std::vector<G4VisAttributes*> m_VisAttributes;
87 
88  };
89  }
91 }
92 
93 #endif /* GEOCOILCREATOR_H */
Belle2::IntervalOfValidity
A class that describes the interval of experiments/runs for which an object in the database is valid.
Definition: IntervalOfValidity.h:35
Belle2::coil::GeoCOILCreator::createPayloads
virtual void createPayloads(const GearDir &content, const IntervalOfValidity &iov) override
Create the configuration objects and save them in the Database.
Definition: GeoCOILCreator.cc:90
Belle2::coil::GeoCOILCreator::createFromDB
virtual void createFromDB(const std::string &name, G4LogicalVolume &topVolume, geometry::GeometryTypes type) override
Create the geometry from the Database.
Definition: GeoCOILCreator.cc:98
Belle2::COILGeometryPar
The Class for COIL geometry parameters.
Definition: COILGeometryPar.h:34
Belle2::coil::GeoCOILCreator::GeoCOILCreator
GeoCOILCreator()
Constructor of the GeoCOILCreator class.
Definition: GeoCOILCreator.cc:69
Belle2::coil::GeoCOILCreator::createGeometry
virtual void createGeometry(const COILGeometryPar &paramaters, G4LogicalVolume &topVolume, geometry::GeometryTypes)
Creates the ROOT Objects for the coil geometry.
Definition: GeoCOILCreator.cc:152
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::coil::GeoCOILCreator::create
virtual void create(const GearDir &content, G4LogicalVolume &topVolume, geometry::GeometryTypes type) override
Creates the Geant4 objects for the structure geometry from Gearbox.
Definition: GeoCOILCreator.cc:83
Belle2::GearDir
GearDir is the basic class used for accessing the parameter store.
Definition: GearDir.h:41
Belle2::coil::GeoCOILCreator
The GeoCoilCreator class.
Definition: GeoCOILCreator.h:40
Belle2::coil::GeoCOILCreator::readConfiguration
COILGeometryPar readConfiguration(const GearDir &param)
Creates a parameter object from the Gearbox XML parameters.
Definition: GeoCOILCreator.cc:110
Belle2::geometry::CreatorBase
Pure virtual base class for all geometry creators.
Definition: CreatorBase.h:31
Belle2::coil::GeoCOILCreator::~GeoCOILCreator
virtual ~GeoCOILCreator()
The destructor of the GeoCOILCreator class.
Definition: GeoCOILCreator.cc:76
Belle2::coil::GeoCOILCreator::m_VisAttributes
std::vector< G4VisAttributes * > m_VisAttributes
Vector of pointers to G4VisAttributes.
Definition: GeoCOILCreator.h:86
Belle2::geometry::GeometryTypes
GeometryTypes
Flag indiciating the type of geometry to be used.
Definition: GeometryManager.h:39