File indexing completed on 2024-04-06 12:21:55
0001 #ifndef L1Trigger_TrackFindingTracklet_interface_ProjectionTemp_h
0002 #define L1Trigger_TrackFindingTracklet_interface_ProjectionTemp_h
0003
0004 #include <cassert>
0005 #include "L1Trigger/TrackFindingTracklet/interface/Tracklet.h"
0006
0007 namespace trklet {
0008
0009 class ProjectionTemp {
0010 public:
0011 ProjectionTemp(Tracklet* proj,
0012 unsigned int slot,
0013 unsigned int projrinv,
0014 int projfinerz,
0015 unsigned int projfinephi,
0016 unsigned int iphi,
0017 int shift,
0018 bool usefirstMinus,
0019 bool usefirstPlus,
0020 bool usesecondMinus,
0021 bool usesecondPlus,
0022 bool isPSseed);
0023
0024 ProjectionTemp();
0025
0026 ~ProjectionTemp() = default;
0027
0028 Tracklet* proj() const { return proj_; }
0029 unsigned int slot() const { return slot_; }
0030 unsigned int projrinv() const { return projrinv_; }
0031 int projfinerz() const { return projfinerz_; }
0032 unsigned int projfinephi() const { return projfinephi_; }
0033 unsigned int iphi() const { return iphi_; }
0034 int shift() const { return shift_; }
0035 bool use(unsigned int nextrzbin, unsigned int nextiphibin) const { return use_[nextrzbin][nextiphibin]; }
0036 bool isPSseed() const { return isPSseed_; }
0037
0038 private:
0039 Tracklet* proj_;
0040 unsigned int slot_;
0041 unsigned int projrinv_;
0042 unsigned int projfinerz_;
0043 unsigned int projfinephi_;
0044 unsigned int iphi_;
0045 int shift_;
0046
0047
0048 bool use_[2][2];
0049 bool isPSseed_;
0050 };
0051 };
0052 #endif