CMS 3D CMS Logo

TrackletProcessorDisplaced.h
Go to the documentation of this file.
1 // TrackletProcessorDisplaced: This class performs the tasks of the TrackletEngineDisplaced+TripletEngine+TrackletCalculatorDisplaced.
2 #ifndef L1Trigger_TrackFindingTracklet_interface_TrackletProcessorDisplaced_h
3 #define L1Trigger_TrackFindingTracklet_interface_TrackletProcessorDisplaced_h
4 
12 
13 #include <vector>
14 #include <tuple>
15 #include <map>
16 
17 namespace trklet {
18 
19  class Settings;
20  class Globals;
21  class MemoryBase;
22  class AllStubsMemory;
23  class AllInnerStubsMemory;
24  class VMStubsTEMemory;
25  class StubPairsMemory;
26 
28  public:
29  TrackletProcessorDisplaced(std::string name, Settings const& settings, Globals* globals);
30 
31  ~TrackletProcessorDisplaced() override = default;
32 
34 
35  void addOutput(MemoryBase* memory, std::string output) override;
36 
37  void addInput(MemoryBase* memory, std::string input) override;
38 
39  void execute(unsigned int iSector, double phimin, double phimax);
40 
41  private:
42  int iTC_;
43  int iAllStub_;
44  unsigned int maxStep_;
45  int count_;
46  unsigned int layerdisk_;
47 
48  int layer1_;
49  int layer2_;
50  int layer3_;
51  int disk1_;
52  int disk2_;
53  int disk3_;
54 
58 
61 
62  TrackletLUT innerTable_; //projection to next layer/disk
63  TrackletLUT innerOverlapTable_; //projection to disk from layer
64  TrackletLUT innerThirdTable_; //projection to disk1 for extended - iseed=10
65 
66  std::vector<StubPairsMemory*> stubpairs_;
67  /* std::vector<StubTripletsMemory*> stubtriplets_; */
68  std::vector<VMStubsTEMemory*> innervmstubs_;
69  std::vector<VMStubsTEMemory*> outervmstubs_;
70 
72 
73  std::map<std::string, std::vector<std::vector<std::string> > > tmpSPTable_;
74  std::map<std::string, std::vector<std::map<std::string, unsigned> > > spTable_;
75  std::vector<bool> table_;
76  };
77 
78 }; // namespace trklet
79 #endif
~TrackletProcessorDisplaced() override=default
std::vector< VMStubsTEMemory * > innervmstubs_
static std::string const input
Definition: EdmProvDump.cc:50
void execute(unsigned int iSector, double phimin, double phimax)
std::map< std::string, std::vector< std::map< std::string, unsigned > > > spTable_
std::vector< StubPairsMemory * > stubpairs_
std::map< std::string, std::vector< std::vector< std::string > > > tmpSPTable_
TrackletProcessorDisplaced(std::string name, Settings const &settings, Globals *globals)
Definition: output.py:1
void addOutput(MemoryBase *memory, std::string output) override
std::vector< VMStubsTEMemory * > outervmstubs_
void addOutputProjection(TrackletProjectionsMemory *&outputProj, MemoryBase *memory)
void addInput(MemoryBase *memory, std::string input) override