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)
 
virtual ~HcalZSAlgoEnergy ()=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

virtual bool shouldKeep (const HBHEDataFrame &digi) const
 
virtual bool shouldKeep (const HODataFrame &digi) const
 
virtual bool shouldKeep (const HFDataFrame &digi) const
 
virtual bool shouldKeep (const QIE10DataFrame &digi) const
 
virtual bool shouldKeep (const QIE11DataFrame &digi) const
 
- 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 16 of file HcalZSAlgoEnergy.h.

Constructor & Destructor Documentation

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

Member Function Documentation

void HcalZSAlgoEnergy::done ( )

Definition at line 75 of file HcalZSAlgoEnergy.cc.

References db_.

75 { db_=0; }
const HcalDbService * db_
void HcalZSAlgoEnergy::prepare ( const HcalDbService db)

Definition at line 74 of file HcalZSAlgoEnergy.cc.

References db_.

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

Implements HcalZeroSuppressionAlgo.

Definition at line 58 of file HcalZSAlgoEnergy.cc.

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

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

Implements HcalZeroSuppressionAlgo.

Definition at line 61 of file HcalZSAlgoEnergy.cc.

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

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

Implements HcalZeroSuppressionAlgo.

Definition at line 64 of file HcalZSAlgoEnergy.cc.

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

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

Implements HcalZeroSuppressionAlgo.

Definition at line 67 of file HcalZSAlgoEnergy.cc.

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

67  {
68  return ZSEnergy_impl::keepMe<QIE10DataFrame>(*db_,digi,threshold_,firstsample_,samplecount_,twosided_);
69 }
const HcalDbService * db_
bool HcalZSAlgoEnergy::shouldKeep ( const QIE11DataFrame digi) const
protectedvirtual

Implements HcalZeroSuppressionAlgo.

Definition at line 70 of file HcalZSAlgoEnergy.cc.

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

70  {
71  return ZSEnergy_impl::keepMe<QIE11DataFrame>(*db_,digi,threshold_,firstsample_,samplecount_,twosided_);
72 }
const HcalDbService * db_

Member Data Documentation

const HcalDbService* HcalZSAlgoEnergy::db_
private

Definition at line 31 of file HcalZSAlgoEnergy.h.

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

int HcalZSAlgoEnergy::firstsample_
private

Definition at line 29 of file HcalZSAlgoEnergy.h.

Referenced by shouldKeep().

int HcalZSAlgoEnergy::samplecount_
private

Definition at line 29 of file HcalZSAlgoEnergy.h.

Referenced by shouldKeep().

int HcalZSAlgoEnergy::threshold_
private

Definition at line 29 of file HcalZSAlgoEnergy.h.

Referenced by shouldKeep().

bool HcalZSAlgoEnergy::twosided_
private

Definition at line 30 of file HcalZSAlgoEnergy.h.

Referenced by shouldKeep().