Public Types | Public Member Functions | List of all members
WireCell::IChannelNoiseDatabase Class Referenceabstract

#include <IChannelNoiseDatabase.h>

Inheritance diagram for WireCell::IChannelNoiseDatabase:
WireCell::IComponent< IChannelNoiseDatabase > WireCell::Interface wcls::MultiChannelNoiseDB WireCell::SigProc::OmniChannelNoiseDB WireCell::SigProc::SimpleChannelNoiseDB wcls::ChannelNoiseDB wcls::ChannelSelectorDB

Public Types

typedef WireCell::Waveform::compseq_t filter_t
 The data type for all frequency-space, multiplicative filters. More...
 
typedef std::vector< int > channel_group_t
 
- Public Types inherited from WireCell::IComponent< IChannelNoiseDatabase >
typedef std::shared_ptr< IChannelNoiseDatabasepointer
 Access subclass facet by pointer. More...
 
typedef std::vector< pointervector
 Vector of shared pointers. More...
 
- Public Types inherited from WireCell::Interface
typedef std::shared_ptr< Interfacepointer
 

Public Member Functions

virtual ~IChannelNoiseDatabase ()
 
virtual double sample_time () const =0
 FIXME: how to handle state changes? More...
 
virtual double nominal_baseline (int channel) const =0
 Return a nominal baseline correction (additive offset) More...
 
virtual double gain_correction (int channel) const =0
 
virtual double response_offset (int channel) const =0
 Return a time offset associated with the response(). More...
 
virtual int pad_window_front (int channel) const =0
 
virtual int pad_window_back (int channel) const =0
 
virtual float coherent_nf_decon_limit (int channel) const =0
 
virtual float coherent_nf_decon_lf_cutoff (int channel) const =0
 
virtual float coherent_nf_adc_limit (int channel) const =0
 
virtual float coherent_nf_decon_limit1 (int channel) const =0
 
virtual float coherent_nf_protection_factor (int channel) const =0
 
virtual float coherent_nf_min_adc_limit (int channel) const =0
 
virtual float coherent_nf_roi_min_max_ratio (int channel) const =0
 
virtual double min_rms_cut (int channel) const =0
 
virtual double max_rms_cut (int channel) const =0
 
virtual const filter_trcrc (int channel) const =0
 Return the filter for the RC+RC coupling response function. More...
 
virtual const filter_tconfig (int channel) const =0
 Return the filter to correct any wrongly configured channels. More...
 
virtual const filter_tnoise (int channel) const =0
 Return the filter to attenuate noise. More...
 
virtual const filter_tresponse (int channel) const =0
 A nominal detector response spectrum for a given channel. More...
 
virtual std::vector< channel_group_tcoherent_channels () const =0
 Return channel grouping for coherent noise subtraction. More...
 
virtual channel_group_t bad_channels () const
 Return channels which are considered a'priori "bad". More...
 
virtual channel_group_t miscfg_channels () const
 Return channels which are considered a'priori "misconfigured". More...
 
- Public Member Functions inherited from WireCell::IComponent< IChannelNoiseDatabase >
virtual ~IComponent ()
 
- Public Member Functions inherited from WireCell::Interface
virtual ~Interface ()
 

Detailed Description

Definition at line 14 of file IChannelNoiseDatabase.h.

Member Typedef Documentation

Definition at line 19 of file IChannelNoiseDatabase.h.

The data type for all frequency-space, multiplicative filters.

Definition at line 18 of file IChannelNoiseDatabase.h.

Constructor & Destructor Documentation

IChannelNoiseDatabase::~IChannelNoiseDatabase ( )
virtual

Definition at line 102 of file IfaceDesctructors.cxx.

102 {}

Member Function Documentation

virtual channel_group_t WireCell::IChannelNoiseDatabase::bad_channels ( ) const
inlinevirtual

Return channels which are considered a'priori "bad".

Reimplemented in wcls::MultiChannelNoiseDB, WireCell::SigProc::OmniChannelNoiseDB, WireCell::SigProc::SimpleChannelNoiseDB, and wcls::ChannelSelectorDB.

Definition at line 80 of file IChannelNoiseDatabase.h.

80  {
81  return channel_group_t();
82  }
virtual std::vector<channel_group_t> WireCell::IChannelNoiseDatabase::coherent_channels ( ) const
pure virtual

Return channel grouping for coherent noise subtraction.

Implemented in wcls::MultiChannelNoiseDB, WireCell::SigProc::OmniChannelNoiseDB, and WireCell::SigProc::SimpleChannelNoiseDB.

virtual float WireCell::IChannelNoiseDatabase::coherent_nf_adc_limit ( int  channel) const
pure virtual
virtual float WireCell::IChannelNoiseDatabase::coherent_nf_decon_lf_cutoff ( int  channel) const
pure virtual
virtual float WireCell::IChannelNoiseDatabase::coherent_nf_decon_limit ( int  channel) const
pure virtual
virtual float WireCell::IChannelNoiseDatabase::coherent_nf_decon_limit1 ( int  channel) const
pure virtual
virtual float WireCell::IChannelNoiseDatabase::coherent_nf_min_adc_limit ( int  channel) const
pure virtual
virtual float WireCell::IChannelNoiseDatabase::coherent_nf_protection_factor ( int  channel) const
pure virtual
virtual float WireCell::IChannelNoiseDatabase::coherent_nf_roi_min_max_ratio ( int  channel) const
pure virtual
virtual const filter_t& WireCell::IChannelNoiseDatabase::config ( int  channel) const
pure virtual

Return the filter to correct any wrongly configured channels.

Implemented in wcls::MultiChannelNoiseDB, WireCell::SigProc::OmniChannelNoiseDB, and WireCell::SigProc::SimpleChannelNoiseDB.

virtual double WireCell::IChannelNoiseDatabase::gain_correction ( int  channel) const
pure virtual

Return simple gain correction (a multiplicative, unitless scaling) to apply to a given channel.

Implemented in WireCell::SigProc::OmniChannelNoiseDB, wcls::MultiChannelNoiseDB, and WireCell::SigProc::SimpleChannelNoiseDB.

virtual double WireCell::IChannelNoiseDatabase::max_rms_cut ( int  channel) const
pure virtual
virtual double WireCell::IChannelNoiseDatabase::min_rms_cut ( int  channel) const
pure virtual
virtual channel_group_t WireCell::IChannelNoiseDatabase::miscfg_channels ( ) const
inlinevirtual

Return channels which are considered a'priori "misconfigured".

Reimplemented in wcls::MultiChannelNoiseDB, WireCell::SigProc::OmniChannelNoiseDB, and wcls::ChannelSelectorDB.

Definition at line 85 of file IChannelNoiseDatabase.h.

85  {
86  return channel_group_t();
87  }
virtual const filter_t& WireCell::IChannelNoiseDatabase::noise ( int  channel) const
pure virtual
virtual double WireCell::IChannelNoiseDatabase::nominal_baseline ( int  channel) const
pure virtual

Return a nominal baseline correction (additive offset)

Implemented in WireCell::SigProc::OmniChannelNoiseDB, wcls::MultiChannelNoiseDB, and WireCell::SigProc::SimpleChannelNoiseDB.

virtual int WireCell::IChannelNoiseDatabase::pad_window_back ( int  channel) const
pure virtual
virtual int WireCell::IChannelNoiseDatabase::pad_window_front ( int  channel) const
pure virtual
virtual const filter_t& WireCell::IChannelNoiseDatabase::rcrc ( int  channel) const
pure virtual

Return the filter for the RC+RC coupling response function.

Implemented in wcls::MultiChannelNoiseDB, WireCell::SigProc::OmniChannelNoiseDB, and WireCell::SigProc::SimpleChannelNoiseDB.

virtual const filter_t& WireCell::IChannelNoiseDatabase::response ( int  channel) const
pure virtual

A nominal detector response spectrum for a given channel.

Implemented in wcls::MultiChannelNoiseDB, WireCell::SigProc::OmniChannelNoiseDB, and WireCell::SigProc::SimpleChannelNoiseDB.

virtual double WireCell::IChannelNoiseDatabase::response_offset ( int  channel) const
pure virtual
virtual double WireCell::IChannelNoiseDatabase::sample_time ( ) const
pure virtual

FIXME: how to handle state changes?

Return the time-domain sample period (time in system of units) which is was used in producing the filter response spectral functions (filter_t).

Warning: take care that the number of frequency samples (filter_t::size()) is fixed and may not match the number of ticks in your waveform.

Implemented in WireCell::SigProc::OmniChannelNoiseDB, wcls::MultiChannelNoiseDB, and WireCell::SigProc::SimpleChannelNoiseDB.


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