CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
RPDisplacementGenerator.h
Go to the documentation of this file.
1 #ifndef SimPPS_RPDigiProducer_RP_DISPLACEMENT_GENERATOR_H
2 #define SimPPS_RPDigiProducer_RP_DISPLACEMENT_GENERATOR_H
3 
6 #include <Math/Rotation3D.h>
7 #include <map>
8 
9 namespace edm {
10  class ParameterSet;
11  class EventSetup;
12 } // namespace edm
13 
14 class PSimHit;
15 
27 public:
28  using RotationMatrix = ROOT::Math::Rotation3D;
29  using Translation = ROOT::Math::DisplacementVector3D<ROOT::Math::Cartesian3D<double>>;
30 
32 
34  PSimHit displace(const PSimHit &);
35 
36  static uint32_t rawToDecId(uint32_t raw);
37 
38 private:
41 
45 
47  bool isOn_;
48 
51 };
52 
53 #endif
This class introduces displacements of RP. It actually shifts and rotates PSimHit positions...
RPDetId detId_
ID of the detector.
static uint32_t rawToDecId(uint32_t raw)
Translation shift_
displacement
bool isOn_
set to false to bypass displacements
ROOT::Math::Rotation3D RotationMatrix
ROOT::Math::DisplacementVector3D< ROOT::Math::Cartesian3D< double >> Translation
uint32_t RPDetId
Definition: RPSimTypes.h:11
PSimHit displace(const PSimHit &)
returns displaced PSimHit
RPDisplacementGenerator(const edm::ParameterSet &, RPDetId, const edm::EventSetup &)
Local3DPoint displacePoint(const Local3DPoint &)
displaces a point