1 #ifndef Phase2L1Trigger_DTTrigger_TrapezoidalGrouping_h 2 #define Phase2L1Trigger_DTTrigger_TrapezoidalGrouping_h 77 {0, 1, 3, 6}, {0, 1, 3, 7}, {0, 1, 4, 7}, {0, 1, 4, 8}, {0, 2, 4, 7}, {0, 2, 4, 8}, {0, 2, 5, 8}, {0, 2, 5, 9}};
118 std::vector<DTPrimitives> input_paths,
162 {1, 1, 2, 2, 2, -1, -1, -1, -1},
163 {-1, -1, -2, -2, -2, 1, 1, 1, 1},
164 {-1, -1, -2, -2, -2, -3, -3, -3, -3}};
167 {-1, 0, -1, 0, 1, 0, -1, 0, -1},
168 {0, 1, -1, 0, 1, 1, 0, 1, 0},
169 {-1, 0, -1, 0, 1, -2, -1, 0, 1}};
326 {-1, -1, -1, -1, -1, -1, -1, -1, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1},
327 {-1, -1, -1, -1, -1, -1, -1, -1, 0, 0, 0, 0, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2},
328 {-1, -1, -1, -1, -1, -1, -1, -1, 3, 3, 3, 3, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1},
329 {-1, -1, -1, -1, -1, -1, -1, -1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2}};
std::vector< std::vector< short > > task_list
bool hitLayerSort(const DTPrimitive &hit1, const DTPrimitive &hit2)
const int channelId() const
void setInChannels(const DTDigiCollection *digi, int sl)
int MISSING_LAYER_LAYOUTS_PER_TASK[4][24]
DTPrimitives muxInChannels_[cmsdt::NUM_CELLS_PER_BLOCK]
short trapezoid_horizontal_mapping[4][9]
std::vector< MuonPathPtr > MuonPathPtrs
bool hitTimeSort(const DTPrimitive &hit1, const DTPrimitive &hit2)
const int layerId() const
constexpr int NUM_CELLS_PER_BLOCK
bool hitWireSort(const DTPrimitive &hit1, const DTPrimitive &hit2)
~TrapezoidalGrouping() override
TrapezoidalGrouping(const edm::ParameterSet &pset, edm::ConsumesCollector &iC)
short trapezoid_vertical_mapping[4][9]
void run(edm::Event &iEvent, const edm::EventSetup &iEventSetup, const DTDigiCollection &digis, MuonPathPtrs &outMpath) override
int prevTDCTimeStamps_[4]
const int tdcTimeStamp() const
void initialise(const edm::EventSetup &iEventSetup) override
constexpr int CHANNELS_PATH_ARRANGEMENTS[8][4]
constexpr int NUM_CH_PER_LAYER
constexpr int CELL_HORIZONTAL_LAYOUTS[8][4]
std::vector< DTPrimitives > group_hits(DTPrimitive pivot_hit, std::vector< DTPrimitives > input_paths, DTPrimitives hits_per_cell, DTPrimitives &hits_in_trapezoid)
std::vector< DTPrimitive > DTPrimitives
DTPrimitives channelIn_[cmsdt::NUM_LAYERS][cmsdt::NUM_CH_PER_LAYER]
int CELL_HORIZONTAL_LAYOUTS_PER_TASK[4][24][4]