|
|
Go to the documentation of this file.
4 : fixedDataSizePerHGCROC_(conf.getParameter<
bool>(
"fixedDataSizePerHGCROC")),
5 coarsenTriggerCells_(conf.getParameter<
std::
vector<unsigned>>(
"coarsenTriggerCells")),
6 coarseTCmapping_(conf.getParameter<
std::
vector<unsigned>>(
"ctcSize")),
7 superTCmapping_(conf.getParameter<
std::
vector<unsigned>>(
"stcSize")),
15 if (energyType ==
"superTriggerCell") {
17 }
else if (energyType ==
"oneBitFraction") {
24 }
else if (energyType ==
"equalShare") {
34 uint32_t compressed_value(0);
36 return compressed_value;
40 std::unordered_map<unsigned, SuperTriggerCell>& STCs, std::vector<l1t::HGCalTriggerCell>& trigCellVecOutput)
const {
41 for (
auto&
s : STCs) {
43 if (output_ids.empty())
49 for (
const auto&
id : output_ids) {
74 <<
"The coarse trigger cell correponsing to the nominal trigger cell does not exist";
79 trigCellVecOutput.push_back(triggerCell);
82 if (
id !=
s.second.getMaxId()) {
84 s.second.addToFractionSum(tc_fraction);
121 c.setHwPt(compressed_value);
124 <<
"Trigger Cell with detId not equal to the maximum of the superTriggerCell found";
127 double coarseTriggerCellSize =
150 c.setHwPt(std::round(compressed_value *
frac));
155 }
else if (isSilicon) {
179 std::vector<l1t::HGCalTriggerCell>& trigCellVecOutput) {
180 std::unordered_map<unsigned, SuperTriggerCell> STCs;
184 STCs[stcid].add(tc, stcid);
double oneBitFractionThreshold_
static constexpr int kTriggerCellsForDivision_
std::vector< uint32_t > getConstituentTriggerCells(uint32_t ctcId) const
void setDetId(uint32_t detid)
HGCalTriggerCellCalibration calibrationHEsi_
void createAllTriggerCells(std::unordered_map< unsigned, SuperTriggerCell > &STCs, std::vector< l1t::HGCalTriggerCell > &trigCellVecOutput) const
uint32_t getCoarseTriggerCellId(uint32_t detid) const
HGCalTriggerCellCalibration calibrationEE_
bool fixedDataSizePerHGCROC_
float getTCpt(uint32_t tcid) const
HGCalTriggerCellCalibration calibrationNose_
uint32_t getSTCId() const
double oneBitFractionLowValue_
HGCalConcentratorSuperTriggerCellImpl(const edm::ParameterSet &conf)
float getFractionSum() const
void select(const std::vector< l1t::HGCalTriggerCell > &trigCellVecInput, std::vector< l1t::HGCalTriggerCell > &trigCellVecOutput)
uint32_t getCompressedSTCEnergy(const SuperTriggerCell &stc) const
HGCalTriggerTools triggerTools_
virtual bool validTriggerCell(const unsigned trigger_cell_id) const =0
bool isV9Geometry() const
HGCalCoarseTriggerCellMapping coarseTCmapping_
GlobalPoint getCoarseTriggerCellPosition(uint32_t ctcId) const
void assignSuperTriggerCellEnergyAndPosition(l1t::HGCalTriggerCell &c, const SuperTriggerCell &stc) const
uint32_t getMaxId() const
ParameterSet const & getParameterSet(ParameterSetID const &id)
double oneBitFractionHighValue_
float getTriggerCellOneBitFraction(float tcPt, float sumPt) const
EnergyDivisionType energyDivisionType_
T getParameter(std::string const &) const
static constexpr int kHighDensityThickness_
void compressSingle(const uint32_t value, uint32_t &compressedCode, uint32_t &compressedValue) const
PtEtaPhiMLorentzVectorD PtEtaPhiMLorentzVector
Lorentz vector with cartesian internal representation.
void calibrateInGeV(l1t::HGCalTriggerCell &) const
*vegas h *****************************************************used in the default bin number in original ***version of VEGAS is ***a higher bin number might help to derive a more precise ***grade subtle point
uint32_t getRepresentativeDetId(uint32_t tcid) const
HGCalCoarseTriggerCellMapping superTCmapping_
HGCalTriggerCellCalibration calibrationHEsc_
HGCalVFECompressionImpl vfeCompression_
std::vector< unsigned > coarsenTriggerCells_