Alignment
HIPAlignmentAlgorithm
src
HIPAlignableSpecificParameters.cc
Go to the documentation of this file.
1
#include "
Alignment/HIPAlignmentAlgorithm/interface/HIPAlignableSpecificParameters.h
"
2
#include "
FWCore/MessageLogger/interface/MessageLogger.h
"
3
4
HIPAlignableSpecificParameters::HIPAlignableSpecificParameters
(
const
Alignable
* aliObj_,
bool
defaultFlag_)
5
: aliObj(aliObj_),
6
defaultFlag(defaultFlag_),
7
minRelParError(0),
8
maxRelParError(-1),
9
minNHits
(0),
10
maxHitPull(-1),
11
applyPixelProbCut(
false
),
12
usePixelProbXYOrProbQ(
false
),
13
minPixelProbXY(0),
14
maxPixelProbXY(1),
15
minPixelProbQ(0),
16
maxPixelProbQ(1) {}
17
18
HIPAlignableSpecificParameters::HIPAlignableSpecificParameters
(
const
HIPAlignableSpecificParameters
&
other
)
19
: aliObj(
other
.aliObj),
20
defaultFlag(
other
.defaultFlag),
21
minRelParError(
other
.minRelParError),
22
maxRelParError(
other
.maxRelParError),
23
minNHits
(
other
.
minNHits
),
24
maxHitPull(
other
.maxHitPull),
25
applyPixelProbCut(
other
.applyPixelProbCut),
26
usePixelProbXYOrProbQ(
other
.usePixelProbXYOrProbQ),
27
minPixelProbXY(
other
.minPixelProbXY),
28
maxPixelProbXY(
other
.maxPixelProbXY),
29
minPixelProbQ(
other
.minPixelProbQ),
30
maxPixelProbQ(
other
.maxPixelProbQ) {}
31
32
align::ID
HIPAlignableSpecificParameters::id
()
const
{
33
if
(
aliObj
!=
nullptr
)
34
return
aliObj
->
id
();
35
else
36
return
0;
37
}
38
align::StructureType
HIPAlignableSpecificParameters::objId
()
const
{
39
if
(
aliObj
!=
nullptr
)
40
return
aliObj
->
alignableObjectId
();
41
else
42
return
align::invalid
;
43
}
44
45
bool
HIPAlignableSpecificParameters::matchAlignable
(
const
Alignable
* ali)
const
{
46
if
(
aliObj
== (
Alignable
*)
nullptr
)
47
return
false
;
48
bool
result
= (
aliObj
== ali);
49
if
(!
result
) {
// Check deep components of the alignable for this specification
50
for
(
auto
const
& alideep :
aliObj
->
deepComponents
()) {
51
if
(alideep == ali) {
52
result
=
true
;
53
break
;
54
}
55
}
56
//if (result) edm::LogWarning("Alignment") // This is correct. Ideally one should specify the same alignables aligned in the specifications
57
// << "[HIPAlignableSpecificParameters::matchAlignable] Alignment object with id " << ali->id() << " / " << ali->alignableObjectId()
58
// << " was found as a component of " << this->id() << " / " << this->objId();
59
}
60
return
result
;
61
}
62
63
bool
HIPAlignableSpecificParameters::isDefault
()
const
{
return
defaultFlag
; }
HIPAlignableSpecificParameters::aliObj
const Alignable * aliObj
Definition:
HIPAlignableSpecificParameters.h:10
MessageLogger.h
funct::false
false
Definition:
Factorize.h:29
Alignable
Definition:
Alignable.h:27
FastTrackerRecHitCombiner_cfi.minNHits
minNHits
Definition:
FastTrackerRecHitCombiner_cfi.py:7
HIPAlignableSpecificParameters::objId
align::StructureType objId() const
Definition:
HIPAlignableSpecificParameters.cc:38
HIPAlignableSpecificParameters.h
HIPAlignableSpecificParameters::isDefault
bool isDefault() const
Definition:
HIPAlignableSpecificParameters.cc:63
Alignable::alignableObjectId
virtual StructureType alignableObjectId() const =0
Return the alignable type identifier.
trackingPlots.other
other
Definition:
trackingPlots.py:1467
align::StructureType
StructureType
Definition:
StructureType.h:16
HIPAlignableSpecificParameters::matchAlignable
bool matchAlignable(const Alignable *ali) const
Definition:
HIPAlignableSpecificParameters.cc:45
align::ID
uint32_t ID
Definition:
Definitions.h:24
align::invalid
Definition:
StructureType.h:18
Alignable::id
align::ID id() const
Return the ID of Alignable, i.e. DetId of 'first' component GeomDet(Unit).
Definition:
Alignable.h:180
HIPAlignableSpecificParameters::id
align::ID id() const
Definition:
HIPAlignableSpecificParameters.cc:32
HIPAlignableSpecificParameters
Definition:
HIPAlignableSpecificParameters.h:7
Alignable::deepComponents
const Alignables & deepComponents() const
Definition:
Alignable.h:72
HIPAlignableSpecificParameters::defaultFlag
const bool defaultFlag
Definition:
HIPAlignableSpecificParameters.h:11
HIPAlignableSpecificParameters::HIPAlignableSpecificParameters
HIPAlignableSpecificParameters(const Alignable *aliObj_, bool defaultFlag_=false)
Definition:
HIPAlignableSpecificParameters.cc:4
mps_fire.result
result
Definition:
mps_fire.py:311
Generated for CMSSW Reference Manual by
1.8.16