CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
EMTFHitExtra.h
Go to the documentation of this file.
1 // Class for input trigger primitives to EMTF - AWB 04.01.16
2 // Based on L1Trigger/L1TMuon/interface/deprecate/MuonTriggerPrimitive.h
3 // In particular, see struct CSCData
4 
5 #ifndef __l1t_EMTFHitExtra_h__
6 #define __l1t_EMTFHitExtra_h__
7 
8 #include <vector>
9 #include <boost/cstdint.hpp>
10 #include <cmath>
11 #include <iostream>
12 
15 
16 namespace l1t {
17  class EMTFHitExtra: public EMTFHit {
18  public:
19 
21 
22  bx0(-999), layer(-999), zone_hit(-999), phi_hit(-999), phi_z_val(-999), phi_loc_int(-999),
23  phi_loc_deg(-999), phi_loc_rad(-999), phi_glob_deg(-999), phi_glob_rad(-999), phi_geom_rad(-999),
24  theta_int(-999), theta_loc(-999), theta_deg(-999), theta_rad(-999), eta(-999)
25  {};
26 
27  virtual ~EMTFHitExtra() {};
28 
31 
32  void SetZoneContribution (std::vector<int> vect_ints) { zone_contribution = vect_ints; }
33  std::vector<int> Zone_contribution () const { return zone_contribution; }
34 
35  void set_bx0 (int bits) { bx0 = bits; }
36  void set_layer (int bits) { layer = bits; }
37  void set_zone_hit (int bits) { zone_hit = bits; }
38  void set_phi_hit (int bits) { phi_hit = bits; }
39  void set_phi_z_val (int bits) { phi_z_val = bits; }
41  void set_phi_loc_deg (float val) { phi_loc_deg = val; }
42  void set_phi_loc_rad (float val) { phi_loc_rad = val; }
43  void set_phi_glob_deg (float val) { (val < 180) ? phi_glob_deg = val : phi_glob_deg = val - 360; }
44  void set_phi_glob_rad (float val) { (val < Geom::pi() ) ? phi_glob_rad = val : phi_glob_rad = val - 2*Geom::pi(); }
45  void set_phi_geom_rad (float val) { phi_geom_rad = val; }
46  void set_theta_int (int bits) { theta_int = bits; }
47  void set_theta_loc (float val) { theta_loc = val; }
48  void set_theta_deg (float val) { theta_deg = val; }
49  void set_theta_rad (float val) { theta_rad = val; }
50  void set_eta (float val) { eta = val; }
51 
52  int BX0 () const { return bx0; }
53  int Layer () const { return layer; }
54  int Zone_hit () const { return zone_hit; }
55  int Phi_hit () const { return phi_hit; }
56  int Phi_Z_val () const { return phi_z_val; }
57  int Phi_loc_int () const { return phi_loc_int; }
58  float Phi_loc_deg () const { return phi_loc_deg; }
59  float Phi_loc_rad () const { return phi_loc_rad; }
60  float Phi_glob_deg () const { return phi_glob_deg; }
61  float Phi_glob_rad () const { return phi_glob_rad; }
62  float Phi_geom_rad () const { return phi_geom_rad; }
63  int Theta_int () const { return theta_int; }
64  float Theta_loc () const { return theta_loc; }
65  float Theta_deg () const { return theta_deg; }
66  float Theta_rad () const { return theta_rad; }
67  float Eta () const { return eta; }
68 
69 
70  private:
71 
72  std::vector<int> zone_contribution; // Filled in emulator from ConvertedHit.ZoneContribution()
73 
74  int bx0; // 1-3600. Filled in EMTFHit.cc from CSCCorrelatedLCTDigi
75  int layer;
76  int zone_hit; // 4 - 118. Filled in emulator from ConvertedHit.Zhit()
77  int phi_hit; // 1 - 42. Filled in emulator from ConvertedHit.Ph_hit()
78  int phi_z_val; // 1 - 6. Filled in emulator from ConvertedHit.Phzvl()
79  int phi_loc_int; // ? - ?. Filled in emulator from ConvertedHit.Phi()
80  float phi_loc_deg; // ? - ?. Filled in emulator, calculated from phi_loc_int with GetPackedPhi
81  float phi_loc_rad; // ? - ?. Filled in emulator, calculated from phi_loc_int with GetPackedPhi
82  float phi_glob_deg; // +/-180. Filled in emulator, calculated from phi_loc_int with GetPackedPhi
83  float phi_glob_rad; // +/- pi. Filled in emulator, calculated from phi_loc_int with GetPackedPhi
84  float phi_geom_rad; // The global phi value returned by L1Trigger/L1TMuon/interface/deprecate/GeometryTranslator.h. Not yet filled - AWB 06.04.16
85  int theta_int; // ? - ?. Filled in emulator from ConvertedHit.Theta()
86  float theta_loc; // Some bizzare local definition of theta. Not yet filled - AWB 06.04.16
87  float theta_deg; // 10 - 45. Filled in emulator from calc_theta_deg above
88  float theta_rad; // .2 - .8. Filled in emulator from calc_theta_rad above
89  float eta; // +/- 2.5. Filled in emulator from calc_eta above
90 
91  }; // End of class EMTFHitExtra
92 
93  // Define a vector of EMTFHitExtra
94  typedef std::vector<EMTFHitExtra> EMTFHitExtraCollection;
95 
96 } // End of namespace l1t
97 
98 #endif /* define __l1t_EMTFHitExtra_h__ */
std::vector< EMTFHitExtra > EMTFHitExtraCollection
Definition: EMTFHitExtra.h:94
void set_zone_hit(int bits)
Definition: EMTFHitExtra.h:37
void set_eta(float val)
Definition: EMTFHitExtra.h:50
void set_phi_z_val(int bits)
Definition: EMTFHitExtra.h:39
void set_theta_loc(float val)
Definition: EMTFHitExtra.h:47
std::vector< int > Zone_contribution() const
Definition: EMTFHitExtra.h:33
void set_phi_hit(int bits)
Definition: EMTFHitExtra.h:38
How EventSelector::AcceptEvent() decides whether to accept an event for output otherwise it is excluding the probing of A single or multiple positive and the trigger will pass if any such matching triggers are PASS or EXCEPTION[A criterion thatmatches no triggers at all is detected and causes a throw.] A single negative with an expectation of appropriate bit checking in the decision bits
float Phi_geom_rad() const
Definition: EMTFHitExtra.h:62
int Theta_int() const
Definition: EMTFHitExtra.h:63
float Phi_glob_rad() const
Definition: EMTFHitExtra.h:61
void set_phi_geom_rad(float val)
Definition: EMTFHitExtra.h:45
void set_bx0(int bits)
Definition: EMTFHitExtra.h:35
void set_phi_loc_deg(float val)
Definition: EMTFHitExtra.h:41
float Theta_rad() const
Definition: EMTFHitExtra.h:66
void set_phi_loc_rad(float val)
Definition: EMTFHitExtra.h:42
void set_phi_glob_deg(float val)
Definition: EMTFHitExtra.h:43
void SetZoneContribution(std::vector< int > vect_ints)
Definition: EMTFHitExtra.h:32
EMTFHit CreateEMTFHit()
virtual ~EMTFHitExtra()
Definition: EMTFHitExtra.h:27
void set_theta_int(int bits)
Definition: EMTFHitExtra.h:46
int BX0() const
Definition: EMTFHitExtra.h:52
std::vector< int > zone_contribution
Definition: EMTFHitExtra.h:72
void set_layer(int bits)
Definition: EMTFHitExtra.h:36
float Phi_glob_deg() const
Definition: EMTFHitExtra.h:60
float Phi_loc_rad() const
Definition: EMTFHitExtra.h:59
void set_phi_glob_rad(float val)
Definition: EMTFHitExtra.h:44
int Zone_hit() const
Definition: EMTFHitExtra.h:54
float Phi_loc_deg() const
Definition: EMTFHitExtra.h:58
void set_theta_deg(float val)
Definition: EMTFHitExtra.h:48
void set_phi_loc_int(int bits)
Definition: EMTFHitExtra.h:40
float Theta_deg() const
Definition: EMTFHitExtra.h:65
double pi()
Definition: Pi.h:31
int Layer() const
Definition: EMTFHitExtra.h:53
float Eta() const
Definition: EMTFHitExtra.h:67
void ImportCSCCorrelatedLCTDigi(const CSCCorrelatedLCTDigi &_digi)
Definition: EMTFHitTools.cc:69
void set_theta_rad(float val)
Definition: EMTFHitExtra.h:49
int Phi_hit() const
Definition: EMTFHitExtra.h:55
int Phi_loc_int() const
Definition: EMTFHitExtra.h:57
float Theta_loc() const
Definition: EMTFHitExtra.h:64
int Phi_Z_val() const
Definition: EMTFHitExtra.h:56