CMS 3D CMS Logo

EMTFHit2016Extra.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 DataFormats_L1TMuon_EMTFHit2016Extra_h
6 #define DataFormats_L1TMuon_EMTFHit2016Extra_h
7 
8 #include <vector>
9 #include <boost/cstdint.hpp>
10 #include <cmath>
11 #include <iostream>
12 
15 
16 namespace l1t {
17  class EMTFHit2016Extra: public EMTFHit2016 {
18  public:
19 
21 
22  bx0(-999), layer(-999), zone(-999), phi_hit(-999), phi_zone(-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 ~EMTFHit2016Extra() {};
28 
33  ht.set_endcap(Endcap()); ht.set_station(Station()); ht.set_ring(Ring()); ht.set_sector(Sector());
38  ht.set_bend(Bend()); ht.set_valid(Valid()); ht.set_sync_err(Sync_err()); ht.set_bc0(BC0()); ht.set_bx(BX());
40 
42 
43  ht.set_bx0(BX0()); ht.set_layer(Layer()); ht.set_zone(Zone()); ht.set_phi_hit(Phi_hit()); ht.set_phi_zone(Phi_zone());
47  ht.set_eta(Eta());
48  return ht;
49  }
50  void SetZoneContribution (std::vector<int> vect_ints) { zone_contribution = vect_ints; }
51  std::vector<int> Zone_contribution () const { return zone_contribution; }
52 
53  void set_bx0 (int bits) { bx0 = bits; }
54  void set_layer (int bits) { layer = bits; }
55  void set_zone (int bits) { zone = bits; }
56  void set_phi_hit (int bits) { phi_hit = bits; }
57  void set_phi_zone (int bits) { phi_zone = bits; }
59  void set_phi_loc_deg (float val) { phi_loc_deg = val; }
60  void set_phi_loc_rad (float val) { phi_loc_rad = val; }
61  void set_phi_glob_deg (float val) { (val < 180) ? phi_glob_deg = val : phi_glob_deg = val - 360; }
62  void set_phi_glob_rad (float val) { (val < Geom::pi() ) ? phi_glob_rad = val : phi_glob_rad = val - 2*Geom::pi(); }
63  void set_phi_geom_rad (float val) { phi_geom_rad = val; }
64  void set_theta_int (int bits) { theta_int = bits; }
65  void set_theta_loc (float val) { theta_loc = val; }
66  void set_theta_deg (float val) { theta_deg = val; }
67  void set_theta_rad (float val) { theta_rad = val; }
68  void set_eta (float val) { eta = val; }
69 
70  int BX0 () const { return bx0; }
71  int Layer () const { return layer; }
72  int Zone () const { return zone; }
73  int Phi_hit () const { return phi_hit; }
74  int Phi_zone () const { return phi_zone; }
75  int Phi_loc_int () const { return phi_loc_int; }
76  float Phi_loc_deg () const { return phi_loc_deg; }
77  float Phi_loc_rad () const { return phi_loc_rad; }
78  float Phi_glob_deg () const { return phi_glob_deg; }
79  float Phi_glob_rad () const { return phi_glob_rad; }
80  float Phi_geom_rad () const { return phi_geom_rad; }
81  int Theta_int () const { return theta_int; }
82  float Theta_loc () const { return theta_loc; }
83  float Theta_deg () const { return theta_deg; }
84  float Theta_rad () const { return theta_rad; }
85  float Eta () const { return eta; }
86 
87 
88  private:
89 
90  std::vector<int> zone_contribution; // Filled in emulator from ConvertedHit.ZoneContribution()
91 
92  int bx0; // 1-3600. Filled in EMTFHit2016.cc from CSCCorrelatedLCTDigi
93  int layer;
94  int zone; // 4 - 118. Filled in emulator from ConvertedHit.Zhit()
95  int phi_hit; // 1 - 42. Filled in emulator from ConvertedHit.Ph_hit()
96  int phi_zone; // 1 - 6. Filled in emulator from ConvertedHit.Phzvl()
97  int phi_loc_int; // ? - ?. Filled in emulator from ConvertedHit.Phi()
98  float phi_loc_deg; // ? - ?. Filled in emulator, calculated from phi_loc_int with GetPackedPhi
99  float phi_loc_rad; // ? - ?. Filled in emulator, calculated from phi_loc_int with GetPackedPhi
100  float phi_glob_deg; // +/-180. Filled in emulator, calculated from phi_loc_int with GetPackedPhi
101  float phi_glob_rad; // +/- pi. Filled in emulator, calculated from phi_loc_int with GetPackedPhi
102  float phi_geom_rad; // The global phi value returned by L1Trigger/L1TMuon/interface/deprecate/GeometryTranslator.h. Not yet filled - AWB 06.04.16
103  int theta_int; // ? - ?. Filled in emulator from ConvertedHit.Theta()
104  float theta_loc; // Some bizzare local definition of theta. Not yet filled - AWB 06.04.16
105  float theta_deg; // 10 - 45. Filled in emulator from calc_theta_deg above
106  float theta_rad; // .2 - .8. Filled in emulator from calc_theta_rad above
107  float eta; // +/- 2.5. Filled in emulator from calc_eta above
108 
109  }; // End of class EMTFHit2016Extra
110 
111  // Define a vector of EMTFHit2016Extra
112  typedef std::vector<EMTFHit2016Extra> EMTFHit2016ExtraCollection;
113 
114 } // End of namespace l1t
115 
116 #endif /* define DataFormats_L1TMuon_EMTFHit2016Extra_h */
void set_valid(int bits)
Definition: EMTFHit2016.h:83
void set_quality(int bits)
Definition: EMTFHit2016.h:80
void set_ring(int bits)
Definition: EMTFHit2016.h:65
void set_phi_geom_rad(float val)
void set_theta_deg(float val)
void set_neighbor(int bits)
Definition: EMTFHit2016.h:73
int BX() const
Definition: EMTFHit2016.h:114
void set_pattern(int bits)
Definition: EMTFHit2016.h:81
void set_is_CSC_hit(int bits)
Definition: EMTFHit2016.h:88
int Stub_num() const
Definition: EMTFHit2016.h:115
int Sync_err() const
Definition: EMTFHit2016.h:112
CSCDetId CSC_DetId() const
Definition: EMTFHit2016.h:54
void set_bend(int bits)
Definition: EMTFHit2016.h:82
void set_strip_low(int bits)
Definition: EMTFHit2016.h:78
void set_strip(int bits)
Definition: EMTFHit2016.h:76
int Track_num() const
Definition: EMTFHit2016.h:107
void SetCSCLCTDigi(CSCCorrelatedLCTDigi digi)
Definition: EMTFHit2016.h:51
void SetCSCDetId(CSCDetId id)
Definition: EMTFHit2016.h:49
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
int Roll() const
Definition: EMTFHit2016.h:99
float Theta_rad() const
void set_theta_rad(float val)
void set_strip_hi(int bits)
Definition: EMTFHit2016.h:77
int Quality() const
Definition: EMTFHit2016.h:108
int Strip() const
Definition: EMTFHit2016.h:104
delete x;
Definition: CaloConfig.h:22
int Is_CSC_hit() const
Definition: EMTFHit2016.h:116
void set_roll(int bits)
Definition: EMTFHit2016.h:71
int Valid() const
Definition: EMTFHit2016.h:111
void set_chamber(int bits)
Definition: EMTFHit2016.h:69
void set_subsector(int bits)
Definition: EMTFHit2016.h:68
int Strip_low() const
Definition: EMTFHit2016.h:106
float Phi_loc_rad() const
int Sector() const
Definition: EMTFHit2016.h:94
void set_csc_ID(int bits)
Definition: EMTFHit2016.h:70
int Station() const
Definition: EMTFHit2016.h:92
void set_wire(int bits)
Definition: EMTFHit2016.h:75
float Phi_glob_deg() const
void SetRPCDigi(RPCDigi digi)
Definition: EMTFHit2016.h:52
int RPC_layer() const
Definition: EMTFHit2016.h:100
void set_bc0(int bits)
Definition: EMTFHit2016.h:85
std::vector< int > Zone_contribution() const
void set_endcap(int bits)
Definition: EMTFHit2016.h:63
int Endcap() const
Definition: EMTFHit2016.h:91
RPCDigi RPC_Digi() const
Definition: EMTFHit2016.h:57
int Sector_index() const
Definition: EMTFHit2016.h:95
int Is_RPC_hit() const
Definition: EMTFHit2016.h:117
void set_is_RPC_hit(int bits)
Definition: EMTFHit2016.h:89
int MPC_link() const
Definition: EMTFHit2016.h:102
void set_layer(int bits)
int Subsector() const
Definition: EMTFHit2016.h:96
void set_rpc_layer(int bits)
Definition: EMTFHit2016.h:72
void set_sector(int bits)
Definition: EMTFHit2016.h:66
std::vector< EMTFHit2016Extra > EMTFHit2016ExtraCollection
CSCCorrelatedLCTDigi CSC_LCTDigi() const
Definition: EMTFHit2016.h:56
std::vector< int > zone_contribution
float Phi_glob_rad() const
void set_phi_loc_rad(float val)
void SetRPCDetId(RPCDetId id)
Definition: EMTFHit2016.h:50
float Theta_loc() const
int Neighbor() const
Definition: EMTFHit2016.h:101
void set_phi_zone(int bits)
int BC0() const
Definition: EMTFHit2016.h:113
float Theta_deg() const
void set_sector_index(int bits)
Definition: EMTFHit2016.h:67
void set_zone(int bits)
void set_stub_num(int bits)
Definition: EMTFHit2016.h:87
void set_station(int bits)
Definition: EMTFHit2016.h:64
float Phi_loc_deg() const
void set_theta_loc(float val)
void set_phi_glob_rad(float val)
void set_mpc_link(int bits)
Definition: EMTFHit2016.h:74
int Strip_hi() const
Definition: EMTFHit2016.h:105
void set_track_num(int bits)
Definition: EMTFHit2016.h:79
void set_phi_hit(int bits)
void set_phi_loc_int(int bits)
int CSC_ID() const
Definition: EMTFHit2016.h:98
float Phi_geom_rad() const
RPCDetId RPC_DetId() const
Definition: EMTFHit2016.h:55
void set_theta_int(int bits)
int Ring() const
Definition: EMTFHit2016.h:93
void set_eta(float val)
int Pattern() const
Definition: EMTFHit2016.h:109
void set_phi_loc_deg(float val)
void set_phi_glob_deg(float val)
void set_bx0(int bits)
void ImportCSCCorrelatedLCTDigi(const CSCCorrelatedLCTDigi &_digi)
constexpr double pi()
Definition: Pi.h:31
void set_bx(int bits)
Definition: EMTFHit2016.h:86
int Wire() const
Definition: EMTFHit2016.h:103
EMTFHit2016 CreateEMTFHit2016()
EMTFHit2016Extra Clone()
void set_sync_err(int bits)
Definition: EMTFHit2016.h:84
int Chamber() const
Definition: EMTFHit2016.h:97
void SetZoneContribution(std::vector< int > vect_ints)
int Bend() const
Definition: EMTFHit2016.h:110