14 for (
int sector = MIN_TRIGSECTOR; sector <=
MAX_TRIGSECTOR; ++sector) {
21 std::cout <<
"==== Endcap " <<
endcap <<
" Sector " << sector <<
" Hits ====" << std::endl;
22 std::cout <<
"bx e s ss st vf ql cp wg id bd hs" << std::endl;
24 bool empty_sector =
true;
25 for (
const auto&
h : out_hits) {
26 if (
h.Sector_idx() != es)
31 for (
int ibx = -3 - 5; (ibx < +3 + 5 + 5) && !empty_sector; ++ibx) {
32 for (
const auto&
h : out_hits) {
34 if (
h.Sector_idx() != es)
40 int endcap = (
h.Endcap() == 1) ? 1 : 2;
41 int sector =
h.PC_sector();
42 int station = (
h.PC_station() == 0 &&
h.Subsector() == 1) ? 1 :
h.PC_station();
43 int chamber =
h.PC_chamber() + 1;
44 int strip = (
h.Station() == 1 &&
h.Ring() == 4) ?
h.Strip() + 128 :
h.Strip();
47 std::cout << bx <<
" " << endcap <<
" " << sector <<
" " <<
h.Subsector() <<
" " << station <<
" "
48 << valid <<
" " <<
h.Quality() <<
" " <<
h.Pattern() <<
" " << wire <<
" " << chamber <<
" "
49 <<
h.Bend() <<
" " << strip << std::endl;
52 if (
h.Sector_idx() != es)
54 if (
h.BX() + 6 != ibx)
61 rpc_sub = ((
h.Subsector_RPC() + 3) % 6);
65 if (
h.Station() <= 2) {
66 rpc_chm = (
h.Station() - 1);
68 rpc_chm = 2 + (
h.Station() - 3) * 2 + (
h.Ring() - 2);
72 int endcap = (
h.Endcap() == 1) ? 1 : 2;
73 int sector =
h.PC_sector();
75 int chamber = rpc_chm + 1;
76 int strip = (
h.Phi_fp() >> 2);
77 int wire = (
h.Theta_fp() >> 2);
79 std::cout << bx <<
" " << endcap <<
" " << sector <<
" " << 0 <<
" " << station <<
" " << valid <<
" "
80 << 0 <<
" " << 0 <<
" " << wire <<
" " << chamber <<
" " << 0 <<
" " << strip << std::endl;
90 std::cout <<
"==== Endcap " <<
endcap <<
" Sector " << sector <<
" Tracks ====" << std::endl;
91 std::cout <<
"bx e s a mo et ph cr q pt" << std::endl;
93 for (
const auto&
t : out_tracks) {
94 if (
t.Sector_idx() != es)
97 std::cout <<
t.BX() <<
" " << (
t.Endcap() == 1 ? 1 : 2) <<
" " <<
t.Sector() <<
" " <<
t.PtLUT().address
98 <<
" " <<
t.Mode() <<
" " << (
t.GMT_eta() >= 0 ?
t.GMT_eta() :
t.GMT_eta() + 512) <<
" "
99 <<
t.GMT_phi() <<
" " <<
t.GMT_charge() <<
" " <<
t.GMT_quality() <<
" " <<
t.Pt() << std::endl;
void dump_fw_raw_input(const l1t::EMTFHitCollection &out_hits, const l1t::EMTFTrackCollection &out_tracks)
constexpr int MIN_TRIGSECTOR
std::vector< EMTFHit > EMTFHitCollection
std::vector< EMTFTrack > EMTFTrackCollection
constexpr int MAX_TRIGSECTOR
The Signals That Services Can Subscribe To This is based on ActivityRegistry h
Helper function to determine trigger accepts.