CMS 3D CMS Logo

CPPFDigi.h
Go to the documentation of this file.
1 // Class for RPC trigger primitives sent from CPPF to EMTF
2 // Author Alejandro Segura -- Universidad de los Andes
3 
4 #ifndef DataFormats_L1TMuon_CPPFDigi_h
5 #define DataFormats_L1TMuon_CPPFDigi_h
6 
8 #include <vector>
9 
10 namespace l1t {
11 
12  class CPPFDigi{
13 
14  public:
15 
17  bx_(-99), phi_int_(-99), theta_int_(-99), valid_(-99),
18  board_(-99), channel_(-99), emtf_sector_(-99), emtf_link_(-99),
19  first_strip_(-99), cluster_size_(-99), phi_glob_(-99), theta_glob_(-99)
20  {};
21 
22  explicit CPPFDigi( const RPCDetId& rpcId0, int bx0, int phi_int0, int theta_int0, int valid0,
23  int board0, int channel0, int emtf_sector0, int emtf_link0,
24  int first_strip0, int cluster_size0, float phi_glob0, float theta_glob0);
25 
26  virtual ~CPPFDigi() {};
27 
28  virtual CPPFDigi* clone() const;
29 
30  CPPFDigi( const RPCDetId& rpcId0, int bx0 );
31  CPPFDigi( const RPCDetId& rpcId0, int bx0 , int theta_int0, int phi_int0 );
32 
33  bool operator<(const CPPFDigi& rhs) const;
34 
35  RPCDetId rpcId() const { return rpcId_; }
36  int bx() const { return bx_; }
37  int phi_int() const { return phi_int_; }
38  int theta_int() const { return theta_int_; }
39  int valid() const { return valid_; }
40  int board() const { return board_; }
41  int channel() const { return channel_; }
42  int emtf_sector() const { return emtf_sector_; }
43  int emtf_link() const { return emtf_link_; }
44  int first_strip() const { return first_strip_; }
45  int cluster_size() const { return cluster_size_; }
46  float phi_glob() const { return phi_glob_; }
47  float theta_glob() const { return theta_glob_; }
48 
49  private:
50 
51  RPCDetId rpcId_; // RPC detector ID (includes endcap, ring, station, sector, and chamber)
52  int bx_; // Bunch crossing, signed, centered at 0
53  int phi_int_; // Local integer phi value within an EMTF sector, represents 1/15 degree
54  int theta_int_; // Integer theta value in EMTF scale, represents 36.5/32 degree
55  int valid_;
56  int board_; // CPPF board, 1 - 4 in each endcap
57  int channel_; // CPPF output link, 0 - 8 in each board
58  int emtf_sector_; // EMTF sector, 1 - 6 in each endcap
59  int emtf_link_; // EMTF input link, 0 - 6 in each sector
60  int first_strip_; // Lowest-numbered strip in the cluster
61  int cluster_size_; // Number of strips in the cluster
62  float phi_glob_; // Global phi coordinate in degrees, from -180 to 180
63  float theta_glob_; // Global theta coordinate in degrees, from 0 to 90
64 
65  }; // End of class CPPFDigi
66 
67  // Define a collection of CPPFDigis
68  typedef std::vector<CPPFDigi> CPPFDigiCollection;
69 
70 } // End of namespace l1t
71 
73 std::ostream & operator<<(std::ostream & o, const l1t::CPPFDigi& cppf);
74 
75 #endif /* #define DataFormats_L1TMuon_CPPFDigi_h */
int emtf_sector() const
Definition: CPPFDigi.h:42
RPCDetId rpcId() const
Definition: CPPFDigi.h:35
bool operator<(const CPPFDigi &rhs) const
Definition: CPPFDigi.cc:36
int emtf_link() const
Definition: CPPFDigi.h:43
virtual CPPFDigi * clone() const
Definition: CPPFDigi.cc:32
int channel() const
Definition: CPPFDigi.h:41
int first_strip() const
Definition: CPPFDigi.h:44
int phi_int_
Definition: CPPFDigi.h:53
int first_strip_
Definition: CPPFDigi.h:60
delete x;
Definition: CaloConfig.h:22
int emtf_sector_
Definition: CPPFDigi.h:58
float phi_glob() const
Definition: CPPFDigi.h:46
int cluster_size() const
Definition: CPPFDigi.h:45
int theta_int_
Definition: CPPFDigi.h:54
int bx() const
Definition: CPPFDigi.h:36
float phi_glob_
Definition: CPPFDigi.h:62
float theta_glob_
Definition: CPPFDigi.h:63
int theta_int() const
Definition: CPPFDigi.h:38
int channel_
Definition: CPPFDigi.h:57
float theta_glob() const
Definition: CPPFDigi.h:47
std::ostream & operator<<(std::ostream &os, const l1t::CaloParamsHelper &p)
int board() const
Definition: CPPFDigi.h:40
int emtf_link_
Definition: CPPFDigi.h:59
RPCDetId rpcId_
Definition: CPPFDigi.h:51
int cluster_size_
Definition: CPPFDigi.h:61
int valid() const
Definition: CPPFDigi.h:39
std::vector< CPPFDigi > CPPFDigiCollection
Definition: CPPFDigi.h:68
int phi_int() const
Definition: CPPFDigi.h:37
virtual ~CPPFDigi()
Definition: CPPFDigi.h:26