CMS 3D CMS Logo

Projection.h
Go to the documentation of this file.
1 #ifndef L1Trigger_TrackFindingTracklet_interface_Projection_h
2 #define L1Trigger_TrackFindingTracklet_interface_Projection_h
3 
5 
6 namespace trklet {
7 
8  class Settings;
9 
10  class Projection {
11  public:
12  Projection() { valid_ = false; }
13 
14  ~Projection() = default;
15 
16  void init(Settings const& settings,
17  unsigned int layerdisk,
18  int iphiproj,
19  int irzproj,
20  int iphider,
21  int irzder,
22  double phiproj,
23  double rzproj,
24  double phiprojder,
25  double rzprojder,
26  double phiprojapprox,
27  double rzprojapprox,
28  double phiprojderapprox,
29  double rzprojderapprox,
30  bool isPSseed);
31 
32  bool valid() const { return valid_; }
33 
34  unsigned int layerdisk() const {
35  assert(valid_);
36  return layerdisk_;
37  };
38 
39  const FPGAWord& fpgaphiproj() const {
40  assert(valid_);
41  return fpgaphiproj_;
42  };
43 
44  const FPGAWord& fpgarzproj() const {
45  assert(valid_);
46  return fpgarzproj_;
47  };
48 
49  const FPGAWord& fpgaphiprojder() const {
50  assert(valid_);
51  return fpgaphiprojder_;
52  };
53 
54  const FPGAWord& fpgarzprojder() const {
55  assert(valid_);
56  return fpgarzprojder_;
57  };
58 
59  const FPGAWord& fpgarzbin1projvm() const {
60  assert(valid_);
61  return fpgarzbin1projvm_;
62  };
63 
64  const FPGAWord& fpgarzbin2projvm() const {
65  assert(valid_);
66  return fpgarzbin2projvm_;
67  };
68 
69  const FPGAWord& fpgafinerzvm() const {
70  assert(valid_);
71  return fpgafinerzvm_;
72  };
73 
74  const FPGAWord& fpgafinephivm() const {
75  assert(valid_);
76  return fpgafinephivm_;
77  };
78 
79  double phiproj() const {
80  assert(valid_);
81  return phiproj_;
82  };
83 
84  double rzproj() const {
85  assert(valid_);
86  return rzproj_;
87  };
88 
89  double phiprojder() const {
90  assert(valid_);
91  return phiprojder_;
92  };
93 
94  double rzprojder() const {
95  assert(valid_);
96  return rzprojder_;
97  };
98 
99  double phiprojapprox() const {
100  assert(valid_);
101  return phiprojapprox_;
102  };
103 
104  double rzprojapprox() const {
105  assert(valid_);
106  return rzprojapprox_;
107  };
108 
109  double phiprojderapprox() const {
110  assert(valid_);
111  return phiprojderapprox_;
112  };
113 
114  double rzprojderapprox() const {
115  assert(valid_);
116  return rzprojderapprox_;
117  };
118 
119  void setBendIndex(int bendindex) { fpgabendindex_.set(bendindex, 5, true, __LINE__, __FILE__); }
120 
121  const FPGAWord& getBendIndex() const { return fpgabendindex_; }
122 
123  protected:
124  bool valid_;
125 
126  unsigned int layerdisk_;
127 
132 
137 
138  double phiproj_;
139  double rzproj_;
140  double phiprojder_;
141  double rzprojder_;
142 
147 
148  //used by projections to disks
150  };
151 }; // namespace trklet
152 #endif
trklet::Projection::phiprojderapprox
double phiprojderapprox() const
Definition: Projection.h:109
trklet::Projection::fpgafinerzvm_
FPGAWord fpgafinerzvm_
Definition: Projection.h:135
trklet::Projection::fpgarzprojder
const FPGAWord & fpgarzprojder() const
Definition: Projection.h:54
trklet::Settings
Definition: Settings.h:52
trklet::Projection::rzprojderapprox_
double rzprojderapprox_
Definition: Projection.h:146
cms::cuda::assert
assert(be >=bs)
trklet::Projection::fpgafinephivm_
FPGAWord fpgafinephivm_
Definition: Projection.h:136
trklet::FPGAWord::set
void set(int value, int nbits, bool positive=true, int line=-1, const char *file=nullptr)
Definition: FPGAWord.cc:14
trklet::Projection::fpgarzbin2projvm
const FPGAWord & fpgarzbin2projvm() const
Definition: Projection.h:64
trklet::Projection::phiproj_
double phiproj_
Definition: Projection.h:138
trklet::Projection::getBendIndex
const FPGAWord & getBendIndex() const
Definition: Projection.h:121
FPGAWord.h
trklet::Projection::rzprojapprox_
double rzprojapprox_
Definition: Projection.h:144
trklet::Projection::fpgaphiproj
const FPGAWord & fpgaphiproj() const
Definition: Projection.h:39
trklet::Projection
Definition: Projection.h:10
trklet::Projection::phiprojapprox
double phiprojapprox() const
Definition: Projection.h:99
trklet::Projection::rzprojapprox
double rzprojapprox() const
Definition: Projection.h:104
trklet::Projection::fpgabendindex_
FPGAWord fpgabendindex_
Definition: Projection.h:149
trklet::Projection::fpgarzbin1projvm_
FPGAWord fpgarzbin1projvm_
Definition: Projection.h:133
trklet::Projection::init
void init(Settings const &settings, unsigned int layerdisk, int iphiproj, int irzproj, int iphider, int irzder, double phiproj, double rzproj, double phiprojder, double rzprojder, double phiprojapprox, double rzprojapprox, double phiprojderapprox, double rzprojderapprox, bool isPSseed)
Definition: Projection.cc:11
trklet::Projection::valid_
bool valid_
Definition: Projection.h:124
trklet::Projection::valid
bool valid() const
Definition: Projection.h:32
trklet::Projection::phiproj
double phiproj() const
Definition: Projection.h:79
trklet::Projection::rzproj_
double rzproj_
Definition: Projection.h:139
trklet::FPGAWord
Definition: FPGAWord.h:9
trklet::Projection::Projection
Projection()
Definition: Projection.h:12
trklet::Projection::layerdisk
unsigned int layerdisk() const
Definition: Projection.h:34
trklet::Projection::phiprojderapprox_
double phiprojderapprox_
Definition: Projection.h:145
trklet::Projection::phiprojder_
double phiprojder_
Definition: Projection.h:140
trklet::Projection::rzprojder_
double rzprojder_
Definition: Projection.h:141
trklet::Projection::phiprojder
double phiprojder() const
Definition: Projection.h:89
trklet::Projection::fpgarzproj
const FPGAWord & fpgarzproj() const
Definition: Projection.h:44
trklet::Projection::~Projection
~Projection()=default
trklet
Definition: AllInnerStubsMemory.h:10
trklet::Projection::fpgaphiprojder
const FPGAWord & fpgaphiprojder() const
Definition: Projection.h:49
trklet::Projection::fpgarzbin2projvm_
FPGAWord fpgarzbin2projvm_
Definition: Projection.h:134
trklet::Projection::fpgaphiprojder_
FPGAWord fpgaphiprojder_
Definition: Projection.h:130
trklet::Projection::fpgarzprojder_
FPGAWord fpgarzprojder_
Definition: Projection.h:131
trklet::Projection::fpgaphiproj_
FPGAWord fpgaphiproj_
Definition: Projection.h:128
trklet::Projection::fpgarzbin1projvm
const FPGAWord & fpgarzbin1projvm() const
Definition: Projection.h:59
trklet::Projection::fpgafinephivm
const FPGAWord & fpgafinephivm() const
Definition: Projection.h:74
trklet::Projection::rzprojder
double rzprojder() const
Definition: Projection.h:94
trklet::Projection::rzprojderapprox
double rzprojderapprox() const
Definition: Projection.h:114
trklet::Projection::fpgafinerzvm
const FPGAWord & fpgafinerzvm() const
Definition: Projection.h:69
trklet::Projection::fpgarzproj_
FPGAWord fpgarzproj_
Definition: Projection.h:129
trklet::Projection::layerdisk_
unsigned int layerdisk_
Definition: Projection.h:126
trklet::Projection::phiprojapprox_
double phiprojapprox_
Definition: Projection.h:143
trklet::Projection::setBendIndex
void setBendIndex(int bendindex)
Definition: Projection.h:119
trklet::Projection::rzproj
double rzproj() const
Definition: Projection.h:84