Public Member Functions | Private Attributes | List of all members
sn::FEBFlasherRemover Class Reference

#include "/cvmfs/nova-development.opensciencegrid.org/novasoft/releases/N21-05-06/Supernova/BackgroundRejection/FEBFlasherRemover.h"

Public Member Functions

 FEBFlasherRemover (sn::HitVetoMap &vetoMap, unsigned int fInstigatorQ, unsigned int fInstigatorT, unsigned int fVetoQ, unsigned int fVetoT)
 
 ~FEBFlasherRemover ()
 
void remove (std::vector< art::Ptr< rawdata::RawDigit >> hits)
 
int NInstigators ()
 
int NFlasherHits ()
 

Private Attributes

sn::HitVetoMapfVetoMap
 
unsigned int fInstigatorQ
 Charge threshold for instigators [ADC]. More...
 
unsigned int fInstigatorT
 Time window for instigator hits [TDC]. More...
 
unsigned int fVetoQ
 Only veto below this charge [ADC]. More...
 
unsigned int fVetoT
 Time to veto FEB after instigator [TDC]. More...
 
int fNumInstigators = 0
 
int fNumFlasherHits = 0
 

Detailed Description

Definition at line 17 of file FEBFlasherRemover.h.

Constructor & Destructor Documentation

sn::FEBFlasherRemover::FEBFlasherRemover ( sn::HitVetoMap vetoMap,
unsigned int  fInstigatorQ,
unsigned int  fInstigatorT,
unsigned int  fVetoQ,
unsigned int  fVetoT 
)

Definition at line 21 of file FEBFlasherRemover.cxx.

References fInstigatorQ, fInstigatorT, fVetoQ, and fVetoT.

21  :
22 fVetoMap(vetoMap)
23 {
24  this->fInstigatorQ = fInstigatorQ;
25  this->fInstigatorT = fInstigatorT;
26  this->fVetoQ = fVetoQ;
27  this->fVetoT = fVetoT;
28 }
unsigned int fInstigatorT
Time window for instigator hits [TDC].
sn::HitVetoMap & fVetoMap
unsigned int fVetoQ
Only veto below this charge [ADC].
unsigned int fInstigatorQ
Charge threshold for instigators [ADC].
unsigned int fVetoT
Time to veto FEB after instigator [TDC].
sn::FEBFlasherRemover::~FEBFlasherRemover ( )

Definition at line 31 of file FEBFlasherRemover.cxx.

31 {}

Member Function Documentation

int sn::FEBFlasherRemover::NFlasherHits ( )

Return the number of flasher hits. A flasher hit is any hit induced by FEB/APD flasher behavior.

Returns
number of flasher hits.

Definition at line 42 of file FEBFlasherRemover.cxx.

References fNumFlasherHits.

Referenced by sn::SNBackgroundRejection::produce().

43 {
44  return this->fNumFlasherHits;
45 }
int sn::FEBFlasherRemover::NInstigators ( )

Return the number of instigator hits. An instigator is any hit whose charge deposition was high enough to have triggered a flasher response.

Returns
number of instigator hits.

Definition at line 35 of file FEBFlasherRemover.cxx.

References fNumInstigators.

Referenced by sn::SNBackgroundRejection::produce().

36 {
37  return this->fNumInstigators;
38 }
void sn::FEBFlasherRemover::remove ( std::vector< art::Ptr< rawdata::RawDigit >>  hits)

Definition at line 49 of file FEBFlasherRemover.cxx.

References sn::HitVetoMap::AddHit(), dq::FlasherFinder::FEBFlashHits(), dq::FlasherFinder::FindInstigators(), fInstigatorQ, fInstigatorT, fNumFlasherHits, fNumInstigators, fVetoMap, fVetoQ, fVetoT, hits(), dq::FlasherFinder::SetInstigatorT(), dq::FlasherFinder::SetIntesgatorQ(), dq::FlasherFinder::SetVetoQ(), and dq::FlasherFinder::SetVetoT().

Referenced by sn::SNBackgroundRejection::produce().

50 {
51  dq::FlasherFinder* flasherFinder = new dq::FlasherFinder();
52  flasherFinder->SetIntesgatorQ(fInstigatorQ);
53  flasherFinder->SetInstigatorT(fInstigatorT);
54  flasherFinder->SetVetoQ(fVetoQ);
55  flasherFinder->SetVetoT(fVetoT);
56 
57  this->fNumInstigators = flasherFinder->FindInstigators(hits);
58  std::vector<art::Ptr<rawdata::RawDigit>> flasher_hits = flasherFinder->FEBFlashHits(hits);
59  this->fNumFlasherHits = flasher_hits.size();
60 
61  for (art::Ptr<rawdata::RawDigit> hit : flasher_hits) {
62  this->fVetoMap.AddHit(*hit);
63  }
64 
65  return;
66 }
void SetInstigatorT(unsigned int T)
Definition: FlasherFinder.h:98
unsigned int fInstigatorT
Time window for instigator hits [TDC].
void SetVetoT(unsigned int VetoT)
unsigned int FindInstigators(std::vector< art::Ptr< rawdata::RawDigit > > &d)
void hits()
Definition: readHits.C:15
sn::HitVetoMap & fVetoMap
void AddHit(rawdata::RawDigit h)
Definition: HitVetoMap.cxx:27
void SetIntesgatorQ(unsigned int Q)
Definition: FlasherFinder.h:97
unsigned int fVetoQ
Only veto below this charge [ADC].
Definition: structs.h:12
unsigned int fInstigatorQ
Charge threshold for instigators [ADC].
unsigned int fVetoT
Time to veto FEB after instigator [TDC].
std::vector< art::Ptr< rawdata::RawDigit > > FEBFlashHits(std::vector< art::Ptr< rawdata::RawDigit >> &d)
Definition: fwd.h:29
void SetVetoQ(unsigned int VetoQ)
Definition: FlasherFinder.h:99

Member Data Documentation

unsigned int sn::FEBFlasherRemover::fInstigatorQ
private

Charge threshold for instigators [ADC].

Definition at line 42 of file FEBFlasherRemover.h.

Referenced by FEBFlasherRemover(), and remove().

unsigned int sn::FEBFlasherRemover::fInstigatorT
private

Time window for instigator hits [TDC].

Definition at line 43 of file FEBFlasherRemover.h.

Referenced by FEBFlasherRemover(), and remove().

int sn::FEBFlasherRemover::fNumFlasherHits = 0
private

Definition at line 48 of file FEBFlasherRemover.h.

Referenced by NFlasherHits(), and remove().

int sn::FEBFlasherRemover::fNumInstigators = 0
private

Definition at line 47 of file FEBFlasherRemover.h.

Referenced by NInstigators(), and remove().

sn::HitVetoMap& sn::FEBFlasherRemover::fVetoMap
private

Definition at line 41 of file FEBFlasherRemover.h.

Referenced by remove().

unsigned int sn::FEBFlasherRemover::fVetoQ
private

Only veto below this charge [ADC].

Definition at line 44 of file FEBFlasherRemover.h.

Referenced by FEBFlasherRemover(), and remove().

unsigned int sn::FEBFlasherRemover::fVetoT
private

Time to veto FEB after instigator [TDC].

Definition at line 45 of file FEBFlasherRemover.h.

Referenced by FEBFlasherRemover(), and remove().


The documentation for this class was generated from the following files: