Loading [MathJax]/extensions/tex2jax.js
 |
ATLAS Offline Software
|
#include <MuonChamberProjectionHelper.h>
|
| MuonChamberProjectionHelper (StoreGateSvc *detectorStore) |
|
| MuonChamberProjectionHelper (IVP1System *sys) |
|
| ~MuonChamberProjectionHelper () |
|
bool | isKnownMDTChamber (const GeoPVConstLink &mdtChamber) |
|
bool | getDistancesToMDTChamberWallsAlongLine (const GeoPVConstLink &mdtChamber, const Amg::Vector3D &point, const Amg::Vector3D &lineDirection, double &distanceToFirstEndPlane, double &distanceToSecondEndPlane, const double &radius=0.0) |
|
bool | projectAndConstrainLineSegmentToMDTChamberEndWalls (const GeoPVConstLink &mdtChamber, const Amg::Vector3D &pointA, const Amg::Vector3D &pointB, Amg::Vector3D &firstEndWall_pointA, Amg::Vector3D &firstEndWall_pointB, Amg::Vector3D &secondEndWall_pointA, Amg::Vector3D &secondEndWall_pointB, bool &outsidechamber) |
|
bool | clipLineSegmentToMDTChamber (const GeoPVConstLink &mdtChamber, Amg::Vector3D &pointA, Amg::Vector3D &pointB, bool &outsidechamber, const double &extradist=0.0) |
|
void | setSystemBasePointer (IVP1System *sys) |
|
void | message (const QString &) const |
|
void | message (const QStringList &, const QString &addtoend="") const |
|
void | message (const QString &addtostart, const QStringList &, const QString &addtoend="") const |
|
void | messageDebug (const QString &) const |
|
void | messageDebug (const QStringList &, const QString &addtoend="") const |
|
void | messageDebug (const QString &addtostart, const QStringList &, const QString &addtoend="") const |
|
void | messageVerbose (const QString &) const |
|
void | messageVerbose (const QStringList &, const QString &addtoend="") const |
|
void | messageVerbose (const QString &addtostart, const QStringList &, const QString &addtoend="") const |
|
IVP1System * | systemBase () const |
|
const QString & | helperClassName () const |
|
◆ MuonChamberProjectionHelper() [1/3]
MuonChamberProjectionHelper::MuonChamberProjectionHelper |
( |
StoreGateSvc * |
detectorStore | ) |
|
◆ MuonChamberProjectionHelper() [2/3]
MuonChamberProjectionHelper::MuonChamberProjectionHelper |
( |
IVP1System * |
sys | ) |
|
◆ ~MuonChamberProjectionHelper()
MuonChamberProjectionHelper::~MuonChamberProjectionHelper |
( |
| ) |
|
◆ MuonChamberProjectionHelper() [3/3]
◆ applyTransformToVector()
Definition at line 143 of file MuonChamberProjectionHelper.cxx.
146 double vx =
v.x(), vy =
v.y(), vz =
v.z();
151 m(0,0)*vx +
m(0,1)*vy +
m(0,2)*vz,
152 m(1,0)*vx +
m(1,1)*vy +
m(1,2)*vz,
153 m(2,0)*vx +
m(2,1)*vy +
m(2,2)*vz);
◆ clipLineSegmentToMDTChamber()
bool MuonChamberProjectionHelper::clipLineSegmentToMDTChamber |
( |
const GeoPVConstLink & |
mdtChamber, |
|
|
Amg::Vector3D & |
pointA, |
|
|
Amg::Vector3D & |
pointB, |
|
|
bool & |
outsidechamber, |
|
|
const double & |
extradist = 0.0 |
|
) |
| |
Definition at line 482 of file MuonChamberProjectionHelper.cxx.
496 if (trdX<=0.0||trdZ<=0.0)
500 itChamberInfo->second.ensureInitGlobalToLocal();
501 Amg::Vector3D A((*(itChamberInfo->second.globalToLocal))*pointA),
B((*(itChamberInfo->second.globalToLocal))*pointB);
502 double ax(
A.x()), az(
A.z()),
bx(
B.x()),
bz(
B.z());
509 double ay(
A.y()),
by(
B.y());
517 outsidechamber =
false;
◆ getDistancesToMDTChamberWallsAlongLine()
bool MuonChamberProjectionHelper::getDistancesToMDTChamberWallsAlongLine |
( |
const GeoPVConstLink & |
mdtChamber, |
|
|
const Amg::Vector3D & |
point, |
|
|
const Amg::Vector3D & |
lineDirection, |
|
|
double & |
distanceToFirstEndPlane, |
|
|
double & |
distanceToSecondEndPlane, |
|
|
const double & |
radius = 0.0 |
|
) |
| |
Definition at line 275 of file MuonChamberProjectionHelper.cxx.
284 const GeoTrd * trd = itChamberInfo->second.trd;
285 double y1(trd->getYHalfLength1()),
y2(trd->getYHalfLength2()),
z(trd->getZHalfLength());
297 if (distanceToFirstEndPlane < 0.0 )
301 if (distanceToSecondEndPlane < 0.0 )
307 double costheta1 = unitdir.dot(
n1.unit());
308 double costheta2 = unitdir.dot(n2.unit());
310 distanceToFirstEndPlane +=
r*sqrt(fabs((1-costheta1*costheta1)/costheta1));
311 distanceToSecondEndPlane +=
r*sqrt(fabs((1-costheta2*costheta2)/costheta2));
◆ helperClassName()
const QString& VP1HelperClassBase::helperClassName |
( |
| ) |
const |
|
inlineinherited |
◆ isKnownMDTChamber()
bool MuonChamberProjectionHelper::isKnownMDTChamber |
( |
const GeoPVConstLink & |
mdtChamber | ) |
|
◆ message() [1/3]
void VP1HelperClassBase::message |
( |
const QString & |
str | ) |
const |
|
inherited |
◆ message() [2/3]
void VP1HelperClassBase::message |
( |
const QString & |
addtostart, |
|
|
const QStringList & |
l, |
|
|
const QString & |
addtoend = "" |
|
) |
| const |
|
inherited |
Definition at line 131 of file VP1HelperClassBase.cxx.
133 if (addtostart.isEmpty()) {
137 if (addtoend.isEmpty()) {
138 for (
const QString&
s :
l)
141 for (
const QString&
s :
l)
◆ message() [3/3]
void VP1HelperClassBase::message |
( |
const QStringList & |
l, |
|
|
const QString & |
addtoend = "" |
|
) |
| const |
|
inherited |
Definition at line 91 of file VP1HelperClassBase.cxx.
93 if (addtoend.isEmpty()) {
94 for (
const QString&
s :
l)
97 for (
const QString&
s :
l)
◆ messageDebug() [1/3]
void VP1HelperClassBase::messageDebug |
( |
const QString & |
str | ) |
const |
|
inherited |
◆ messageDebug() [2/3]
void VP1HelperClassBase::messageDebug |
( |
const QString & |
addtostart, |
|
|
const QStringList & |
l, |
|
|
const QString & |
addtoend = "" |
|
) |
| const |
|
inherited |
Definition at line 147 of file VP1HelperClassBase.cxx.
151 if (addtostart.isEmpty()) {
155 if (addtoend.isEmpty()) {
156 for (
const QString&
s :
l)
159 for (
const QString&
s :
l)
◆ messageDebug() [3/3]
void VP1HelperClassBase::messageDebug |
( |
const QStringList & |
l, |
|
|
const QString & |
addtoend = "" |
|
) |
| const |
|
inherited |
Definition at line 103 of file VP1HelperClassBase.cxx.
107 if (addtoend.isEmpty()) {
108 for (
const QString&
s :
l)
111 for (
const QString&
s :
l)
◆ messageVerbose() [1/3]
void VP1HelperClassBase::messageVerbose |
( |
const QString & |
str | ) |
const |
|
inherited |
◆ messageVerbose() [2/3]
void VP1HelperClassBase::messageVerbose |
( |
const QString & |
addtostart, |
|
|
const QStringList & |
l, |
|
|
const QString & |
addtoend = "" |
|
) |
| const |
|
inherited |
Definition at line 165 of file VP1HelperClassBase.cxx.
169 if (addtostart.isEmpty()) {
173 if (addtoend.isEmpty()) {
174 for (
const QString&
s :
l)
177 for (
const QString&
s :
l)
◆ messageVerbose() [3/3]
void VP1HelperClassBase::messageVerbose |
( |
const QStringList & |
l, |
|
|
const QString & |
addtoend = "" |
|
) |
| const |
|
inherited |
Definition at line 117 of file VP1HelperClassBase.cxx.
121 if (addtoend.isEmpty()) {
122 for (
const QString&
s :
l)
125 for (
const QString&
s :
l)
◆ operator=()
◆ projectAndConstrainLineSegmentToMDTChamberEndWalls()
Definition at line 373 of file MuonChamberProjectionHelper.cxx.
387 itChamberInfo->second.ensureInitGlobalToLocal();
388 Amg::Vector3D A((*(itChamberInfo->second.globalToLocal))*pointA),
B((*(itChamberInfo->second.globalToLocal))*pointB);
389 double ax(
A.x()), az(
A.z()),
bx(
B.x()),
bz(
B.z());
408 Amg::transform(firstEndWall_pointA, itChamberInfo->second.localToGlobal);
409 Amg::transform(secondEndWall_pointA, itChamberInfo->second.localToGlobal);
410 Amg::transform(firstEndWall_pointB, itChamberInfo->second.localToGlobal);
411 Amg::transform(secondEndWall_pointB, itChamberInfo->second.localToGlobal);
413 outsidechamber =
false;
◆ setHelperClassName()
void VP1HelperClassBase::setHelperClassName |
( |
const QString & |
n | ) |
|
|
inlineprotectedinherited |
◆ setSystemBasePointer()
void VP1HelperClassBase::setSystemBasePointer |
( |
IVP1System * |
sys | ) |
|
|
inherited |
◆ str() [1/30]
◆ str() [2/30]
static QString VP1String::str |
( |
const bool |
b | ) |
|
|
inlinestaticinherited |
Definition at line 53 of file VP1String.h.
53 {
return b?
"True":
"False"; }
◆ str() [3/30]
static QString VP1String::str |
( |
const char * |
c | ) |
|
|
inlinestaticinherited |
◆ str() [4/30]
static QString VP1String::str |
( |
const double & |
d | ) |
|
|
inlinestaticinherited |
◆ str() [5/30]
static QString VP1String::str |
( |
const float & |
f | ) |
|
|
inlinestaticinherited |
◆ str() [6/30]
◆ str() [7/30]
QString VP1String::str |
( |
const QColor & |
c | ) |
|
|
staticinherited |
Definition at line 30 of file VP1String.cxx.
32 return c.isValid() ?
c.name() :
"Invalid";
◆ str() [8/30]
template<class T >
static QString VP1String::str |
( |
const QFlags< T > & |
f | ) |
|
|
inlinestaticinherited |
◆ str() [9/30]
template<class T >
static QString VP1String::str |
( |
const QList< T > & |
t | ) |
|
|
inlinestaticinherited |
◆ str() [10/30]
static QString VP1String::str |
( |
const QString & |
s | ) |
|
|
inlinestaticinherited |
◆ str() [11/30]
QString VP1String::str |
( |
const SbColor & |
c | ) |
|
|
staticinherited |
◆ str() [12/30]
QString VP1String::str |
( |
const SbVec2d & |
v | ) |
|
|
staticinherited |
◆ str() [13/30]
QString VP1String::str |
( |
const SbVec2f & |
v | ) |
|
|
staticinherited |
◆ str() [14/30]
QString VP1String::str |
( |
const SbVec2s & |
v | ) |
|
|
staticinherited |
◆ str() [15/30]
QString VP1String::str |
( |
const SbVec3d & |
v | ) |
|
|
staticinherited |
◆ str() [16/30]
QString VP1String::str |
( |
const SbVec3f & |
v | ) |
|
|
staticinherited |
◆ str() [17/30]
QString VP1String::str |
( |
const SbVec3s & |
v | ) |
|
|
staticinherited |
◆ str() [18/30]
QString VP1String::str |
( |
const SbVec4d & |
v | ) |
|
|
staticinherited |
◆ str() [19/30]
QString VP1String::str |
( |
const SbVec4f & |
v | ) |
|
|
staticinherited |
◆ str() [20/30]
template<class T >
static QString VP1String::str |
( |
const T * |
t | ) |
|
|
inlinestaticinherited |
Definition at line 87 of file VP1String.h.
87 {
return str(
static_cast<const void*
>(
t)); }
◆ str() [21/30]
QString VP1String::str |
( |
const void * |
p | ) |
|
|
staticinherited |
Definition at line 48 of file VP1String.cxx.
54 return QString (
s.str().c_str());
◆ str() [22/30]
◆ str() [23/30]
static QString VP1String::str |
( |
int |
n | ) |
|
|
inlinestaticinherited |
◆ str() [24/30]
static QString VP1String::str |
( |
long |
n | ) |
|
|
inlinestaticinherited |
◆ str() [25/30]
static QString VP1String::str |
( |
qlonglong |
n | ) |
|
|
inlinestaticinherited |
◆ str() [26/30]
static QString VP1String::str |
( |
qulonglong |
n | ) |
|
|
inlinestaticinherited |
◆ str() [27/30]
static QString VP1String::str |
( |
short int |
n | ) |
|
|
inlinestaticinherited |
◆ str() [28/30]
static QString VP1String::str |
( |
uint |
n | ) |
|
|
inlinestaticinherited |
◆ str() [29/30]
static QString VP1String::str |
( |
ulong |
n | ) |
|
|
inlinestaticinherited |
◆ str() [30/30]
static QString VP1String::str |
( |
unsigned short int |
n | ) |
|
|
inlinestaticinherited |
◆ systemBase()
IVP1System* VP1HelperClassBase::systemBase |
( |
| ) |
const |
|
inlineinherited |
◆ verbose()
static bool VP1HelperClassBase::verbose |
( |
| ) |
|
|
inlinestaticinherited |
◆ warnUndeletedInstances()
void VP1HelperClassBase::warnUndeletedInstances |
( |
| ) |
|
|
staticinherited |
Definition at line 183 of file VP1HelperClassBase.cxx.
185 if (vp1helperclassbase_instanceMap.empty())
187 std::cout <<
"WARNING: Detected "<<vp1helperclassbase_instanceMap.size()<<
" undeleted helper class instances:"<<std::endl;
190 for (
it = vp1helperclassbase_instanceMap.begin();
it!=
itE;++
it) {
191 std::cout <<
" ==> "<<
it->first<<
": "<<
it->first->m_helpername.toStdString()
192 << (
it->second.isEmpty()?QString(
""):
" (in system "+
it->
second+
")").toStdString()<<std::endl;
◆ m_d
Imp* MuonChamberProjectionHelper::m_d |
|
private |
◆ m_helpername
QString VP1HelperClassBase::m_helpername |
|
privateinherited |
◆ m_system
◆ s_vp1verbose
The documentation for this class was generated from the following files:
JetConstituentVector::iterator iterator
void messageVerbose(const QString &) const
static const bool s_vp1verbose
bool getMDTChamberVolInfo(const GeoPVConstLink &mdtChamber, ChamberInfoMapItr &itChamberInfo, bool silent=false)
static QString str(const QString &s)
void messageDebug(const QString &) const
std::map< GeoPVConstLink, MDTChamberInfo >::iterator ChamberInfoMapItr
static const char * prefix_msg()
void projectXZPointToTrdAlongYAxis(const double &x, const double &z, const GeoTrd *trd, Amg::Vector3D &firstEndWall_point, Amg::Vector3D &secondEndWall_point)
StoreGateSvc * detectorStore
Amg::Vector3D transform(Amg::Vector3D &v, Amg::Transform3D &tr)
Transform a point from a Trasformation3D.
void setVector3DCartesian(Amg::Vector3D &v1, double x1, double y1, double z1)
Sets components in cartesian coordinate system.
const QString & name() const
bool clip2DLineSegmentToRectangle(const double &rectX, const double &rectY, double &x0, double &y0, double &x1, double &y1)
double pointToPlaneDistAlongLine(const Amg::Vector3D &point, const Amg::Vector3D &lineDirection, const Amg::Vector3D &planePoint, const Amg::Vector3D &planeNormal)
static QColor sbcol2qcol(const SbColor &)
static const char * prefix_debug()
void getMDTChamberXAndZ(ChamberInfoMapItr &itChamberInfo, double &trdX, double &trdZ)
Eigen::Matrix< double, 3, 1 > Vector3D
static const char * prefix_verbose()
void message(const QString &) const
VP1HelperClassBase(IVP1System *sys=0, QString helpername="")
static Amg::Vector3D & applyTransformToVector(const Amg::Transform3D &m, Amg::Vector3D &v)
void message(const QString &) const
std::map< GeoPVConstLink, MDTChamberInfo > mdtchambervolinfo