led_pulse_selector Class Reference
[AnalysisAnalysis]

This is a simple selection class to select LED pulse, implemented on pulse_selector_base base class. More...

#include <led_pulse_selector.hh>

Inheritance diagram for led_pulse_selector:

pulse_selector_simple pulse_selector_base ana_base decoder_base List of all members.

Public Member Functions

 led_pulse_selector ()
 Default constructor.
virtual ~led_pulse_selector ()
 Default destructor.
virtual bool initialize ()
 Initialization method to be called before the analysis event loop.
virtual bool analyze (storage_manager *storage)
 Analyze a data event-by-event.
virtual bool finalize ()
 Finalize method to be called after all events processed.
void clear_event ()
 Clear event.
void set_ref_channel (PMT::ch_number_t ch)
void set_frame_size (PMT::word_t frame_size)
void set_time_cut (PMT::word_t time_cut)
virtual bool select_pulse (const pulse_info *data)
 Selection method to indicate whether the given pulse should be selected or not.
void reset_cuts ()
void set_range_pulse_start_time (double v1, double v2)
 Setter for the range of pusle start time to select pulses of interest.
void set_range_pulse_start_time_reco (double v1, double v2)
 Setter for the range of reconstructed pusle start time to select pulses of interest.
void set_range_pulse_end_time (double v1, double v2)
 Setter for the range of pusle end time to select pulses of interest..
void set_range_pulse_amp (double v1, double v2)
 Setter for the range of pusle amplitude to select pulses of interest..
void set_range_pulse_charge (double v1, double v2)
 Setter for the range of integrated charge to select pulses of interest..
void set_range_ped_mean (double v1, double v2)
 Setter for the range of pedestal mean value to select pulses of interest..
void set_range_ped_rms (double v1, double v2)
 Setter for the range of pedestal rms to select pulses of interest..
void set_range_frame_id (PMT::word_t v1, PMT::word_t v2)
 Setter for the range of frame id to select pulses of interest.
void set_range_timeslice (PMT::word_t v1, PMT::word_t v2)
 Setter for the range of timeslice to select pulses of interest.
void set_range_channel (PMT::ch_number_t v1, PMT::ch_number_t v2)
 Setter for the range of channel numbers to select pulses of interest.
void set_range_sum_charge (double v1, double v2)
 Setter for the range of event charge sum to select pulses of interest.
void set_range_sum_peak (double v1, double v2)
 Setter for the range of event peak sum to select pulses of interest.
void set_range_npulse (double v1, double v2)
 Setter for the range of event-wise number of pulses to select pulses of interest.
const std::pair< double, double > range_pulse_start_time () const
 Getter for the range of pusle start time to select pulses of interest.
const std::pair< double, double > range_pulse_start_time_reco () const
 Getter for the range of pusle reconstructed start time to select pulses of interest.
const std::pair< double, double > range_pulse_end_time () const
 Getter for the range of pusle end time to select pulses of interest..
const std::pair< double, double > range_pulse_amp () const
 Getter for the range of pusle amplitude to select pulses of interest..
const std::pair< double, double > range_pulse_charge () const
 Getter for the range of integrated charge to select pulses of interest..
const std::pair< double, double > range_ped_mean () const
 Getter for the range of pedestal mean value to select pulses of interest..
const std::pair< double, double > range_ped_rms () const
 Getter for the range of pedestal rms to select pulses of interest..
const std::pair< PMT::word_t,
PMT::word_t
range_frame_id () const
 Getter for the range of frame number to select pulses of interest.
const std::pair< PMT::word_t,
PMT::word_t
range_timeslice () const
 Getter for the range of timeslice to select pulses of interest.
const std::pair< PMT::word_t,
PMT::word_t
range_channel () const
 Getter for the range of channel numbers to select pulses of interest.
const std::pair< double, double > range_sum_charge () const
 Getter for the range of event charge sum to select pulses of interest.
const std::pair< double, double > range_sum_peak () const
 Getter for the range of event peak sum to select pulses of interest.
void set_pulse_type (DATA_STRUCT::DATA_TYPE type)
 Config method to specify which type of pulse information should be used.
DATA_STRUCT::DATA_TYPE pulse_type () const
 Getter for the specified pulse type to be used.
void set_output_file (TFile *fout)
 A setter for analysis output file poitner.
void set_verbosity (MSG::Level level)
 Setter for the verbosity level.
MSG::Level get_verbosity () const
 Getter for the verbosity level.
const std::string class_name () const
 Getter for the class name.

Protected Attributes

std::pair< double, double > _cut_tstart
 pairs to define a range of pulse parameters for displaying pulses.
std::pair< double, double > _cut_tstart_reco
std::pair< double, double > _cut_tend
std::pair< double, double > _cut_amp
std::pair< double, double > _cut_charge
std::pair< double, double > _cut_pedbase
std::pair< double, double > _cut_pedrms
std::pair< double, double > _cut_sum_charge
 pairs to define a range of event parameters for displaying pulses.
std::pair< double, double > _cut_sum_peak
std::pair< UInt_t, UInt_t > _cut_npulse
 pairs to define a range of event parameters for displaying pulses.
std::pair< PMT::word_t, PMT::word_t_cut_frame_id
 a pair to define a range of frame number and sample number for displaying pulses.
std::pair< PMT::word_t, PMT::word_t_cut_timeslice
std::pair< PMT::ch_number_t,
PMT::ch_number_t
_cut_channels
 a pair to define a range of channel numbers for displaying pulses.
DATA_STRUCT::DATA_TYPE _pulse_type
TFile * _fout
 Analysis output file pointer.
char _buf [200]
 char buffer for message manipulation
bool _verbosity [MSG::MSG_TYPE_MAX]
 holder for enabled message levels
MSG::Level _verbosity_level
 holder for specified verbosity level
std::string _name
 class name holder

Private Attributes

PMT::ch_number_t _ref_ch
PMT::word_t _frame_size
PMT::word_t _time_cut
std::set< PMT::word_t_ref_time

Detailed Description

This is a simple selection class to select LED pulse, implemented on pulse_selector_base base class.

It expects a user to provide a reference channel number in which LED pulser's external trigger signal is fed in. Then this class looks for a pulse from other channels that come in coincidence with this external trigger pulse. A user also has to specify a time interval to claim a coincidence.

Definition at line 42 of file led_pulse_selector.hh.


Constructor & Destructor Documentation

led_pulse_selector::led_pulse_selector (  ) 

Default constructor.

Definition at line 6 of file led_pulse_selector.cc.

References _frame_size, decoder_base::_name, pulse_selector_base::_pulse_type, _ref_ch, _time_cut, clear_event(), PMT::EMPTY_WORD, PMT::INVALID_CH, and DATA_STRUCT::THRES_WIN_PULSE_COLLECTION.

virtual led_pulse_selector::~led_pulse_selector (  )  [inline, virtual]

Default destructor.

Definition at line 50 of file led_pulse_selector.hh.

00050 {};


Member Function Documentation

bool led_pulse_selector::analyze ( storage_manager storage  )  [virtual]

Analyze a data event-by-event.

Reimplemented from pulse_selector_simple.

Definition at line 49 of file led_pulse_selector.cc.

References _frame_size, pulse_selector_base::_pulse_type, _ref_ch, _ref_time, pulse_selector_simple::analyze(), clear_event(), MSG::ERROR, storage_manager::get_data(), and Message::send().

Referenced by led_pulse_analyzer::analyze().

00049                                                          {
00050   
00051   pulse_collection *pulses = (pulse_collection*)(storage->get_data(_pulse_type));
00052 
00053   if(pulses->size()==0) {
00054     Message::send(MSG::ERROR,__FUNCTION__,"No Pulse Found!");
00055     return false;
00056   }
00057 
00058   clear_event();
00059 
00060   // Perform analyze() in the base class
00061   bool status = pulse_selector_simple::analyze(storage);
00062 
00063   if(status){
00064 
00065     // Look for reference time from the specified channel number
00066     for(pulse_collection::const_iterator iter(pulses->begin());
00067     iter!=pulses->end();
00068     ++iter){
00069       if((*iter).channel_number() != _ref_ch) continue;
00070       
00071       _ref_time.insert((*iter).frame_id() * _frame_size + (*iter).timeslice());
00072       
00073     }
00074 
00075   }
00076 
00077   return status;
00078 }

const std::string decoder_base::class_name (  )  const [inline, inherited]

Getter for the class name.

Definition at line 46 of file decoder_base.hh.

References decoder_base::_name.

00046 {return _name;};

void led_pulse_selector::clear_event (  ) 

Clear event.

Definition at line 15 of file led_pulse_selector.cc.

References _ref_time.

Referenced by analyze(), and led_pulse_selector().

00015                                     {
00016   _ref_time.clear();
00017 }

bool led_pulse_selector::finalize (  )  [virtual]

Finalize method to be called after all events processed.

Reimplemented from pulse_selector_simple.

Definition at line 110 of file led_pulse_selector.cc.

00110                                   {
00111 
00112   // This function is called at the end of event loop.
00113   // Do all variable finalization you wish to do here.
00114   // If you need, you can store your ROOT class instance in the output
00115   // file. You have an access to the output file through "_fout" pointer.
00116   //amplitude->Write();
00117   return true;
00118 }

MSG::Level decoder_base::get_verbosity (  )  const [inline, inherited]

Getter for the verbosity level.

Definition at line 43 of file decoder_base.hh.

References decoder_base::_verbosity_level.

00043 {return _verbosity_level;};

bool led_pulse_selector::initialize (  )  [virtual]

Initialization method to be called before the analysis event loop.

Reimplemented from pulse_selector_simple.

Definition at line 19 of file led_pulse_selector.cc.

References _frame_size, _ref_ch, _time_cut, PMT::EMPTY_WORD, MSG::ERROR, PMT::INVALID_CH, and Message::send().

Referenced by led_pulse_analyzer::initialize().

00019                                     {
00020 
00021   bool status = true;
00022   if(_ref_ch==PMT::INVALID_CH) {
00023 
00024     Message::send(MSG::ERROR,__PRETTY_FUNCTION__,"Reference channel number is not set! Aborting...");
00025 
00026     status=false;
00027 
00028   }
00029 
00030   if(_frame_size == PMT::EMPTY_WORD){
00031 
00032     Message::send(MSG::ERROR,__PRETTY_FUNCTION__,"Frame size not set! Aborting...");
00033 
00034     status = false;
00035 
00036   }
00037   
00038   if(_time_cut == PMT::EMPTY_WORD){
00039 
00040     Message::send(MSG::ERROR,__PRETTY_FUNCTION__,"Timing cut not set! Aborting...");
00041 
00042     status = false;
00043 
00044   }
00045 
00046   return status;
00047 }

DATA_STRUCT::DATA_TYPE pulse_selector_base::pulse_type (  )  const [inline, inherited]

Getter for the specified pulse type to be used.

Definition at line 51 of file pulse_selector_base.hh.

References pulse_selector_base::_pulse_type.

Referenced by waveform_sampler::analyze(), led_pulse_analyzer::analyze(), and waveform_sampler::sample_waveform().

00051 {return _pulse_type;};

const std::pair<PMT::word_t,PMT::word_t> pulse_selector_simple::range_channel (  )  const [inline, inherited]

Getter for the range of channel numbers to select pulses of interest.

Definition at line 129 of file pulse_selector_simple.hh.

References pulse_selector_simple::_cut_channels.

00129 {return _cut_channels;};

const std::pair<PMT::word_t,PMT::word_t> pulse_selector_simple::range_frame_id (  )  const [inline, inherited]

Getter for the range of frame number to select pulses of interest.

Definition at line 123 of file pulse_selector_simple.hh.

References pulse_selector_simple::_cut_frame_id.

00123 {return _cut_frame_id;};

const std::pair<double,double> pulse_selector_simple::range_ped_mean (  )  const [inline, inherited]

Getter for the range of pedestal mean value to select pulses of interest..

Definition at line 117 of file pulse_selector_simple.hh.

References pulse_selector_simple::_cut_pedbase.

00117 {return _cut_pedbase;};

const std::pair<double,double> pulse_selector_simple::range_ped_rms (  )  const [inline, inherited]

Getter for the range of pedestal rms to select pulses of interest..

Definition at line 120 of file pulse_selector_simple.hh.

References pulse_selector_simple::_cut_pedrms.

00120 {return _cut_pedrms;};

const std::pair<double,double> pulse_selector_simple::range_pulse_amp (  )  const [inline, inherited]

Getter for the range of pusle amplitude to select pulses of interest..

Definition at line 111 of file pulse_selector_simple.hh.

References pulse_selector_simple::_cut_amp.

00111 {return _cut_amp;};

const std::pair<double,double> pulse_selector_simple::range_pulse_charge (  )  const [inline, inherited]

Getter for the range of integrated charge to select pulses of interest..

Definition at line 114 of file pulse_selector_simple.hh.

References pulse_selector_simple::_cut_charge.

00114 {return _cut_charge;};

const std::pair<double,double> pulse_selector_simple::range_pulse_end_time (  )  const [inline, inherited]

Getter for the range of pusle end time to select pulses of interest..

Definition at line 108 of file pulse_selector_simple.hh.

References pulse_selector_simple::_cut_tend.

00108 {return _cut_tend;};

const std::pair<double,double> pulse_selector_simple::range_pulse_start_time (  )  const [inline, inherited]

Getter for the range of pusle start time to select pulses of interest.

Definition at line 102 of file pulse_selector_simple.hh.

References pulse_selector_simple::_cut_tstart.

00102 {return _cut_tstart;};

const std::pair<double,double> pulse_selector_simple::range_pulse_start_time_reco (  )  const [inline, inherited]

Getter for the range of pusle reconstructed start time to select pulses of interest.

Definition at line 105 of file pulse_selector_simple.hh.

References pulse_selector_simple::_cut_tstart_reco.

00105 {return _cut_tstart_reco;};

const std::pair<double,double> pulse_selector_simple::range_sum_charge (  )  const [inline, inherited]

Getter for the range of event charge sum to select pulses of interest.

Definition at line 132 of file pulse_selector_simple.hh.

References pulse_selector_simple::_cut_sum_charge.

00132 {return _cut_sum_charge;};

const std::pair<double,double> pulse_selector_simple::range_sum_peak (  )  const [inline, inherited]

Getter for the range of event peak sum to select pulses of interest.

Definition at line 135 of file pulse_selector_simple.hh.

References pulse_selector_simple::_cut_sum_peak.

00135 {return _cut_sum_peak;};

const std::pair<PMT::word_t,PMT::word_t> pulse_selector_simple::range_timeslice (  )  const [inline, inherited]

Getter for the range of timeslice to select pulses of interest.

Definition at line 126 of file pulse_selector_simple.hh.

References pulse_selector_simple::_cut_timeslice.

00126 {return _cut_timeslice;};

void pulse_selector_simple::reset_cuts (  )  [inherited]

Definition at line 13 of file pulse_selector_simple.cc.

References pulse_selector_simple::_cut_amp, pulse_selector_simple::_cut_channels, pulse_selector_simple::_cut_charge, pulse_selector_simple::_cut_frame_id, pulse_selector_simple::_cut_npulse, pulse_selector_simple::_cut_pedbase, pulse_selector_simple::_cut_pedrms, pulse_selector_simple::_cut_sum_charge, pulse_selector_simple::_cut_sum_peak, pulse_selector_simple::_cut_tend, pulse_selector_simple::_cut_timeslice, pulse_selector_simple::_cut_tstart, pulse_selector_simple::_cut_tstart_reco, PMT::INVALID_CH, and PMT::NUM_PMT_CHANNEL.

Referenced by pulse_selector_simple::pulse_selector_simple().

00013                                        {
00014 
00015   _cut_tstart_reco = std::make_pair(-1,2000);
00016   _cut_tstart      = std::make_pair(-1,2000);
00017   _cut_tend        = std::make_pair(-1,2000);
00018   _cut_amp         = std::make_pair(-1,4096);
00019   _cut_charge      = std::make_pair(-1,4096*2000);
00020   _cut_pedbase     = std::make_pair(-1,4096);
00021   _cut_pedrms      = std::make_pair(0,4096);
00022   _cut_channels    = std::make_pair(0,PMT::INVALID_CH);
00023   _cut_frame_id    = std::make_pair(0,0xffffffff);
00024   _cut_timeslice   = std::make_pair(0,0xffffffff);
00025   _cut_npulse      = std::make_pair(0,0xffffffff);
00026   _cut_sum_charge  = std::make_pair(0,4096*2000*PMT::NUM_PMT_CHANNEL);
00027   _cut_sum_peak    = std::make_pair(0,4096*PMT::NUM_PMT_CHANNEL);
00028   
00029 }

bool led_pulse_selector::select_pulse ( const pulse_info data  )  [virtual]

Selection method to indicate whether the given pulse should be selected or not.

Reimplemented from pulse_selector_simple.

Definition at line 81 of file led_pulse_selector.cc.

References _frame_size, _ref_time, _time_cut, pulse_info::frame_id(), pulse_selector_simple::select_pulse(), and pulse_info::timeslice().

Referenced by led_pulse_analyzer::analyze().

00081                                                            {
00082 
00083   // Run base class selection first
00084   bool store = pulse_selector_simple::select_pulse(data);
00085 
00086   if(!store) return store;
00087 
00088   store= false;
00089   PMT::word_t time_stamp = data->frame_id() * _frame_size + data->timeslice();
00090   for(auto ts : _ref_time){
00091 
00092     if(ts > time_stamp) {
00093     
00094     if( (ts-time_stamp) < _time_cut ) store = true; 
00095       
00096     break;
00097     
00098       }else if( (time_stamp - ts) < _time_cut){
00099 
00100     store = true;
00101 
00102     break;
00103 
00104       }
00105     }
00106 
00107   return store;
00108 }

void led_pulse_selector::set_frame_size ( PMT::word_t  frame_size  )  [inline]

Definition at line 66 of file led_pulse_selector.hh.

References _frame_size.

Referenced by led_pulse_analyzer::set_frame_size().

00066 {_frame_size=frame_size;};

void ana_base::set_output_file ( TFile *  fout  )  [inline, inherited]

A setter for analysis output file poitner.

Definition at line 46 of file ana_base.hh.

References ana_base::_fout.

00046 {_fout=fout;};

void pulse_selector_base::set_pulse_type ( DATA_STRUCT::DATA_TYPE  type  )  [inherited]

Config method to specify which type of pulse information should be used.

Definition at line 19 of file pulse_selector_base.cc.

References pulse_selector_base::_pulse_type, DATA_STRUCT::DATA_TYPE_MAX, MSG::ERROR, DATA_STRUCT::FIXED_WIN_PULSE_COLLECTION, DATA_STRUCT::PMT_WF_COLLECTION, DATA_STRUCT::PULSE_COLLECTION, Message::send(), DATA_STRUCT::SLIDE_WIN_PULSE_COLLECTION, DATA_STRUCT::THRES_WIN_PULSE_COLLECTION, DATA_STRUCT::TPC_WF_COLLECTION, DATA_STRUCT::TRIG_INFO, and DATA_STRUCT::USER_COLLECTION.

Referenced by led_pulse_analyzer::set_pulse_type().

00019                                                                   {
00020 //################################################
00021 
00022   switch(type){
00023 
00024   case DATA_STRUCT::PMT_WF_COLLECTION:
00025   case DATA_STRUCT::TPC_WF_COLLECTION:
00026   case DATA_STRUCT::TRIG_INFO:
00027   case DATA_STRUCT::USER_COLLECTION:
00028   case DATA_STRUCT::DATA_TYPE_MAX:
00029     Message::send(MSG::ERROR,__FUNCTION__,
00030           Form("The specified data type (=%ud) does not match any pulse data type!",type)
00031           );
00032     break;
00033   case DATA_STRUCT::PULSE_COLLECTION:
00034   case DATA_STRUCT::FIXED_WIN_PULSE_COLLECTION:
00035   case DATA_STRUCT::THRES_WIN_PULSE_COLLECTION:
00036   case DATA_STRUCT::SLIDE_WIN_PULSE_COLLECTION:
00037     _pulse_type = type;
00038     break;
00039   }
00040 
00041 }

void pulse_selector_simple::set_range_channel ( PMT::ch_number_t  v1,
PMT::ch_number_t  v2 
) [inline, inherited]

Setter for the range of channel numbers to select pulses of interest.

Definition at line 85 of file pulse_selector_simple.hh.

References pulse_selector_simple::_cut_channels.

00085 {_cut_channels.first=v1; _cut_channels.second=v2;};

void pulse_selector_simple::set_range_frame_id ( PMT::word_t  v1,
PMT::word_t  v2 
) [inline, inherited]

Setter for the range of frame id to select pulses of interest.

Definition at line 79 of file pulse_selector_simple.hh.

References pulse_selector_simple::_cut_frame_id.

00079 {_cut_frame_id.first=v1; _cut_frame_id.second=v2; };

void pulse_selector_simple::set_range_npulse ( double  v1,
double  v2 
) [inline, inherited]

Setter for the range of event-wise number of pulses to select pulses of interest.

Definition at line 94 of file pulse_selector_simple.hh.

References pulse_selector_simple::_cut_npulse.

00094 {_cut_npulse.first=v1; _cut_npulse.second=v2;};

void pulse_selector_simple::set_range_ped_mean ( double  v1,
double  v2 
) [inline, inherited]

Setter for the range of pedestal mean value to select pulses of interest..

Definition at line 73 of file pulse_selector_simple.hh.

References pulse_selector_simple::_cut_pedbase.

00073 {_cut_pedbase.first=v1;  _cut_pedbase.second=v2;  };

void pulse_selector_simple::set_range_ped_rms ( double  v1,
double  v2 
) [inline, inherited]

Setter for the range of pedestal rms to select pulses of interest..

Definition at line 76 of file pulse_selector_simple.hh.

References pulse_selector_simple::_cut_pedrms.

00076 {_cut_pedrms.first=v1;   _cut_pedrms.second=v2;   };

void pulse_selector_simple::set_range_pulse_amp ( double  v1,
double  v2 
) [inline, inherited]

Setter for the range of pusle amplitude to select pulses of interest..

Definition at line 67 of file pulse_selector_simple.hh.

References pulse_selector_simple::_cut_amp.

00067 {_cut_amp.first=v1;      _cut_amp.second=v2;      };

void pulse_selector_simple::set_range_pulse_charge ( double  v1,
double  v2 
) [inline, inherited]

Setter for the range of integrated charge to select pulses of interest..

Definition at line 70 of file pulse_selector_simple.hh.

References pulse_selector_simple::_cut_charge.

00070 {_cut_charge.first=v1;   _cut_charge.second=v2;   };

void pulse_selector_simple::set_range_pulse_end_time ( double  v1,
double  v2 
) [inline, inherited]

Setter for the range of pusle end time to select pulses of interest..

Definition at line 64 of file pulse_selector_simple.hh.

References pulse_selector_simple::_cut_tend.

00064 {_cut_tend.first=v1;     _cut_tend.second=v2;     };

void pulse_selector_simple::set_range_pulse_start_time ( double  v1,
double  v2 
) [inline, inherited]

Setter for the range of pusle start time to select pulses of interest.

Definition at line 58 of file pulse_selector_simple.hh.

References pulse_selector_simple::_cut_tstart.

00058 {_cut_tstart.first=v1;   _cut_tstart.second=v2;   };

void pulse_selector_simple::set_range_pulse_start_time_reco ( double  v1,
double  v2 
) [inline, inherited]

Setter for the range of reconstructed pusle start time to select pulses of interest.

Definition at line 61 of file pulse_selector_simple.hh.

References pulse_selector_simple::_cut_tstart_reco.

00061 {_cut_tstart_reco.first=v1;   _cut_tstart_reco.second=v2;   };

void pulse_selector_simple::set_range_sum_charge ( double  v1,
double  v2 
) [inline, inherited]

Setter for the range of event charge sum to select pulses of interest.

Definition at line 88 of file pulse_selector_simple.hh.

References pulse_selector_simple::_cut_sum_charge.

00088 {_cut_sum_charge.first=v1; _cut_sum_charge.second=v2;};

void pulse_selector_simple::set_range_sum_peak ( double  v1,
double  v2 
) [inline, inherited]

Setter for the range of event peak sum to select pulses of interest.

Definition at line 91 of file pulse_selector_simple.hh.

References pulse_selector_simple::_cut_sum_peak.

00091 {_cut_sum_peak.first=v1; _cut_sum_peak.second=v2;};

void pulse_selector_simple::set_range_timeslice ( PMT::word_t  v1,
PMT::word_t  v2 
) [inline, inherited]

Setter for the range of timeslice to select pulses of interest.

Definition at line 82 of file pulse_selector_simple.hh.

References pulse_selector_simple::_cut_timeslice.

00082 {_cut_timeslice.first=v1; _cut_timeslice.second=v2; };

void led_pulse_selector::set_ref_channel ( PMT::ch_number_t  ch  )  [inline]

Definition at line 64 of file led_pulse_selector.hh.

References _ref_ch.

Referenced by led_pulse_analyzer::set_ref_channel().

00064 {_ref_ch=ch;};

void led_pulse_selector::set_time_cut ( PMT::word_t  time_cut  )  [inline]

Definition at line 68 of file led_pulse_selector.hh.

References _time_cut.

Referenced by led_pulse_analyzer::set_time_cut().

00068 {_time_cut = time_cut;};

void decoder_base::set_verbosity ( MSG::Level  level  )  [inherited]

Setter for the verbosity level.

Reimplemented in ana_processor.

Definition at line 11 of file decoder_base.cc.

References decoder_base::_verbosity, decoder_base::_verbosity_level, MSG::DEBUG, MSG::ERROR, MSG::INFO, MSG::MSG_TYPE_MAX, MSG::NORMAL, and MSG::WARNING.

Referenced by algo_slow_readout_decoder::algo_slow_readout_decoder(), compare_content(), decoder_base::decoder_base(), decoder_manager::decoder_manager(), decoder_manager::initialize(), main(), xmit_event_search::run(), bin_word_search::run(), and ana_processor::set_verbosity().

00011                                               {
00012 
00013   _verbosity_level=level;
00014 
00015   for(size_t i=(size_t)(MSG::DEBUG); i<(size_t)(MSG::MSG_TYPE_MAX); ++i)
00016     _verbosity[i]=false;
00017 
00018   switch(level){
00019   case MSG::DEBUG:
00020     _verbosity[MSG::DEBUG]=true;
00021   case MSG::INFO:
00022     _verbosity[MSG::INFO]=true;
00023   case MSG::NORMAL:
00024     _verbosity[MSG::NORMAL]=true;
00025   case MSG::WARNING:
00026     _verbosity[MSG::WARNING]=true;
00027   case MSG::ERROR:
00028     _verbosity[MSG::ERROR]=true;
00029   case MSG::MSG_TYPE_MAX:
00030     break;
00031   }
00032 
00033 }


Member Data Documentation

char decoder_base::_buf[200] [protected, inherited]

char buffer for message manipulation

Definition at line 46 of file decoder_base.hh.

Referenced by reco_wf::analyze(), pulse_viewer::analyze(), algo_slow_readout_decoder::check_event_quality(), storage_manager::close(), bin_io_handler::close(), decoder_manager::decode(), algo_slow_readout_decoder::decode_ch_word(), algo_pmt_xmit::decode_ch_word(), algo_slow_readout_decoder::decode_event_header(), pulse_viewer::get_waveform(), ana_processor::initialize(), pulse_viewer::next_pulse(), storage_manager::open(), bin_io_handler::open(), storage_manager::prepare_tree(), pulse_viewer::previous_pulse(), algo_slow_readout_decoder::print_adc_values(), algo_tpc_xmit::process_ch_word(), algo_slow_readout_decoder::process_ch_word(), algo_pmt_xmit::process_ch_word(), algo_fem_decoder_base::process_fem_header(), algo_xmit_decoder::process_header(), algo_slow_readout_decoder::process_header(), algo_slow_readout_decoder::process_word(), bin_io_handler::read_multi_word(), bin_io_handler::read_word(), and ana_processor::run().

std::pair<double,double> pulse_selector_simple::_cut_amp [protected, inherited]

Definition at line 135 of file pulse_selector_simple.hh.

Referenced by pulse_selector_simple::range_pulse_amp(), pulse_selector_simple::reset_cuts(), pulse_selector_simple::select_pulse(), and pulse_selector_simple::set_range_pulse_amp().

std::pair<PMT::ch_number_t,PMT::ch_number_t> pulse_selector_simple::_cut_channels [protected, inherited]

a pair to define a range of channel numbers for displaying pulses.

Definition at line 152 of file pulse_selector_simple.hh.

Referenced by pulse_selector_simple::range_channel(), pulse_selector_simple::reset_cuts(), pulse_selector_simple::select_pulse(), and pulse_selector_simple::set_range_channel().

std::pair<double,double> pulse_selector_simple::_cut_charge [protected, inherited]

Definition at line 135 of file pulse_selector_simple.hh.

Referenced by pulse_selector_simple::range_pulse_charge(), pulse_selector_simple::reset_cuts(), pulse_selector_simple::select_pulse(), and pulse_selector_simple::set_range_pulse_charge().

std::pair<PMT::word_t,PMT::word_t> pulse_selector_simple::_cut_frame_id [protected, inherited]

a pair to define a range of frame number and sample number for displaying pulses.

Definition at line 149 of file pulse_selector_simple.hh.

Referenced by pulse_selector_simple::range_frame_id(), pulse_selector_simple::reset_cuts(), pulse_selector_simple::select_pulse(), and pulse_selector_simple::set_range_frame_id().

std::pair<UInt_t,UInt_t> pulse_selector_simple::_cut_npulse [protected, inherited]

pairs to define a range of event parameters for displaying pulses.

Definition at line 146 of file pulse_selector_simple.hh.

Referenced by pulse_selector_simple::reset_cuts(), and pulse_selector_simple::set_range_npulse().

std::pair<double,double> pulse_selector_simple::_cut_pedbase [protected, inherited]

Definition at line 135 of file pulse_selector_simple.hh.

Referenced by pulse_selector_simple::range_ped_mean(), pulse_selector_simple::reset_cuts(), pulse_selector_simple::select_pulse(), and pulse_selector_simple::set_range_ped_mean().

std::pair<double,double> pulse_selector_simple::_cut_pedrms [protected, inherited]

Definition at line 135 of file pulse_selector_simple.hh.

Referenced by pulse_selector_simple::range_ped_rms(), pulse_selector_simple::reset_cuts(), pulse_selector_simple::select_pulse(), and pulse_selector_simple::set_range_ped_rms().

std::pair<double,double> pulse_selector_simple::_cut_sum_charge [protected, inherited]

pairs to define a range of event parameters for displaying pulses.

Definition at line 143 of file pulse_selector_simple.hh.

Referenced by pulse_selector_simple::range_sum_charge(), pulse_selector_simple::reset_cuts(), and pulse_selector_simple::set_range_sum_charge().

std::pair<double,double> pulse_selector_simple::_cut_sum_peak [protected, inherited]

Definition at line 143 of file pulse_selector_simple.hh.

Referenced by pulse_selector_simple::range_sum_peak(), pulse_selector_simple::reset_cuts(), and pulse_selector_simple::set_range_sum_peak().

std::pair<double,double> pulse_selector_simple::_cut_tend [protected, inherited]

Definition at line 135 of file pulse_selector_simple.hh.

Referenced by pulse_selector_simple::range_pulse_end_time(), pulse_selector_simple::reset_cuts(), pulse_selector_simple::select_pulse(), and pulse_selector_simple::set_range_pulse_end_time().

std::pair<PMT::word_t,PMT::word_t> pulse_selector_simple::_cut_timeslice [protected, inherited]

Definition at line 149 of file pulse_selector_simple.hh.

Referenced by pulse_selector_simple::range_timeslice(), pulse_selector_simple::reset_cuts(), pulse_selector_simple::select_pulse(), and pulse_selector_simple::set_range_timeslice().

std::pair<double,double> pulse_selector_simple::_cut_tstart [protected, inherited]

pairs to define a range of pulse parameters for displaying pulses.

Definition at line 135 of file pulse_selector_simple.hh.

Referenced by pulse_selector_simple::range_pulse_start_time(), pulse_selector_simple::reset_cuts(), pulse_selector_simple::select_pulse(), and pulse_selector_simple::set_range_pulse_start_time().

std::pair<double,double> pulse_selector_simple::_cut_tstart_reco [protected, inherited]

Definition at line 135 of file pulse_selector_simple.hh.

Referenced by pulse_selector_simple::range_pulse_start_time_reco(), pulse_selector_simple::reset_cuts(), pulse_selector_simple::select_pulse(), and pulse_selector_simple::set_range_pulse_start_time_reco().

TFile* ana_base::_fout [protected, inherited]

Analysis output file pointer.

Definition at line 46 of file ana_base.hh.

Referenced by ana_base::ana_base(), waveform_sampler::finalize(), pulse_reco::finalize(), pulse_analyzer::finalize(), pmtbaseline_ana::finalize(), pmtbaseline::finalize(), led_pulse_analyzer::finalize(), beamgate_debugger::finalize(), pulse_analyzer::initialize(), pmt_slow_encoder::pmt_slow_encoder(), pmtbaseline::pmtbaseline(), pmtbaseline_ana::pmtbaseline_ana(), pulse_selector_base::pulse_selector_base(), pulse_selector_simple::pulse_selector_simple(), waveform_sampler::sample_waveform(), ana_base::set_output_file(), and waveform_sampler::waveform_sampler().

PMT::word_t led_pulse_selector::_frame_size [private]

Definition at line 76 of file led_pulse_selector.hh.

Referenced by analyze(), initialize(), led_pulse_selector(), select_pulse(), and set_frame_size().

std::string decoder_base::_name [protected, inherited]

class name holder

Definition at line 53 of file decoder_base.hh.

Referenced by algo_base::algo_base(), algo_fem_decoder_base::algo_fem_decoder_base(), algo_fixed_window::algo_fixed_window(), algo_slow_readout_decoder::algo_slow_readout_decoder(), algo_threshold::algo_threshold(), algo_tpc_huffman::algo_tpc_huffman(), algo_trig_decoder::algo_trig_decoder(), ana_base::ana_base(), ana_processor::ana_processor(), beamgate_debugger::beamgate_debugger(), bin_io_handler::bin_io_handler(), decoder_base::class_name(), led_pulse_analyzer::led_pulse_analyzer(), led_pulse_selector(), pmt_slow_encoder::pmt_slow_encoder(), pmtbaseline::pmtbaseline(), pmtbaseline_ana::pmtbaseline_ana(), preco_algo_base::preco_algo_base(), pulse_analyzer::pulse_analyzer(), pulse_reco::pulse_reco(), pulse_selector_base::pulse_selector_base(), pulse_selector_simple::pulse_selector_simple(), pulse_viewer::pulse_viewer(), reco_wf::reco_wf(), storage_manager::storage_manager(), and waveform_sampler::waveform_sampler().

DATA_STRUCT::DATA_TYPE pulse_selector_base::_pulse_type [protected, inherited]

Definition at line 51 of file pulse_selector_base.hh.

Referenced by analyze(), led_pulse_selector(), pulse_selector_base::pulse_selector_base(), pulse_selector_base::pulse_type(), and pulse_selector_base::set_pulse_type().

PMT::ch_number_t led_pulse_selector::_ref_ch [private]

Definition at line 74 of file led_pulse_selector.hh.

Referenced by analyze(), initialize(), led_pulse_selector(), and set_ref_channel().

std::set<PMT::word_t> led_pulse_selector::_ref_time [private]

Definition at line 80 of file led_pulse_selector.hh.

Referenced by analyze(), clear_event(), and select_pulse().

PMT::word_t led_pulse_selector::_time_cut [private]

Definition at line 78 of file led_pulse_selector.hh.

Referenced by initialize(), led_pulse_selector(), select_pulse(), and set_time_cut().

bool decoder_base::_verbosity[MSG::MSG_TYPE_MAX] [protected, inherited]

holder for enabled message levels

Definition at line 51 of file decoder_base.hh.

Referenced by reco_wf::analyze(), algo_slow_readout_decoder::check_event_quality(), storage_manager::close(), decoder_manager::decode(), algo_slow_readout_decoder::decode_ch_word(), algo_pmt_xmit::decode_ch_word(), algo_slow_readout_decoder::decode_event_header(), algo_fem_decoder_base::decode_fem_header(), algo_trig_decoder::decode_trigger_words(), decoder_manager::finalize(), beamgate_debugger::finalize(), ana_processor::finalize(), decoder_manager::initialize(), beamgate_debugger::initialize(), ana_processor::initialize(), storage_manager::open(), beamgate_debugger::prepare_histo(), storage_manager::prepare_tree(), algo_tpc_xmit::process_ch_word(), algo_tpc_huffman::process_ch_word(), algo_slow_readout_decoder::process_ch_word(), algo_pmt_xmit::process_ch_word(), algo_tpc_xmit::process_event_last_word(), algo_pmt_xmit::process_event_last_word(), algo_fem_decoder_base::process_fem_header(), algo_pmt_xmit::process_fem_last_word(), algo_xmit_decoder::process_header(), algo_slow_readout_decoder::process_header(), algo_fem_decoder_base::process_word(), bin_io_handler::read_multi_word(), storage_manager::reset(), beamgate_debugger::reset(), ana_processor::reset(), decoder_manager::run(), ana_processor::run(), decoder_base::set_verbosity(), algo_tpc_xmit::store_event(), and algo_pmt_xmit::store_event().

MSG::Level decoder_base::_verbosity_level [protected, inherited]

holder for specified verbosity level

Definition at line 52 of file decoder_base.hh.

Referenced by pulse_viewer::analyze(), decoder_base::get_verbosity(), pulse_viewer::initialize(), decoder_manager::initialize(), ana_processor::initialize(), bin_io_handler::read_multi_word(), bin_io_handler::read_word(), and decoder_base::set_verbosity().


The documentation for this class was generated from the following files:
Generated on Mon Apr 7 15:35:13 2014 for MyProject by  doxygen 1.4.7