CMS 3D CMS Logo

List of all members | Classes | Public Types | Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes
StripClusterizerAlgorithm Class Reference

#include <StripClusterizerAlgorithm.h>

Inheritance diagram for StripClusterizerAlgorithm:
ThreeThresholdAlgorithm

Classes

struct  InvalidChargeException
 
struct  State
 

Public Types

using Det = SiStripClusterizerConditions::Det
 
typedef edmNew::DetSetVector< SiStripClusteroutput_t
 

Public Member Functions

void clusterize (const edm::DetSetVector< SiStripDigi > &, output_t &) const
 
void clusterize (const edmNew::DetSetVector< SiStripDigi > &, output_t &) const
 
virtual void clusterizeDetUnit (const edm::DetSet< SiStripDigi > &, output_t::TSFastFiller &) const
 
virtual void clusterizeDetUnit (const edmNew::DetSet< SiStripDigi > &, output_t::TSFastFiller &) const
 
const SiStripClusterizerConditionsconditions () const
 
void initialize (const edm::EventSetup &es)
 
virtual void stripByStripAdd (State &state, uint16_t strip, uint8_t adc, std::vector< SiStripCluster > &out) const
 
virtual void stripByStripAdd (State &state, uint16_t strip, uint8_t adc, output_t::TSFastFiller &out) const
 
Det const & stripByStripBegin (uint32_t id) const
 
virtual void stripByStripEnd (State &state, std::vector< SiStripCluster > &out) const
 
virtual void stripByStripEnd (State &state, output_t::TSFastFiller &out) const
 
virtual ~StripClusterizerAlgorithm ()
 

Protected Member Functions

 StripClusterizerAlgorithm (const edm::ESGetToken< SiStripClusterizerConditions, SiStripClusterizerConditionsRcd > &conditionsToken)
 

Private Member Functions

template<class T >
void clusterize_ (const T &input, output_t &output) const
 

Private Attributes

const SiStripClusterizerConditionsm_conditions
 
edm::ESGetToken< SiStripClusterizerConditions, SiStripClusterizerConditionsRcdm_conditionsToken
 

Detailed Description

Definition at line 16 of file StripClusterizerAlgorithm.h.

Member Typedef Documentation

◆ Det

Definition at line 18 of file StripClusterizerAlgorithm.h.

◆ output_t

Definition at line 39 of file StripClusterizerAlgorithm.h.

Constructor & Destructor Documentation

◆ ~StripClusterizerAlgorithm()

virtual StripClusterizerAlgorithm::~StripClusterizerAlgorithm ( )
inlinevirtual

Definition at line 33 of file StripClusterizerAlgorithm.h.

33 {}

◆ StripClusterizerAlgorithm()

StripClusterizerAlgorithm::StripClusterizerAlgorithm ( const edm::ESGetToken< SiStripClusterizerConditions, SiStripClusterizerConditionsRcd > &  conditionsToken)
inlineexplicitprotected

Definition at line 60 of file StripClusterizerAlgorithm.h.

62  : m_conditionsToken(conditionsToken) {}
edm::ESGetToken< SiStripClusterizerConditions, SiStripClusterizerConditionsRcd > m_conditionsToken

Member Function Documentation

◆ clusterize() [1/2]

void StripClusterizerAlgorithm::clusterize ( const edm::DetSetVector< SiStripDigi > &  input,
output_t output 
) const

Definition at line 12 of file StripClusterizerAlgorithm.cc.

References clusterize_(), and input.

12  {
14 }
void clusterize_(const T &input, output_t &output) const
static std::string const input
Definition: EdmProvDump.cc:50
Definition: output.py:1

◆ clusterize() [2/2]

void StripClusterizerAlgorithm::clusterize ( const edmNew::DetSetVector< SiStripDigi > &  input,
output_t output 
) const

Definition at line 15 of file StripClusterizerAlgorithm.cc.

References clusterize_(), and input.

15  {
17 }
void clusterize_(const T &input, output_t &output) const
static std::string const input
Definition: EdmProvDump.cc:50
Definition: output.py:1

◆ clusterize_()

template<class T >
void StripClusterizerAlgorithm::clusterize_ ( const T input,
output_t output 
) const
inlineprivate

Definition at line 66 of file StripClusterizerAlgorithm.h.

References clusterizeDetUnit(), alignCSCRings::ff, input, and edmNew::DetSetVector< SiStripCluster >::TSFastFiller.

Referenced by clusterize().

66  {
67  for (typename T::const_iterator it = input.begin(); it != input.end(); it++) {
68  output_t::TSFastFiller ff(output, it->detId());
69  clusterizeDetUnit(*it, ff);
70  if (ff.empty())
71  ff.abort();
72  }
73  }
static std::string const input
Definition: EdmProvDump.cc:50
virtual void clusterizeDetUnit(const edm::DetSet< SiStripDigi > &, output_t::TSFastFiller &) const
Definition: output.py:1

◆ clusterizeDetUnit() [1/2]

virtual void StripClusterizerAlgorithm::clusterizeDetUnit ( const edm::DetSet< SiStripDigi > &  ,
output_t::TSFastFiller  
) const
inlinevirtual

Reimplemented in ThreeThresholdAlgorithm.

Definition at line 42 of file StripClusterizerAlgorithm.h.

Referenced by clusterize_().

42 {}

◆ clusterizeDetUnit() [2/2]

virtual void StripClusterizerAlgorithm::clusterizeDetUnit ( const edmNew::DetSet< SiStripDigi > &  ,
output_t::TSFastFiller  
) const
inlinevirtual

Reimplemented in ThreeThresholdAlgorithm.

Definition at line 43 of file StripClusterizerAlgorithm.h.

43 {}

◆ conditions()

const SiStripClusterizerConditions& StripClusterizerAlgorithm::conditions ( ) const
inline

Definition at line 36 of file StripClusterizerAlgorithm.h.

References m_conditions.

Referenced by ThreeThresholdAlgorithm::clusterizeDetUnit_().

36 { return *m_conditions; }
const SiStripClusterizerConditions * m_conditions

◆ initialize()

void StripClusterizerAlgorithm::initialize ( const edm::EventSetup es)
inline

Definition at line 35 of file StripClusterizerAlgorithm.h.

References edm::EventSetup::getData(), m_conditions, and m_conditionsToken.

T const & getData(const ESGetToken< T, R > &iToken) const noexcept(false)
Definition: EventSetup.h:119
const SiStripClusterizerConditions * m_conditions
edm::ESGetToken< SiStripClusterizerConditions, SiStripClusterizerConditionsRcd > m_conditionsToken

◆ stripByStripAdd() [1/2]

virtual void StripClusterizerAlgorithm::stripByStripAdd ( State state,
uint16_t  strip,
uint8_t  adc,
std::vector< SiStripCluster > &  out 
) const
inlinevirtual

Reimplemented in ThreeThresholdAlgorithm.

Definition at line 48 of file StripClusterizerAlgorithm.h.

48 {}

◆ stripByStripAdd() [2/2]

virtual void StripClusterizerAlgorithm::stripByStripAdd ( State state,
uint16_t  strip,
uint8_t  adc,
output_t::TSFastFiller out 
) const
inlinevirtual

Reimplemented in ThreeThresholdAlgorithm.

Definition at line 51 of file StripClusterizerAlgorithm.h.

51 {}

◆ stripByStripBegin()

Det const& StripClusterizerAlgorithm::stripByStripBegin ( uint32_t  id) const
inline

Definition at line 46 of file StripClusterizerAlgorithm.h.

References SiStripClusterizerConditions::findDetId(), and m_conditions.

46 { return m_conditions->findDetId(id); }
const SiStripClusterizerConditions * m_conditions
Det const & findDetId(const uint32_t id) const

◆ stripByStripEnd() [1/2]

virtual void StripClusterizerAlgorithm::stripByStripEnd ( State state,
std::vector< SiStripCluster > &  out 
) const
inlinevirtual

Reimplemented in ThreeThresholdAlgorithm.

Definition at line 49 of file StripClusterizerAlgorithm.h.

49 {}

◆ stripByStripEnd() [2/2]

virtual void StripClusterizerAlgorithm::stripByStripEnd ( State state,
output_t::TSFastFiller out 
) const
inlinevirtual

Reimplemented in ThreeThresholdAlgorithm.

Definition at line 52 of file StripClusterizerAlgorithm.h.

52 {}

Member Data Documentation

◆ m_conditions

const SiStripClusterizerConditions* StripClusterizerAlgorithm::m_conditions
private

Definition at line 76 of file StripClusterizerAlgorithm.h.

Referenced by conditions(), initialize(), and stripByStripBegin().

◆ m_conditionsToken

edm::ESGetToken<SiStripClusterizerConditions, SiStripClusterizerConditionsRcd> StripClusterizerAlgorithm::m_conditionsToken
private

Definition at line 75 of file StripClusterizerAlgorithm.h.

Referenced by initialize().