Alignment
CocoaModel
src
ALIRmDataFromFile.cc
Go to the documentation of this file.
1
// COCOA class implementation file
2
//Id: ALIRmDataFromFile.cc
3
//CAT: Model
4
//
5
// History: v1.0
6
// Pedro Arce
7
8
#include "
Alignment/CocoaModel/interface/ALIRmDataFromFile.h
"
9
10
//@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
11
ALIRmDataFromFile::ALIRmDataFromFile
() {}
12
13
//@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
14
ALIbool
ALIRmDataFromFile::setAngle
(
const
ALIstring
& coord,
const
ALIdouble
val
) {
15
if
(coord ==
"X"
) {
16
return
setAngleX
(
val
);
17
}
else
if
(coord ==
"Y"
) {
18
return
setAngleY
(
val
);
19
}
else
if
(coord ==
"Z"
) {
20
return
setAngleZ
(
val
);
21
}
else
{
22
std::cerr
<<
"!!! FATAL ERROR ALIRmDataFromFile::setAngle. Coordinate must be X, Y or Z, it ii "
<< coord
23
<< std::endl;
24
std::exception
();
25
}
26
return
false
;
27
}
28
29
//@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
30
ALIbool
ALIRmDataFromFile::setAngleX
(
const
ALIdouble
val
) {
31
theAngleX
=
val
;
32
theDataFilled
+=
"X"
;
33
return
true
;
34
}
35
36
//@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
37
ALIbool
ALIRmDataFromFile::setAngleY
(
const
ALIdouble
val
) {
38
theAngleY
=
val
;
39
theDataFilled
+=
"Y"
;
40
return
true
;
41
}
42
43
//@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
44
ALIbool
ALIRmDataFromFile::setAngleZ
(
const
ALIdouble
val
) {
45
theAngleZ
=
val
;
46
theDataFilled
+=
"Z"
;
47
return
true
;
48
}
49
50
//@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
51
void
ALIRmDataFromFile::constructRm
() {
52
if
(
theDataFilled
.find(
'X'
) == std::string::npos ||
theDataFilled
.find(
'Y'
) == std::string::npos ||
53
theDataFilled
.find(
'Z'
) == std::string::npos) {
54
std::cerr
<<
"!!! ALIRmDataFromFile::constructRm. FATAL ERROR: building rm while one angle is missing: "
55
<<
theDataFilled
<< std::endl;
56
}
else
{
57
theRm
= CLHEP::HepRotation();
58
theRm
.rotateX(
theAngleX
);
59
theRm
.rotateY(
theAngleY
);
60
theRm
.rotateZ(
theAngleZ
);
61
}
62
}
ALIbool
bool ALIbool
Definition:
CocoaGlobals.h:19
ALIstring
std::string ALIstring
Definition:
CocoaGlobals.h:9
ALIRmDataFromFile::theAngleZ
ALIdouble theAngleZ
Definition:
ALIRmDataFromFile.h:37
ALIRmDataFromFile::constructRm
void constructRm()
Definition:
ALIRmDataFromFile.cc:51
ALIRmDataFromFile::setAngleX
ALIbool setAngleX(const ALIdouble val)
Definition:
ALIRmDataFromFile.cc:30
ALIRmDataFromFile::ALIRmDataFromFile
ALIRmDataFromFile()
Definition:
ALIRmDataFromFile.cc:11
ALIRmDataFromFile.h
ALIRmDataFromFile::setAngleZ
ALIbool setAngleZ(const ALIdouble val)
Definition:
ALIRmDataFromFile.cc:44
ALIRmDataFromFile::theAngleY
ALIdouble theAngleY
Definition:
ALIRmDataFromFile.h:37
ALIRmDataFromFile::setAngle
ALIbool setAngle(const ALIstring &coord, const ALIdouble val)
Definition:
ALIRmDataFromFile.cc:14
ALIRmDataFromFile::theAngleX
ALIdouble theAngleX
Definition:
ALIRmDataFromFile.h:37
ALIRmDataFromFile::setAngleY
ALIbool setAngleY(const ALIdouble val)
Definition:
ALIRmDataFromFile.cc:37
ALIRmDataFromFile::theDataFilled
ALIstring theDataFilled
Definition:
ALIRmDataFromFile.h:38
cppFunctionSkipper.exception
exception
Definition:
cppFunctionSkipper.py:10
ALIdouble
long double ALIdouble
Definition:
CocoaGlobals.h:11
heppy_batch.val
val
Definition:
heppy_batch.py:351
EcnaPython_AdcPeg12_S1_10_R170298_1_0_150_Dee0.cerr
cerr
Definition:
EcnaPython_AdcPeg12_S1_10_R170298_1_0_150_Dee0.py:8
ALIRmDataFromFile::theRm
CLHEP::HepRotation theRm
Definition:
ALIRmDataFromFile.h:36
Generated for CMSSW Reference Manual by
1.8.16