Constructs a tracker layer according to entry in python config (incl interaction models). More...
#include <SimplifiedGeometryFactory.h>
Public Types | |
enum | LayerType { BARREL, POSFWD, NEGFWD } |
Each layer is either a barrel layer, or a forward layer (either at ppositive or negative Z). More... | |
Public Member Functions | |
std::unique_ptr < BarrelSimplifiedGeometry > | createBarrelSimplifiedGeometry (const edm::ParameterSet &cfg) const |
Helper method for createSimplifiedGeometry(..) to create a barrel layer (BarrelSimplifiedGeometry). More... | |
std::unique_ptr < ForwardSimplifiedGeometry > | createForwardSimplifiedGeometry (LayerType type, const edm::ParameterSet &cfg) const |
Helper method for createSimplifiedGeometry(..) to create a forward layer (ForwardSimplifiedGeometry). More... | |
std::unique_ptr < SimplifiedGeometry > | createSimplifiedGeometry (LayerType type, const edm::ParameterSet &cfg) const |
Main method of this class. Creates a new detector layer (SimplifiedGeometry). More... | |
SimplifiedGeometryFactory (const GeometricSearchTracker *geometricSearchTracker, const MagneticField &magneticField, const std::map< std::string, fastsim::InteractionModel * > &interactionModelMap, double magneticFieldHistMaxR, double magneticFieldHistMaxZ) | |
Constructor. More... | |
Private Member Functions | |
const DetLayer * | getDetLayer (const std::string &detLayerName, const GeometricSearchTracker &geometricSearchTracker) const |
Method returns a pointer to a DetLayer according to the string that was passed. More... | |
Private Attributes | |
std::map< std::string, const std::vector< BarrelDetLayer const * > * > | barrelDetLayersMap_ |
A map of strings and pointers to detLayers. More... | |
std::map< std::string, const std::vector< ForwardDetLayer const * > * > | forwardDetLayersMap_ |
A map of strings and pointers to detLayers. More... | |
const GeometricSearchTracker *const | geometricSearchTracker_ |
The full tracker geometry. More... | |
const std::map< std::string, fastsim::InteractionModel * > * | interactionModelMap_ |
Map of interaction models. More... | |
const MagneticField *const | magneticField_ |
The full magnetic field. More... | |
const double | magneticFieldHistMaxR_ |
Limit in R for histogram of magnetic field. More... | |
const double | magneticFieldHistMaxZ_ |
Limit in +-Z for histogram of magnetic field. More... | |
Constructs a tracker layer according to entry in python config (incl interaction models).
Also creates links to DetLayer (if active layer) and stores strength of magnetic field along the layer. If some parameters are not stored in the config file, tries to get them from the full detector geometry (GeometricSearchTracker). This is however only possible for active layers.
Definition at line 40 of file SimplifiedGeometryFactory.h.
Each layer is either a barrel layer, or a forward layer (either at ppositive or negative Z).
Enumerator | |
---|---|
BARREL | |
POSFWD | |
NEGFWD |
Definition at line 57 of file SimplifiedGeometryFactory.h.
fastsim::SimplifiedGeometryFactory::SimplifiedGeometryFactory | ( | const GeometricSearchTracker * | geometricSearchTracker, |
const MagneticField & | magneticField, | ||
const std::map< std::string, fastsim::InteractionModel * > & | interactionModelMap, | ||
double | magneticFieldHistMaxR, | ||
double | magneticFieldHistMaxZ | ||
) |
Constructor.
geometricSearchTracker | The full tracker geometry (needed for links to active detLayers). |
magneticField | The full magnetic field. |
interactionModelMap | Map of interaction models that should be assigned for that layer. |
magneticFieldHistMaxR | Max Radius for initialization of magnetic field histogram (TH1, limit of axis). |
magneticFieldHistMaxZ | Max Z for initialization of magnetic field histogram (TH1, limit of axis). |
Definition at line 14 of file SimplifiedGeometryFactory.cc.
References barrelDetLayersMap_, forwardDetLayersMap_, geometricSearchTracker_, GeometricSearchTracker::negPixelForwardLayers(), GeometricSearchTracker::negTecLayers(), GeometricSearchTracker::negTidLayers(), GeometricSearchTracker::pixelBarrelLayers(), GeometricSearchTracker::posPixelForwardLayers(), GeometricSearchTracker::posTecLayers(), GeometricSearchTracker::posTidLayers(), GeometricSearchTracker::tibLayers(), and GeometricSearchTracker::tobLayers().
std::unique_ptr< fastsim::BarrelSimplifiedGeometry > fastsim::SimplifiedGeometryFactory::createBarrelSimplifiedGeometry | ( | const edm::ParameterSet & | cfg | ) | const |
Helper method for createSimplifiedGeometry(..) to create a barrel layer (BarrelSimplifiedGeometry).
Definition at line 39 of file SimplifiedGeometryFactory.cc.
References BARREL, and phase1PixelTopology::layer.
Referenced by fastsim::Geometry::update().
std::unique_ptr< fastsim::ForwardSimplifiedGeometry > fastsim::SimplifiedGeometryFactory::createForwardSimplifiedGeometry | ( | LayerType | type, |
const edm::ParameterSet & | cfg | ||
) | const |
Helper method for createSimplifiedGeometry(..) to create a forward layer (ForwardSimplifiedGeometry).
type | Either POSFWD or NEGFWD. |
Definition at line 46 of file SimplifiedGeometryFactory.cc.
References Exception, and phase1PixelTopology::layer.
Referenced by fastsim::Geometry::update().
std::unique_ptr< fastsim::SimplifiedGeometry > fastsim::SimplifiedGeometryFactory::createSimplifiedGeometry | ( | LayerType | type, |
const edm::ParameterSet & | cfg | ||
) | const |
Main method of this class. Creates a new detector layer (SimplifiedGeometry).
Reads the config file, does all the initialization etc. and creates either a forward or a barrel layer (depends on LayerType type).
type | Either BARREL, POSFWD or NEGFWD. |
Definition at line 57 of file SimplifiedGeometryFactory.cc.
References edm::ParameterSet::allToString(), BARREL, fastsim::SimplifiedGeometry::ECAL, Exception, edm::ParameterSet::exists(), getDetLayer(), edm::ParameterSet::getUntrackedParameter(), fastsim::SimplifiedGeometry::HCAL, mps_fire::i, ecaldqm::isForward(), label, phase1PixelTopology::layer, TH2PolyOfflineMaps::limits, point, GeometricSearchDet::position(), position, fastsim::SimplifiedGeometry::PRESHOWER1, fastsim::SimplifiedGeometry::PRESHOWER2, AlCaHLTBitMon_QueryRunRegistry::string, TrackerMaterial_cfi::thickness, fastsim::SimplifiedGeometry::VFCAL, and PV3DBase< T, PVType, FrameType >::z().
|
private |
Method returns a pointer to a DetLayer according to the string that was passed.
A convention for the name of the layer is used. For barrel layers this is "XXX?" where XXX is a part of the tracker and ? is the index of the layer (starting at one). For forward layers one has to add neg/pos in front to distinguish between the disk at -Z and +Z spatial position, so the convention is "xxxXXX?" Valid names: BPix, TIB, TOB, negFPix, posFPix, negTID, posTID, negTEC, posTEC Accordingly, the innermost layer of the barrel pixel detector is "BPix1".
detLayerName | A string following the naming convention. |
Definition at line 222 of file SimplifiedGeometryFactory.cc.
References relativeConstraints::error, Exception, and AlCaHLTBitMon_QueryRunRegistry::string.
|
private |
A map of strings and pointers to detLayers.
Definition at line 102 of file SimplifiedGeometryFactory.h.
Referenced by SimplifiedGeometryFactory().
|
private |
A map of strings and pointers to detLayers.
Definition at line 104 of file SimplifiedGeometryFactory.h.
Referenced by SimplifiedGeometryFactory().
|
private |
The full tracker geometry.
Definition at line 96 of file SimplifiedGeometryFactory.h.
Referenced by SimplifiedGeometryFactory().
|
private |
Map of interaction models.
Definition at line 98 of file SimplifiedGeometryFactory.h.
|
private |
The full magnetic field.
Definition at line 97 of file SimplifiedGeometryFactory.h.
|
private |
Limit in R for histogram of magnetic field.
Definition at line 99 of file SimplifiedGeometryFactory.h.
|
private |
Limit in +-Z for histogram of magnetic field.
Definition at line 100 of file SimplifiedGeometryFactory.h.