CMS 3D CMS Logo

DiskProjection.h
Go to the documentation of this file.
1 #ifndef L1Trigger_TrackFindingTracklet_interface_DiskProjection_h
2 #define L1Trigger_TrackFindingTracklet_interface_DiskProjection_h
3 
5 
6 #include <cassert>
7 
8 namespace trklet {
9 
10  class Settings;
11 
13  public:
14  DiskProjection() { valid_ = false; }
15 
16  ~DiskProjection() = default;
17 
18  void init(Settings const& settings,
19  int projdisk,
20  double zproj,
21  int iphiproj,
22  int irproj,
23  int iphider,
24  int irder,
25  double phiproj,
26  double rproj,
27  double phiprojder,
28  double rprojder,
29  double phiprojapprox,
30  double rprojapprox,
31  double phiprojderapprox,
32  double rprojderapprox);
33 
34  bool valid() const { return valid_; }
35 
36  int projdisk() const {
37  assert(valid_);
38  return projdisk_;
39  };
40 
41  double zproj() const {
42  assert(valid_);
43  return zproj_;
44  };
45 
46  const FPGAWord& fpgaphiproj() const {
47  assert(valid_);
48  return fpgaphiproj_;
49  };
50 
51  const FPGAWord& fpgarproj() const {
52  assert(valid_);
53  return fpgarproj_;
54  };
55 
56  const FPGAWord& fpgaphiprojder() const {
57  assert(valid_);
58  return fpgaphiprojder_;
59  };
60 
61  const FPGAWord& fpgarprojder() const {
62  assert(valid_);
63  return fpgarprojder_;
64  };
65 
66  const FPGAWord& fpgaphiprojvm() const {
67  assert(valid_);
68  return fpgaphiprojvm_;
69  };
70 
71  const FPGAWord& fpgarprojvm() const {
72  assert(valid_);
73  return fpgarprojvm_;
74  };
75 
76  double phiproj() const {
77  assert(valid_);
78  return phiproj_;
79  };
80 
81  const FPGAWord& fpgarbin1projvm() const {
82  assert(valid_);
83  return fpgarbin1projvm_;
84  };
85 
86  const FPGAWord& fpgarbin2projvm() const {
87  assert(valid_);
88  return fpgarbin2projvm_;
89  };
90 
91  const FPGAWord& fpgafinervm() const {
92  assert(valid_);
93  return fpgafinervm_;
94  };
95 
96  double rproj() const {
97  assert(valid_);
98  return rproj_;
99  };
100 
101  double phiprojder() const {
102  assert(valid_);
103  return phiprojder_;
104  };
105 
106  double rprojder() const {
107  assert(valid_);
108  return rprojder_;
109  };
110 
111  double phiprojapprox() const {
112  assert(valid_);
113  return phiprojapprox_;
114  };
115 
116  double rprojapprox() const {
117  assert(valid_);
118  return rprojapprox_;
119  };
120 
121  double phiprojderapprox() const {
122  assert(valid_);
123  return phiprojderapprox_;
124  };
125 
126  double rprojderapprox() const {
127  assert(valid_);
128  return rprojderapprox_;
129  };
130 
131  void setBendIndex(int bendindex) { fpgabendindex_.set(bendindex, 5, true, __LINE__, __FILE__); }
132 
133  const FPGAWord& getBendIndex() const { return fpgabendindex_; }
134 
135  protected:
136  bool valid_;
137 
139 
140  double zproj_;
141 
146 
149 
153 
155 
156  double phiproj_;
157  double rproj_;
158  double phiprojder_;
159  double rprojder_;
160 
162  double rprojapprox_;
165  };
166 
167 }; // namespace trklet
168 #endif
trklet::DiskProjection::fpgaphiprojder_
FPGAWord fpgaphiprojder_
Definition: DiskProjection.h:144
trklet::DiskProjection::phiprojapprox
double phiprojapprox() const
Definition: DiskProjection.h:111
trklet::DiskProjection::setBendIndex
void setBendIndex(int bendindex)
Definition: DiskProjection.h:131
trklet::DiskProjection::fpgabendindex_
FPGAWord fpgabendindex_
Definition: DiskProjection.h:154
trklet::DiskProjection::getBendIndex
const FPGAWord & getBendIndex() const
Definition: DiskProjection.h:133
trklet::DiskProjection::fpgarprojder
const FPGAWord & fpgarprojder() const
Definition: DiskProjection.h:61
trklet::DiskProjection::fpgarprojvm
const FPGAWord & fpgarprojvm() const
Definition: DiskProjection.h:71
trklet::Settings
Definition: Settings.h:31
trklet::DiskProjection::rprojder
double rprojder() const
Definition: DiskProjection.h:106
cms::cuda::assert
assert(be >=bs)
trklet::DiskProjection::valid
bool valid() const
Definition: DiskProjection.h:34
trklet::FPGAWord::set
void set(int value, int nbits, bool positive=true, int line=-1, const char *file=nullptr)
Definition: FPGAWord.cc:14
trklet::DiskProjection::rproj_
double rproj_
Definition: DiskProjection.h:157
trklet::DiskProjection::fpgafinervm
const FPGAWord & fpgafinervm() const
Definition: DiskProjection.h:91
trklet::DiskProjection::fpgarbin2projvm
const FPGAWord & fpgarbin2projvm() const
Definition: DiskProjection.h:86
trklet::DiskProjection::fpgaphiprojvm
const FPGAWord & fpgaphiprojvm() const
Definition: DiskProjection.h:66
trklet::DiskProjection::fpgaphiproj
const FPGAWord & fpgaphiproj() const
Definition: DiskProjection.h:46
trklet::DiskProjection::fpgafinervm_
FPGAWord fpgafinervm_
Definition: DiskProjection.h:152
FPGAWord.h
trklet::DiskProjection::phiprojderapprox
double phiprojderapprox() const
Definition: DiskProjection.h:121
trklet::DiskProjection::phiproj_
double phiproj_
Definition: DiskProjection.h:156
trklet::DiskProjection::fpgarbin2projvm_
FPGAWord fpgarbin2projvm_
Definition: DiskProjection.h:151
trklet::DiskProjection::fpgaphiprojder
const FPGAWord & fpgaphiprojder() const
Definition: DiskProjection.h:56
trklet::DiskProjection
Definition: DiskProjection.h:12
trklet::DiskProjection::fpgaphiprojvm_
FPGAWord fpgaphiprojvm_
Definition: DiskProjection.h:147
trklet::DiskProjection::projdisk
int projdisk() const
Definition: DiskProjection.h:36
trklet::DiskProjection::zproj_
double zproj_
Definition: DiskProjection.h:140
trklet::DiskProjection::rprojapprox_
double rprojapprox_
Definition: DiskProjection.h:162
trklet::FPGAWord
Definition: FPGAWord.h:9
trklet::DiskProjection::rprojapprox
double rprojapprox() const
Definition: DiskProjection.h:116
trklet::DiskProjection::fpgarproj
const FPGAWord & fpgarproj() const
Definition: DiskProjection.h:51
trklet::DiskProjection::phiprojder_
double phiprojder_
Definition: DiskProjection.h:158
trklet::DiskProjection::phiprojapprox_
double phiprojapprox_
Definition: DiskProjection.h:161
trklet
Definition: AllProjectionsMemory.h:9
trklet::DiskProjection::~DiskProjection
~DiskProjection()=default
trklet::DiskProjection::fpgarprojvm_
FPGAWord fpgarprojvm_
Definition: DiskProjection.h:148
trklet::DiskProjection::valid_
bool valid_
Definition: DiskProjection.h:136
trklet::DiskProjection::rprojder_
double rprojder_
Definition: DiskProjection.h:159
trklet::DiskProjection::rproj
double rproj() const
Definition: DiskProjection.h:96
trklet::DiskProjection::fpgaphiproj_
FPGAWord fpgaphiproj_
Definition: DiskProjection.h:142
trklet::DiskProjection::phiprojderapprox_
double phiprojderapprox_
Definition: DiskProjection.h:163
trklet::DiskProjection::phiproj
double phiproj() const
Definition: DiskProjection.h:76
trklet::DiskProjection::fpgarbin1projvm_
FPGAWord fpgarbin1projvm_
Definition: DiskProjection.h:150
trklet::DiskProjection::phiprojder
double phiprojder() const
Definition: DiskProjection.h:101
trklet::DiskProjection::fpgarproj_
FPGAWord fpgarproj_
Definition: DiskProjection.h:143
trklet::DiskProjection::zproj
double zproj() const
Definition: DiskProjection.h:41
trklet::DiskProjection::rprojderapprox
double rprojderapprox() const
Definition: DiskProjection.h:126
trklet::DiskProjection::projdisk_
int projdisk_
Definition: DiskProjection.h:138
trklet::DiskProjection::fpgarbin1projvm
const FPGAWord & fpgarbin1projvm() const
Definition: DiskProjection.h:81
trklet::DiskProjection::fpgarprojder_
FPGAWord fpgarprojder_
Definition: DiskProjection.h:145
trklet::DiskProjection::rprojderapprox_
double rprojderapprox_
Definition: DiskProjection.h:164
trklet::DiskProjection::DiskProjection
DiskProjection()
Definition: DiskProjection.h:14
trklet::DiskProjection::init
void init(Settings const &settings, int projdisk, double zproj, int iphiproj, int irproj, int iphider, int irder, double phiproj, double rproj, double phiprojder, double rprojder, double phiprojapprox, double rprojapprox, double phiprojderapprox, double rprojderapprox)
Definition: DiskProjection.cc:12