#include <TopLevelPlacements.h>
Definition at line 17 of file TopLevelPlacements.h.
◆ TopLevelPlacements()
◆ ~TopLevelPlacements()
TopLevelPlacements::~TopLevelPlacements |
( |
| ) |
|
Definition at line 20 of file TopLevelPlacements.cxx.
21 std::map<std::string, Part*>::const_iterator iter;
22 for (iter =
m_parts.begin(); iter !=
m_parts.end(); ++iter)
delete iter->second;
◆ fillPlacements()
Definition at line 43 of file TopLevelPlacements.cxx.
44 if (topLevelTable.get() ==
nullptr) {
49 int numParts = topLevelTable->size();
50 for (
int i = 0;
i < numParts;
i++) {
◆ getPart()
◆ partTransform()
GeoTrf::Transform3D TopLevelPlacements::partTransform |
( |
const IRDBRecord * |
record | ) |
const |
|
private |
Definition at line 63 of file TopLevelPlacements.cxx.
70 int rotOrder = record->
getInt(
"ROTORDER");
76 if (rotX == 0 && rotY == 0 && rotZ == 0) {
85 int ixyz1 = rotOrder / 100 - 1;
86 int ixyz2 = (rotOrder % 100) / 10 - 1;
87 int ixyz3 = (rotOrder % 10) - 1;
89 if (ixyz1 < 0 || ixyz1 > 2 ||
90 ixyz2 < 0 || ixyz2 > 2 ||
91 ixyz3 < 0 || ixyz3 > 2) {
92 std::cout <<
"ERROR: Invalid rotation order:" << rotOrder << std::endl;
100 nullptr,
nullptr,
nullptr
102 if (rotX != 0) xformList[0] =
new GeoTrf::RotateX3D(rotX);
103 if (rotY != 0) xformList[1] =
new GeoTrf::RotateY3D(rotY);
104 if (rotZ != 0) xformList[2] =
new GeoTrf::RotateZ3D(rotZ);
◆ present()
bool TopLevelPlacements::present |
( |
const std::string & |
partName | ) |
const |
◆ transform()
const GeoTrf::Transform3D & TopLevelPlacements::transform |
( |
const std::string & |
partName | ) |
const |
◆ m_noTopLevelTable
bool TopLevelPlacements::m_noTopLevelTable |
|
private |
◆ m_parts
std::map<std::string, Part *> TopLevelPlacements::m_parts |
|
private |
◆ s_identityTransform
const GeoTrf::Transform3D TopLevelPlacements::s_identityTransform = GeoTrf::Transform3D::Identity() |
|
staticprivate |
The documentation for this class was generated from the following files: