23 dataFormats_(dataFormats),
26 layerEncoding_(layerEncoding),
27 hphDebug_(iConfig.getParameter<
bool>(
"hphDebug")),
28 useNewKF_(iConfig.getParameter<
bool>(
"useNewKF")),
29 chosenRofZNewKF_(setupTT_.chosenRofZ()),
30 etaRegionsNewKF_(setupTT_.boundarieEta()),
32 nEtaRegions_(
tmtt::KFbase::nEta_ / 2),
33 nKalmanLayers_(
tmtt::KFbase::nKFlayer_) {
41 static constexpr
auto layerIds = {1, 2, 3, 4, 5, 6, 11, 12, 13, 14, 15};
63 layermap_(setup_->layermap()),
64 nKalmanLayers_(setup_->nKalmanLayers()),
66 cotBin_(setup_->digiCot(cot, etaBin_)),
67 zTBin_(setup_->digiZT(z0, cot, etaBin_)),
68 layerEncoding_(
setup->layerEncoding(etaBin_, zTBin_, cotBin_)),
69 layerEncodingMap_(
setup->layerEncodingMap(etaBin_, zTBin_, cotBin_)),
70 numExpLayer_(layerEncoding_.size()),
71 hitpattern_(hitpattern),
72 etaSector_(setup_->
etaRegion(z0, cot, useNewKF_)),
78 numMissingInterior1_(0),
79 numMissingInterior2_(0),
83 if (kf_eta_reg < ((
int)
etaRegions_.size() - 1) / 2) {
92 for (
int i = 0;
i < nbits;
i++) {
101 bool realhit =
false;
120 edm::LogVerbatim(
"TrackTriggerHPH") <<
"======================================================";
122 <<
"Looking at hitpattern " << std::bitset<7>(
hitpattern_) <<
"; Looping over KF layers:";
234 edm::LogVerbatim(
"TrackTriggerHPH") <<
"======================================================";
251 for (
int iEtaSec = 1; iEtaSec < ((
int)
etaRegions.size() - 1); iEtaSec++) {
254 if (kfzRef < zRefMax)
256 kf_eta_reg = iEtaSec;
273 if (
hphDebug_ && (layerId > 15 || layerId < 1)) {
277 layerId = layerId - 1;
280 layerId = layerId - 5;
Log< level::Info, true > LogVerbatim
static constexpr std::pair< unsigned, unsigned > layerMap_[nEta_/2][nGPlayer_+1]
T getParameter(std::string const &) const
double chosenRofZ() const
Class to process and provide run-time constants used by Track Trigger emulators.
const trackerTFP::DataFormat dfcot_
double chosenRofZ() const
int digiZT(double z0, double cot, int binEta) const
const trackerTFP::DataFormat dfzT_
edm::ParameterSet oldKFPSet_
std::vector< int > binary_
std::map< int, const tt::SensorModule * > layerEncodingMap_
std::vector< double > etaRegions_
std::vector< double > etaRegionsNewKF_
static unsigned int calcLayerIdReduced(unsigned int layerId)
Tan< T >::type tan(const T &t)
std::vector< int > layerEncoding_
int findLayer(int layerId)
=== This is the base class for the linearised chi-squared track fit algorithms.
std::vector< double > etaRegions() const
std::vector< double > etaRegions_
Class to encode layer ids for Kalman Filter Layers consitent with rough r-z track parameters are coun...
double sectorCot(int eta) const
Setup(const edm::ParameterSet &iConfig, const tt::Setup &setupTT, const trackerTFP::DataFormats &dataFormats, const trackerTFP::LayerEncoding &layerEncoding)
int reducedId(int layerId)
int digiCot(double cot, int binEta) const
std::map< int, std::map< int, std::vector< int > > > layermap_
HitPatternHelper(const Setup *setup, int hitpattern, double cot, double z0)
int etaRegion(double z0, double cot, bool useNewKF) const
std::map< int, std::map< int, std::vector< int > > > layermap_