CMS 3D CMS Logo

List of all members | Public Member Functions | Protected Member Functions | Private Attributes
HcalZSAlgoEnergy Class Reference

#include <HcalZSAlgoEnergy.h>

Inheritance diagram for HcalZSAlgoEnergy:
HcalZeroSuppressionAlgo

Public Member Functions

void done ()
 
 HcalZSAlgoEnergy (bool markAndPass, int level, int start, int samples, bool twosided)
 
void prepare (const HcalDbService *db)
 
 ~HcalZSAlgoEnergy () override=default
 
- Public Member Functions inherited from HcalZeroSuppressionAlgo
void clearDbService ()
 
void setDbService (const HcalDbService *db)
 
void suppress (const HBHEDigiCollection &input, HBHEDigiCollection &output)
 
void suppress (const HODigiCollection &input, HODigiCollection &output)
 
void suppress (const HFDigiCollection &input, HFDigiCollection &output)
 
void suppress (const QIE10DigiCollection &input, QIE10DigiCollection &output)
 
void suppress (const QIE11DigiCollection &input, QIE11DigiCollection &output)
 
virtual ~HcalZeroSuppressionAlgo ()=default
 

Protected Member Functions

bool shouldKeep (const HBHEDataFrame &digi) const override
 
bool shouldKeep (const HODataFrame &digi) const override
 
bool shouldKeep (const HFDataFrame &digi) const override
 
bool shouldKeep (const QIE10DataFrame &digi) const override
 
bool shouldKeep (const QIE11DataFrame &digi) const override
 
- Protected Member Functions inherited from HcalZeroSuppressionAlgo
 HcalZeroSuppressionAlgo (bool markAndPass)
 

Private Attributes

const HcalDbServicedb_
 
int firstsample_
 
int samplecount_
 
int threshold_
 
bool twosided_
 

Additional Inherited Members

- Protected Attributes inherited from HcalZeroSuppressionAlgo
const HcalDbServicem_dbService
 

Detailed Description

Simple amplitude-based zero suppression algorithm. For each digi, add up (samples) samples beginning with (start) sample. Subtract the average pedestal, and compare with digital threshold (in ADC counts). The algorithm can keep both positive and negative side fluctuations if "two sided" is enabled.

Author
J. Mans - Minnesota

Definition at line 17 of file HcalZSAlgoEnergy.h.

Constructor & Destructor Documentation

HcalZSAlgoEnergy::HcalZSAlgoEnergy ( bool  markAndPass,
int  level,
int  start,
int  samples,
bool  twosided 
)
HcalZSAlgoEnergy::~HcalZSAlgoEnergy ( )
overridedefault

Member Function Documentation

void HcalZSAlgoEnergy::done ( )

Definition at line 71 of file HcalZSAlgoEnergy.cc.

References db_.

71 { db_ = nullptr; }
const HcalDbService * db_
void HcalZSAlgoEnergy::prepare ( const HcalDbService db)

Definition at line 70 of file HcalZSAlgoEnergy.cc.

References db_.

70 { db_ = db; }
const HcalDbService * db_
bool HcalZSAlgoEnergy::shouldKeep ( const HBHEDataFrame digi) const
overrideprotectedvirtual

Implements HcalZeroSuppressionAlgo.

Definition at line 54 of file HcalZSAlgoEnergy.cc.

References db_, firstsample_, samplecount_, threshold_, and twosided_.

54  {
55  return ZSEnergy_impl::keepMe<HBHEDataFrame>(*db_, digi, threshold_, firstsample_, samplecount_, twosided_);
56 }
const HcalDbService * db_
bool HcalZSAlgoEnergy::shouldKeep ( const HODataFrame digi) const
overrideprotectedvirtual

Implements HcalZeroSuppressionAlgo.

Definition at line 57 of file HcalZSAlgoEnergy.cc.

References db_, firstsample_, samplecount_, threshold_, and twosided_.

57  {
58  return ZSEnergy_impl::keepMe<HODataFrame>(*db_, digi, threshold_, firstsample_, samplecount_, twosided_);
59 }
const HcalDbService * db_
bool HcalZSAlgoEnergy::shouldKeep ( const HFDataFrame digi) const
overrideprotectedvirtual

Implements HcalZeroSuppressionAlgo.

Definition at line 60 of file HcalZSAlgoEnergy.cc.

References db_, firstsample_, samplecount_, threshold_, and twosided_.

60  {
61  return ZSEnergy_impl::keepMe<HFDataFrame>(*db_, digi, threshold_, firstsample_, samplecount_, twosided_);
62 }
const HcalDbService * db_
bool HcalZSAlgoEnergy::shouldKeep ( const QIE10DataFrame digi) const
overrideprotectedvirtual

Implements HcalZeroSuppressionAlgo.

Definition at line 63 of file HcalZSAlgoEnergy.cc.

References db_, firstsample_, samplecount_, threshold_, and twosided_.

63  {
64  return ZSEnergy_impl::keepMe<QIE10DataFrame>(*db_, digi, threshold_, firstsample_, samplecount_, twosided_);
65 }
const HcalDbService * db_
bool HcalZSAlgoEnergy::shouldKeep ( const QIE11DataFrame digi) const
overrideprotectedvirtual

Implements HcalZeroSuppressionAlgo.

Definition at line 66 of file HcalZSAlgoEnergy.cc.

References db_, firstsample_, samplecount_, threshold_, and twosided_.

66  {
67  return ZSEnergy_impl::keepMe<QIE11DataFrame>(*db_, digi, threshold_, firstsample_, samplecount_, twosided_);
68 }
const HcalDbService * db_

Member Data Documentation

const HcalDbService* HcalZSAlgoEnergy::db_
private

Definition at line 34 of file HcalZSAlgoEnergy.h.

Referenced by done(), prepare(), and shouldKeep().

int HcalZSAlgoEnergy::firstsample_
private

Definition at line 32 of file HcalZSAlgoEnergy.h.

Referenced by shouldKeep().

int HcalZSAlgoEnergy::samplecount_
private

Definition at line 32 of file HcalZSAlgoEnergy.h.

Referenced by shouldKeep().

int HcalZSAlgoEnergy::threshold_
private

Definition at line 32 of file HcalZSAlgoEnergy.h.

Referenced by shouldKeep().

bool HcalZSAlgoEnergy::twosided_
private

Definition at line 33 of file HcalZSAlgoEnergy.h.

Referenced by shouldKeep().