 |
Belle II Software
release-05-01-25
|
11 #ifndef GEOCDCCREATOR_H
12 #define GEOCDCCREATOR_H
14 #include <geometry/CreatorBase.h>
16 #include <framework/gearbox/GearDir.h>
17 #include <framework/logging/Logger.h>
18 #include <framework/database/DBObjPtr.h>
19 #include <framework/database/IntervalOfValidity.h>
20 #include <framework/database/DBImportObjPtr.h>
22 #include <cdc/simulation/CDCSensitiveDetector.h>
23 #include <cdc/dbobjects/CDCGeometry.h>
25 class G4LogicalVolume;
26 class G4VPhysicalVolume;
27 class G4VisAttributes;
36 class BkgSensitiveDetector;
71 B2FATAL(
"No configuration for " << name <<
" found.");
120 void createCone(
const double rmin1,
const double rmax1,
121 const double rmin2,
const double rmax2,
122 const double thick,
const double posz,
123 const int id, G4Material* med,
const std::string& name);
127 void createBox(
const double length,
const double height,
128 const double thick,
const double x,
129 const double y,
const double z,
130 const int id, G4Material* med,
131 const std::string& name);
135 void createTube(
const double rmin,
const double rmax,
136 const double thick,
const double posZ,
137 const int id, G4Material* med,
138 const std::string& name);
142 void createTorus(
const double rmin1,
const double rmax1,
143 const double thick,
const double posZ,
144 const int id, G4Material* med,
145 const std::string& name);
150 void createTube2(
const double rmin,
const double rmax,
151 const double phis,
const double phie,
152 const double thick,
const double posZ,
153 const int id, G4Material* med,
154 const std::string& name);
165 cdcGeometry.
read(param);
A class that describes the interval of experiments/runs for which an object in the database is valid.
void createCone(const double rmin1, const double rmax1, const double rmin2, const double rmax2, const double thick, const double posz, const int id, G4Material *med, const std::string &name)
Create G4Cone.
std::vector< G4VisAttributes * > m_VisAttributes
Vector of pointers to G4VisAttributes.
void createGeometry(const CDCGeometry ¶meters, G4LogicalVolume &topVolume, geometry::GeometryTypes type)
Create G4 geometry of CDC.
void createCovers(const GearDir &content)
Create CDC covers from gear box.
The Class for CDC Sensitive Detector.
CDCSensitiveDetector * m_sensitive
Sensitive detector.
BkgSensitiveDetector * m_bkgsensitive
Sensitive detector for background studies.
The Class for BeamBackground Sensitive Detector.
void createBox(const double length, const double height, const double thick, const double x, const double y, const double z, const int id, G4Material *med, const std::string &name)
Create G4Box.
void construct(Args &&... params)
Construct an object of type T in this DBImportObjPtr using the provided constructor arguments.
bool import(const IntervalOfValidity &iov)
Import the object to database.
G4LogicalVolume * logical_cdc
CDC G4 logical volume.
virtual void createPayloads(const GearDir &content, const IntervalOfValidity &iov) override
Create payloads.
void createNeutronShields(const GearDir &content)
Create neutron shield from gearbox.
void createMapper(G4LogicalVolume &topVolume)
Create the B-field mapper geometry (tentative function)
Class for accessing objects in the database.
GeoCDCCreator()
Constructor of the GeoCDCCreator class.
The Class for CDC geometry.
void createTorus(const double rmin1, const double rmax1, const double thick, const double posZ, const int id, G4Material *med, const std::string &name)
Create G4Torus.
~GeoCDCCreator()
The destructor of the GeoCDCCreator class.
Abstract base class for different kinds of events.
void createCover2s(const GearDir &content)
Create CDC cover2s from gear box.
std::vector< G4UserLimits * > m_userLimits
Vector of pointers to G4UserLimits.
GearDir is the basic class used for accessing the parameter store.
Class for importing a single object to the database.
G4VPhysicalVolume * physical_cdc
CDC G4 physical volume.
virtual void createFromDB(const std::string &name, G4LogicalVolume &topVolume, geometry::GeometryTypes type) override
Create geometry from DB.
CDCGeometry createConfiguration(const GearDir ¶m)
Create DB object of CDC geometry from gearbox.
void createTube(const double rmin, const double rmax, const double thick, const double posZ, const int id, G4Material *med, const std::string &name)
Create G4Tube.
Pure virtual base class for all geometry creators.
void createTube2(const double rmin, const double rmax, const double phis, const double phie, const double thick, const double posZ, const int id, G4Material *med, const std::string &name)
Create G4Tube2.
void read(const GearDir &)
Get geometry parameters from Gearbox.
virtual void create(const GearDir &content, G4LogicalVolume &topVolume, geometry::GeometryTypes type) override
Creates the ROOT Objects for the CDC geometry.
GeometryTypes
Flag indiciating the type of geometry to be used.