|
ATLAS Offline Software
|
#include <PixelDetectorTool.h>
|
bool | m_services {true} |
|
bool | m_servicesOnLadder {true} |
|
std::string | m_detectorName {"PixelDetector"} |
|
ServiceHandle< IIBLParameterSvc > | m_IBLParameterSvc {this,"IBLParameterSvc","IBLParameterSvc",""} |
|
bool | m_dc1Geometry {false} |
|
bool | m_alignable {true} |
|
bool | m_tweakIBLDist {true} |
|
bool | m_initialLayout {false} |
|
bool | m_devVersion {false} |
|
bool | m_buildDBM {false} |
|
bool | m_useDynamicAlignFolders {false} |
|
ToolHandle< IGeoSubDetTool > | m_bcmTool {this,"BCM_Tool","",""} |
|
ToolHandle< IGeoSubDetTool > | m_blmTool {this,"BLM_Tool","",""} |
|
PublicToolHandle< IInDetServMatBuilderTool > | m_serviceBuilderTool {this,"ServiceBuilderTool","",""} |
|
ServiceHandle< IGeometryDBSvc > | m_geometryDBSvc {this,"GeometryDBSvc","InDetGeometryDBSvc",""} |
|
const InDetDD::PixelDetectorManager * | m_manager {nullptr} |
|
std::string | m_overrideVersionName |
|
PixelGeoModelAthenaComps * | m_athenaComps {} |
|
Definition at line 25 of file src/PixelDetectorTool.h.
◆ PixelDetectorTool()
PixelDetectorTool::PixelDetectorTool |
( |
const std::string & |
type, |
|
|
const std::string & |
name, |
|
|
const IInterface * |
parent |
|
) |
| |
◆ ~PixelDetectorTool()
PixelDetectorTool::~PixelDetectorTool |
( |
| ) |
|
|
finaloverridevirtual |
◆ align()
◆ ATLAS_NOT_THREAD_SAFE()
virtual StatusCode registerCallback PixelDetectorTool::ATLAS_NOT_THREAD_SAFE |
( |
| ) |
|
|
finaloverridevirtual |
◆ clear()
StatusCode PixelDetectorTool::clear |
( |
| ) |
|
|
finaloverridevirtual |
◆ create()
StatusCode PixelDetectorTool::create |
( |
| ) |
|
|
finaloverridevirtual |
Create the Detector Node corresponding to this tool.
Definition at line 70 of file src/PixelDetectorTool.cxx.
86 GeoModelIO::ReadGeoModel* sqliteReader = geoDbTagSvc->getSqliteReader();
88 std::string detectorKey{
""};
89 std::string detectorNode{
""};
92 detectorKey = decodeVersion.
tag();
93 detectorNode = decodeVersion.node();
94 if(decodeVersion.custom()) {
95 ATH_MSG_WARNING(
"PixelDetectorTool: Detector Information coming from a custom configuration!!" );
99 IRDBRecordset_ptr switchSet = rdbAccessSvc->getRecordsetPtr(
"PixelSwitches", detectorKey, detectorNode);
100 const IRDBRecord *switchTable = (*switchSet)[0];
102 std::string versionName;
103 std::string descrName=
"noDescr";
108 versionName = switchTable->
getString(
"VERSIONNAME");
111 descrName = switchTable->
getString(
"DESCRIPTION");
129 const PixelID * idHelper =
nullptr;
181 if (versionName ==
"SLHC") {
182 ATH_MSG_ERROR(
"Service builder tool not specified. Some services will not be built" );
191 ATH_MSG_INFO(
"Building the geometry from the SQLite file");
201 if (versionName ==
"IBL") switches.
setIBL();
204 thePixelFactory.create(world);
205 m_manager=thePixelFactory.getDetectorManager();
209 ATH_MSG_INFO(
"Building Pixel Detector with Version Tag: " << detectorKey
210 <<
" at Node: " << detectorNode);
212 ATH_MSG_INFO(
"Building the geometry in the standard way");
215 std::string pixelVersionTag = rdbAccessSvc->getChildTag(
"Pixel", detectorKey, detectorNode);
220 if (pixelVersionTag.empty()) {
221 ATH_MSG_INFO(
"No Pixel Version. Pixel Detector will not be built." );
222 return StatusCode::SUCCESS;
228 ATH_MSG_DEBUG(
"PixelDetectorTool: Detector Information coming from the database and job options IGNORED." );
229 ATH_MSG_DEBUG(
"Keys for Pixel Switches are " << detectorKey <<
" " << detectorNode );
231 if (versionName.empty()) {
242 ATH_MSG_INFO(
"Overriding version name: " << versionName );
260 if (versionName ==
"IBL") switches.
setIBL();
264 if(versionName ==
"DC1" || versionName ==
"DC2") {
267 thePixel.create(world);
268 m_manager = thePixel.getDetectorManager();
270 else if (versionName ==
"SR1") {
273 thePixel.create(world);
274 m_manager = thePixel.getDetectorManager();
279 if(descrName.compare(
"TrackingGeometry")!=0) {
280 thePixel.create(world);
283 ATH_MSG_INFO(
"Pixel - TrackingGeometry tag - no geometry built" );
285 m_manager = thePixel.getDetectorManager();
292 thePixel.create(world);
293 m_manager = thePixel.getDetectorManager();
306 return StatusCode::SUCCESS;
◆ initialize()
StatusCode PixelDetectorTool::initialize |
( |
| ) |
|
|
finaloverridevirtual |
◆ manager() [1/2]
GeoVDetectorManager * GeoModelTool::manager |
( |
| ) |
|
|
virtualinherited |
The Detector Node corresponding to this tool.
Definition at line 21 of file GeoModelTool.cxx.
◆ manager() [2/2]
const GeoVDetectorManager * GeoModelTool::manager |
( |
| ) |
const |
|
virtualinherited |
◆ m_alignable
bool PixelDetectorTool::m_alignable {true} |
|
private |
◆ m_athenaComps
◆ m_bcmTool
ToolHandle< IGeoSubDetTool > PixelDetectorTool::m_bcmTool {this,"BCM_Tool","",""} |
|
private |
◆ m_blmTool
ToolHandle< IGeoSubDetTool > PixelDetectorTool::m_blmTool {this,"BLM_Tool","",""} |
|
private |
◆ m_buildDBM
bool PixelDetectorTool::m_buildDBM {false} |
|
private |
◆ m_dc1Geometry
bool PixelDetectorTool::m_dc1Geometry {false} |
|
private |
◆ m_detector
GeoVDetectorManager* GeoModelTool::m_detector |
|
protectedinherited |
◆ m_detectorName
std::string PixelDetectorTool::m_detectorName {"PixelDetector"} |
|
private |
◆ m_devVersion
bool PixelDetectorTool::m_devVersion {false} |
|
private |
◆ m_geometryDBSvc
◆ m_IBLParameterSvc
◆ m_initialLayout
bool PixelDetectorTool::m_initialLayout {false} |
|
private |
◆ m_manager
◆ m_overrideVersionName
std::string PixelDetectorTool::m_overrideVersionName |
|
private |
◆ m_serviceBuilderTool
◆ m_services
bool PixelDetectorTool::m_services {true} |
|
private |
◆ m_servicesOnLadder
bool PixelDetectorTool::m_servicesOnLadder {true} |
|
private |
◆ m_tweakIBLDist
bool PixelDetectorTool::m_tweakIBLDist {true} |
|
private |
◆ m_useDynamicAlignFolders
bool PixelDetectorTool::m_useDynamicAlignFolders {false} |
|
private |
The documentation for this class was generated from the following files:
virtual int getInt(const std::string &fieldName) const =0
Get int field value.
def retrieve(aClass, aKey=None)
GeoPhysVol * getPhysVol()
Destructor.
virtual const std::string & getString(const std::string &fieldName) const =0
Get string field value.
void setIdHelper(const PixelID *idHelper)
void setGeoDbTagSvc(IGeoDbTagSvc *)
void setDetStore(StoreGateSvc *)
void setDBM(bool flag=false)
This is a helper class to query the version tags from GeoModelSvc and determine the appropriate tag a...
Default, invalid implementation of ClassID_traits.
const std::string & tag() const
Return version tag.
void setRDBAccessSvc(IRDBAccessSvc *)
std::shared_ptr< IRDBRecordset > IRDBRecordset_ptr
void setInitialLayout(bool flag)
void setServices(bool flag)
void setIBL(bool flag=true)
void setServicesOnLadder(bool flag)
StatusCode align(IOVSVC_CALLBACK_ARGS) const
void setBCM(IGeoSubDetTool *bcmTool)
void setServiceBuilderTool(IInDetServMatBuilderTool *serviceBuilderTool)
void addManager(const GeoVDetectorManager *)
void setDynamicAlignFolders(const bool useDynAlignFolders)
Class to hold various Athena components.
#define ATH_MSG_WARNING(x)
virtual bool isFieldNull(const std::string &fieldName) const =0
Check if the field value is NULL.
IRDBRecord is one record in the IRDBRecordset object.
void setGeometryDBSvc(IGeometryDBSvc *)
void setBLM(IGeoSubDetTool *blmTool)
void setAlignable(bool flag)
void setDC1Geometry(bool flag)