 |
Belle II Software
release-05-01-25
|
11 #ifndef GEOMAGNETICFIELD_H
12 #define GEOMAGNETICFIELD_H
14 #include <geometry/CreatorBase.h>
15 #include <framework/dbobjects/MagneticField.h>
17 #include <boost/function.hpp>
38 class GeoMagneticField :
public geometry::CreatorBase {
70 typedef std::map < std::string, boost::function < void (
const GearDir&) > >
CompTypeMap;
A class that describes the interval of experiments/runs for which an object in the database is valid.
CompTypeMap m_componentTypeMap
Maps the name of the component to the function reading the parameters.
void addConstantBField(const GearDir &component, MagneticField &fieldmap)
Add a constant field component to a magnetic field configuration for the DB.
void readBeamlineBField(const GearDir &component)
Reads the 3D Bfield map and parameters near beam pipes and adds the component to the global magnetic ...
std::map< std::string, boost::function< void(const GearDir &) > > CompTypeMap
Typedef for the map connecting the name of the component to the method reading the parameters.
void readConstantBField(const GearDir &component)
Reads the parameters for a homogeneous magnetic field and adds the component to the global magnetic f...
MagneticField createConfiguration(const GearDir &content)
Create a Database configuration from Gearbox parameters.
virtual ~GeoMagneticField()
The destructor of the GeoMagneticField class.
void readQuadBField(const GearDir &component)
Reads the parameters for a quadrupole magnetic field inside beam pipes and adds the component to the ...
virtual void createFromDB(const std::string &, G4LogicalVolume &, geometry::GeometryTypes) override
Nothing to be done when creating from DB, the payload should be found automatically.
Abstract base class for different kinds of events.
GeoMagneticField()
Constructor of the GeoMagneticField class.
GearDir is the basic class used for accessing the parameter store.
virtual void createPayloads(const GearDir &content, const IntervalOfValidity &iov) override
Function to create the geometry database.
void add3dBField(const GearDir &component, MagneticField &fielmap)
Add a 3D field component to a magnetic field configuration for the DB.
void readKlm1BField(const GearDir &component)
Reads the 2D Bfield map and parameters outside of solenoid and adds the component to the global magne...
void readRadialBField(const GearDir &component)
Reads the parameters for a radial magnetic field and adds the component to the global magnetic field.
void read3dBField(const GearDir &component)
Reads the parameters for 3d magnetic field (r,phi,z).
virtual void create(const GearDir &content, G4LogicalVolume &topVolume, geometry::GeometryTypes type) override
Creates the global ROOT objects and prepares everything for other creators.
GeometryTypes
Flag indiciating the type of geometry to be used.