CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Private Attributes
HGCalConcentratorTrigSumImpl Class Reference

#include <HGCalConcentratorTrigSumImpl.h>

Public Member Functions

void doSum (uint32_t module_id, const std::vector< l1t::HGCalTriggerCell > &trigCellVecInput, std::vector< l1t::HGCalTriggerSums > &trigSumsVecOutput) const
 
 HGCalConcentratorTrigSumImpl (const edm::ParameterSet &conf)
 
void setGeometry (const HGCalTriggerGeometryBase *const geom)
 

Private Attributes

HGCalTriggerTools triggerTools_
 

Detailed Description

Definition at line 10 of file HGCalConcentratorTrigSumImpl.h.

Constructor & Destructor Documentation

HGCalConcentratorTrigSumImpl::HGCalConcentratorTrigSumImpl ( const edm::ParameterSet conf)

Definition at line 3 of file HGCalConcentratorTrigSumImpl.cc.

3 {}

Member Function Documentation

void HGCalConcentratorTrigSumImpl::doSum ( uint32_t  module_id,
const std::vector< l1t::HGCalTriggerCell > &  trigCellVecInput,
std::vector< l1t::HGCalTriggerSums > &  trigSumsVecOutput 
) const

Definition at line 5 of file HGCalConcentratorTrigSumImpl.cc.

References PV3DBase< T, PVType, FrameType >::eta(), HGCalTriggerGeometryBase::getModulePosition(), HGCalTriggerTools::getTriggerGeometry(), PV3DBase< T, PVType, FrameType >::phi(), reco::LeafCandidate::setP4(), and triggerTools_.

7  {
8  double ptsum = 0;
9  double mipptsum = 0;
10  double hwptsum = 0;
11 
12  for (const auto& trigCell : trigCellVecInput) {
13  // detId selection is already done in HGCalConcentratorProcessorSelection:
14  // here we do not worry about it and assume all cells are from the same module
15  ptsum += trigCell.pt();
16  mipptsum += trigCell.mipPt();
17  hwptsum += trigCell.hwPt();
18  }
19  if (!trigCellVecInput.empty()) {
21 
22  math::PtEtaPhiMLorentzVector p4(ptsum, module_pos.eta(), module_pos.phi(), 0);
24  ts.setP4(p4);
25  ts.setDetId(module_id);
26  ts.setPosition(module_pos);
27  ts.setMipPt(mipptsum);
28  ts.setHwPt(hwptsum);
29  trigSumsVecOutput.push_back(ts);
30  }
31 }
Geom::Phi< T > phi() const
Definition: PV3DBase.h:66
const HGCalTriggerGeometryBase * getTriggerGeometry() const
PtEtaPhiMLorentzVectorD PtEtaPhiMLorentzVector
Lorentz vector with cartesian internal representation.
Definition: LorentzVector.h:25
virtual GlobalPoint getModulePosition(const unsigned module_det_id) const =0
T eta() const
Definition: PV3DBase.h:73
void setP4(const LorentzVector &p4) final
set 4-momentum
void HGCalConcentratorTrigSumImpl::setGeometry ( const HGCalTriggerGeometryBase *const  geom)
inline

Definition at line 18 of file HGCalConcentratorTrigSumImpl.h.

References HGCalTriggerTools::setGeometry(), and triggerTools_.

18 { triggerTools_.setGeometry(geom); }
void setGeometry(const HGCalTriggerGeometryBase *const)

Member Data Documentation

HGCalTriggerTools HGCalConcentratorTrigSumImpl::triggerTools_
private

Definition at line 21 of file HGCalConcentratorTrigSumImpl.h.

Referenced by doSum(), and setGeometry().