|
|
Go to the documentation of this file.
111 cout <<
"Error: EUX has no data loaded" << endl;
142 cout <<
"EUX : using look-up table : " << static_cast<Extrapolation>(lut_idx) << endl;
171 int phib_start = (
m_start->
phib() >> sh_phib) << sh_phib;
173 phib_start += (1 << sh_phib) - 1;
176 int diff = phi_target - phi_start;
180 int offset = -2144 >> sh_phi;
185 low += (1 << sh_phi) - 1;
187 high += (1 << sh_phi) - 1;
191 int phi_offset = phi_target -
offset;
192 if ((lut_idx ==
EX34) || (lut_idx ==
EX21))
193 phi_offset = phi_start +
offset;
194 if (phi_offset >= (1 << (
nbit_phi - 1)) - 1) {
198 if (phi_offset < -(1 << (
nbit_phi - 1)) + 1) {
209 m_quality = (qual_st == 7) ? 0 : qual_st + 1;
211 m_quality = (qual_ta == 7) ? 0 : qual_ta + 1;
250 pair<const L1MuBMTrackSegPhi*, const L1MuBMTrackSegPhi*>
L1MuBMEUX::ts()
const {
251 return pair<const L1MuBMTrackSegPhi*, const L1MuBMTrackSegPhi*>(
m_start,
m_target);
259 int new_sector = sector % 12;
261 new_sector = new_sector - 12;
263 new_sector = new_sector + 12;
unsigned short int m_address
void reset() override
reset Extrapolator
T const * product() const
bool operator==(const L1MuBMEUX &) const
equal operator
L1MuBMEUX(const L1MuBMSectorProcessor &sp, const L1MuBMSEU &seu, int id)
constructor
int sec_mod(int) const
output sector numbers in the range -6 to +5
int getHigh(int ext_ind, int address) const
get high_value for a given address
bool get_soc_openlut_extr(int wh, int sc) const
void load(const L1MuBMTrackSegPhi *start_ts, const L1MuBMTrackSegPhi *target_ts)
load data into EUX
L1MuDTTFParameters l1mudttfparams
int getLow(int ext_ind, int address) const
get low_value for a given address
unsigned short int m_quality
const L1MuBMTrackSegPhi * m_target
int sector() const
return sector number
int wheel() const
return wheel number
const L1MuBMSectorProcessor & m_sp
int quality() const
return quality code
int wheel() const
return wheel
unsigned short int get_soc_qcut_st4(int wh, int sc) const
bool result() const
return extrapolation result
std::pair< const L1MuBMTrackSegPhi *, const L1MuBMTrackSegPhi * > ts() const
return pointer to start and target track segment
static bool getopenLUTs()
unsigned const short nbit_phib
const L1MuBMSecProcId & id() const
return Sector Processor identifier
edm::ESHandle< L1TMuonBarrelParams > bmtfParamsHandle
virtual void run()
run processor logic
Extrapolation ext() const
return extrapolation type
~L1MuBMEUX() override
destructor
int id() const
return Extrapolation identifier
const L1MuBMTrackSegPhi * m_start
unsigned short int address() const
return extrapolation address (0-11) (address = 15 indicates negative ext. result)
int phib() const
return phib
unsigned short int get_soc_qcut_st2(int wh, int sc) const
unsigned int quality() const
return extrapolation quality
L1MuBMLUTHandler * theExtLUTs
PRODUCT const & get(ESGetToken< PRODUCT, T > const &iToken) const
int sector() const
return sector
int phi() const
return phi
Abs< T >::type abs(const T &t)
unsigned short int get_soc_qcut_st1(int wh, int sc) const
unsigned const short nbit_phi