#include <ZDC_DetTool.h>
Definition at line 10 of file ZDC_DetTool.h.
◆ ZDC_DetTool()
ZDC_DetTool::ZDC_DetTool |
( |
const std::string & |
type, |
|
|
const std::string & |
name, |
|
|
const IInterface * |
parent |
|
) |
| |
Definition at line 21 of file ZDC_DetTool.cxx.
27 <<
"INSIDE CONSTRUCTOR OF DETTOOL string& type " <<
type <<
endmsg
28 <<
"INSIDE CONSTRUCTOR OF DETTOOL std::string& name " <<
name <<
endmsg;
◆ ~ZDC_DetTool()
ZDC_DetTool::~ZDC_DetTool |
( |
| ) |
|
|
finaloverridevirtual |
◆ align()
|
inlineoverridevirtualinherited |
◆ ATLAS_NOT_THREAD_SAFE()
virtual StatusCode registerCallback GeoModelTool::ATLAS_NOT_THREAD_SAFE |
( |
| ) |
|
|
inlineoverridevirtualinherited |
◆ clear()
virtual StatusCode GeoModelTool::clear |
( |
| ) |
|
|
inlineoverridevirtualinherited |
Reimplemented in ITk::StripDetectorTool, PixelDetectorTool, ITk::PixelDetectorTool, HGTD_DetectorTool, TRT_DetectorTool, MuonDetectorTool, MuonGMR4::MuonDetectorTool, PLRDetectorTool, SCT_DetectorTool, BCMPrimeDetectorTool, TileDetectorTool, HGTD_GMX_DetectorTool, BeamPipeDetectorTool, ForDetEnvelopeTool, LUCID_DetectorTool, LArDetectorToolNV, InDetServMatTool, and CavernInfraDetectorTool.
Definition at line 25 of file GeoModelTool.h.
25 {
return StatusCode::SUCCESS;}
◆ create()
StatusCode ZDC_DetTool::create |
( |
| ) |
|
|
finaloverridevirtual |
Definition at line 42 of file ZDC_DetTool.cxx.
49 if (msgLevel(MSG::ERROR))
msg(MSG::ERROR) <<
" Could not find GeoModelExperiment ATLAS " <<
endmsg;
50 return (StatusCode::FAILURE);
64 std::array<GeoTrf::Transform3D, 2> tanTrf;
65 for (
auto slot : zdcGeo[
"TAN/TAXN"].
items()) {
67 int side = slot.value()[
"side"].get<
int>();
68 int iside =
side == -1 ? 0 : 1;
69 double x = slot.value()[
"x"].get<
double>();
70 double y = slot.value()[
"y"].get<
double>();
71 double z = slot.value()[
"z"].get<
double>();
72 double height = slot.value()[
"height"].get<
double>();
73 double width = slot.value()[
"width"].get<
double>();
74 double depth = slot.value()[
"depth"].get<
double>();
75 std::string
name = slot.value()[
"name"].get<std::string>();
79 theZDCFactory.setTANSlot(iside,
width, height,
depth, tanTrf.at(iside),
name);
85 for (
auto det : zdcGeo[
"Detector"].
items()) {
86 std::unique_ptr<ZDC_ModuleBase> pDet;
88 std::string
name =
det.value()[
"name"].get<std::string>();
89 int side =
det.value()[
"side"].get<
int>();
90 int iside =
side == -1 ? 0 : 1;
91 int module =
det.value()[
"module"].get<
int>();
92 double x =
det.value()[
"x"].get<
double>();
93 double y =
det.value()[
"y"].get<
double>();
94 double z =
det.value()[
"z"].get<
double>();
95 double q =
det.value()[
"q"].get<
double>();
96 double i =
det.value()[
"i"].get<
double>();
97 double j =
det.value()[
"j"].get<
double>();
98 double k =
det.value()[
"k"].get<
double>();
100 if (std::string(
det.key()).
find(
"ZDC") != std::string::npos) {
101 pDet = std::make_unique<ZDC_ZDCModule>(
name,
side,
module,
det.value()[
"type"].get<
int>() );
103 }
else if (std::string(
det.key()).find(
"RPD") != std::string::npos) {
106 }
else if (std::string(
det.key()).find(
"BRAN") != std::string::npos) {
110 if (msgLevel(MSG::ERROR))
msg(MSG::ERROR) <<
"Unknown detector type " <<
det.key() <<
endmsg;
111 return StatusCode::FAILURE;
115 pDet->
setTransform(GeoTrf::Translate3D(
x - tanTrf.at(iside).translation().x(),
y - tanTrf.at(iside).translation().y(),
z - tanTrf.at(iside).translation().z()) *
GeoTrf::Rotation3D(
q,
i, j,
k) );
118 theZDCFactory.addModule(std::move(pDet));
126 theZDCFactory.create(world);
128 catch (
const std::bad_alloc&) {
131 return StatusCode::FAILURE;
135 theExpt->
addManager(theZDCFactory.getDetectorManager());
136 if(
detStore()->record(theZDCFactory.getDetectorManager(),theZDCFactory.getDetectorManager()->getName())==StatusCode::SUCCESS){
137 return StatusCode::SUCCESS;}
143 return StatusCode::FAILURE;
◆ manager() [1/2]
virtual GeoVDetectorManager* GeoModelTool::manager |
( |
| ) |
|
|
inlinevirtualinherited |
◆ manager() [2/2]
virtual const GeoVDetectorManager* GeoModelTool::manager |
( |
| ) |
const |
|
inlinevirtualinherited |
◆ m_detector
GeoVDetectorManager* GeoModelTool::m_detector {nullptr} |
|
protectedinherited |
The documentation for this class was generated from the following files: