CMS 3D CMS Logo

List of all members | Public Types | Public Member Functions | Private Attributes
SingleCellClusterAlgo< FECODEC, DATA > Class Template Reference
Inheritance diagram for SingleCellClusterAlgo< FECODEC, DATA >:
HGCalTriggerBackend::Algorithm< FECODEC > HGCalTriggerBackendAlgorithmBase

Public Types

typedef std::unique_ptr< HGCalTriggerGeometryBaseReturnType
 

Public Member Functions

virtual void putInEvent (edm::Event &evt) override final
 
virtual void reset () override final
 
virtual void run (const l1t::HGCFETriggerDigiCollection &coll, const edm::EventSetup &es, edm::Event &evt) override final
 
virtual void setProduces (edm::stream::EDProducer<> &prod) const override final
 
 SingleCellClusterAlgo (const edm::ParameterSet &conf, edm::ConsumesCollector &cc)
 
- Public Member Functions inherited from HGCalTriggerBackend::Algorithm< FECODEC >
 Algorithm (const edm::ParameterSet &conf, edm::ConsumesCollector &cc)
 
virtual void setGeometry (const HGCalTriggerGeometryBase *const geom) override final
 
- Public Member Functions inherited from HGCalTriggerBackendAlgorithmBase
 HGCalTriggerBackendAlgorithmBase (const edm::ParameterSet &conf, edm::ConsumesCollector &cc)
 
const std::string & name () const
 
virtual ~HGCalTriggerBackendAlgorithmBase ()
 

Private Attributes

HGCalTriggerCellCalibration calibration_
 
std::unique_ptr< l1t::HGCalTriggerCellBxCollectioncluster_product_
 
edm::ESHandle< HGCalTopologyhgceeTopoHandle_
 
edm::ESHandle< HGCalTopologyhgchefTopoHandle_
 

Additional Inherited Members

- Protected Attributes inherited from HGCalTriggerBackend::Algorithm< FECODEC >
FECODEC codec_
 
- Protected Attributes inherited from HGCalTriggerBackendAlgorithmBase
const HGCalTriggerGeometryBasegeometry_
 

Detailed Description

template<typename FECODEC, typename DATA>
class SingleCellClusterAlgo< FECODEC, DATA >

Definition at line 11 of file SingleCellClusterAlgo.cc.

Member Typedef Documentation

template<typename FECODEC , typename DATA >
typedef std::unique_ptr<HGCalTriggerGeometryBase> SingleCellClusterAlgo< FECODEC, DATA >::ReturnType

Definition at line 25 of file SingleCellClusterAlgo.cc.

Constructor & Destructor Documentation

template<typename FECODEC , typename DATA >
SingleCellClusterAlgo< FECODEC, DATA >::SingleCellClusterAlgo ( const edm::ParameterSet conf,
edm::ConsumesCollector cc 
)
inline

Definition at line 20 of file SingleCellClusterAlgo.cc.

20  :
21  Algorithm<FECODEC>(conf,cc),
23  calibration_(conf.getParameterSet("calib_parameters")){}
std::unique_ptr< l1t::HGCalTriggerCellBxCollection > cluster_product_
HGCalTriggerCellCalibration calibration_

Member Function Documentation

template<typename FECODEC , typename DATA >
virtual void SingleCellClusterAlgo< FECODEC, DATA >::putInEvent ( edm::Event evt)
inlinefinaloverridevirtual

Implements HGCalTriggerBackendAlgorithmBase.

Definition at line 57 of file SingleCellClusterAlgo.cc.

References eostools::move(), and dataset::name.

58  {
60  }
OrphanHandle< PROD > put(std::unique_ptr< PROD > product)
Put a new product.
Definition: Event.h:127
std::unique_ptr< l1t::HGCalTriggerCellBxCollection > cluster_product_
def move(src, dest)
Definition: eostools.py:510
template<typename FECODEC , typename DATA >
virtual void SingleCellClusterAlgo< FECODEC, DATA >::reset ( void  )
inlinefinaloverridevirtual

Implements HGCalTriggerBackendAlgorithmBase.

Definition at line 62 of file SingleCellClusterAlgo.cc.

63  {
65  }
std::unique_ptr< l1t::HGCalTriggerCellBxCollection > cluster_product_
template<typename FECODEC , typename DATA >
virtual void SingleCellClusterAlgo< FECODEC, DATA >::run ( const l1t::HGCFETriggerDigiCollection coll,
const edm::EventSetup es,
edm::Event evt 
)
inlinefinaloverridevirtual

Implements HGCalTriggerBackendAlgorithmBase.

Definition at line 32 of file SingleCellClusterAlgo.cc.

References coll, cscdqm::DATA, and data.

35  {
36 
37  for( const auto& digi : coll )
38  {
39  HGCalDetId module_id(digi.id());
40  DATA data;
41  data.reset();
42  digi.decode(codec_, data);
43  for(const auto& triggercell : data.payload)
44  {
45  if(triggercell.hwPt()>0)
46  {
47 
48  HGCalDetId detid(triggercell.detId());
49  l1t::HGCalTriggerCell calibratedtriggercell(triggercell);
50  calibration_.calibrateInGeV(calibratedtriggercell);
51  cluster_product_->push_back(0,calibratedtriggercell);
52  }
53  }
54  }
55  }
std::unique_ptr< l1t::HGCalTriggerCellBxCollection > cluster_product_
HGCalTriggerCellCalibration calibration_
char data[epos_bytes_allocation]
Definition: EPOS_Wrapper.h:82
void calibrateInGeV(l1t::HGCalTriggerCell &)
template<typename FECODEC , typename DATA >
virtual void SingleCellClusterAlgo< FECODEC, DATA >::setProduces ( edm::stream::EDProducer<> &  prod) const
inlinefinaloverridevirtual

Implements HGCalTriggerBackendAlgorithmBase.

Definition at line 27 of file SingleCellClusterAlgo.cc.

References dataset::name, and parseEventContent::prod.

28  {
29  prod.produces<l1t::HGCalTriggerCellBxCollection>(name());
30  }

Member Data Documentation

template<typename FECODEC , typename DATA >
HGCalTriggerCellCalibration SingleCellClusterAlgo< FECODEC, DATA >::calibration_
private

Definition at line 73 of file SingleCellClusterAlgo.cc.

template<typename FECODEC , typename DATA >
std::unique_ptr<l1t::HGCalTriggerCellBxCollection> SingleCellClusterAlgo< FECODEC, DATA >::cluster_product_
private

Definition at line 69 of file SingleCellClusterAlgo.cc.

template<typename FECODEC , typename DATA >
edm::ESHandle<HGCalTopology> SingleCellClusterAlgo< FECODEC, DATA >::hgceeTopoHandle_
private

Definition at line 71 of file SingleCellClusterAlgo.cc.

template<typename FECODEC , typename DATA >
edm::ESHandle<HGCalTopology> SingleCellClusterAlgo< FECODEC, DATA >::hgchefTopoHandle_
private

Definition at line 72 of file SingleCellClusterAlgo.cc.