pulse_selector_simple.hh

Go to the documentation of this file.
00001 
00015 #ifndef PULSE_SELECTOR_SIMPLE_HH
00016 #define PULSE_SELECTOR_SIMPLE_HH
00017 
00018 #include "pulse_selector_base.hh"
00019 
00024 class pulse_selector_simple : public pulse_selector_base {
00025 
00026 public:
00027 
00029   pulse_selector_simple();
00030 
00032   virtual ~pulse_selector_simple(){};
00033 
00037   virtual bool initialize(){return true;};
00038 
00042   virtual bool analyze(storage_manager* storage){return true;};
00043 
00047   virtual bool finalize(){return true;};
00048 
00049   void reset_cuts();
00050 
00051   virtual bool select_pulse(const pulse_info* data);
00052 
00053   //
00054   // Setters
00055   //
00056 
00058   void set_range_pulse_start_time(double v1, double v2)   {_cut_tstart.first=v1;   _cut_tstart.second=v2;   };
00059 
00061   void set_range_pulse_start_time_reco(double v1, double v2)   {_cut_tstart_reco.first=v1;   _cut_tstart_reco.second=v2;   };
00062 
00064   void set_range_pulse_end_time(double v1, double v2)     {_cut_tend.first=v1;     _cut_tend.second=v2;     };
00065 
00067   void set_range_pulse_amp(double v1, double v2)          {_cut_amp.first=v1;      _cut_amp.second=v2;      };
00068 
00070   void set_range_pulse_charge(double v1,double v2)        {_cut_charge.first=v1;   _cut_charge.second=v2;   };
00071 
00073   void set_range_ped_mean(double v1, double v2)           {_cut_pedbase.first=v1;  _cut_pedbase.second=v2;  };
00074 
00076   void set_range_ped_rms(double v1, double v2)            {_cut_pedrms.first=v1;   _cut_pedrms.second=v2;   };
00077 
00079   void set_range_frame_id(PMT::word_t v1, PMT::word_t v2) {_cut_frame_id.first=v1; _cut_frame_id.second=v2; };
00080 
00082   void set_range_timeslice(PMT::word_t v1, PMT::word_t v2) {_cut_timeslice.first=v1; _cut_timeslice.second=v2; };
00083 
00085   void set_range_channel(PMT::ch_number_t v1, PMT::ch_number_t v2) {_cut_channels.first=v1; _cut_channels.second=v2;};
00086 
00088   void set_range_sum_charge(double v1, double v2)         {_cut_sum_charge.first=v1; _cut_sum_charge.second=v2;};
00089 
00091   void set_range_sum_peak(double v1, double v2)           {_cut_sum_peak.first=v1; _cut_sum_peak.second=v2;};
00092 
00094   void set_range_npulse(double v1, double v2)             {_cut_npulse.first=v1; _cut_npulse.second=v2;};
00095 
00096 
00097   //
00098   // Getters
00099   //
00100 
00102   const std::pair<double,double> range_pulse_start_time() const   {return _cut_tstart;};
00103 
00105   const std::pair<double,double> range_pulse_start_time_reco() const   {return _cut_tstart_reco;};
00106 
00108   const std::pair<double,double> range_pulse_end_time() const     {return _cut_tend;};
00109 
00111   const std::pair<double,double> range_pulse_amp() const          {return _cut_amp;};
00112 
00114   const std::pair<double,double> range_pulse_charge() const       {return _cut_charge;};
00115 
00117   const std::pair<double,double> range_ped_mean() const           {return _cut_pedbase;};
00118 
00120   const std::pair<double,double> range_ped_rms() const            {return _cut_pedrms;};
00121 
00123   const std::pair<PMT::word_t,PMT::word_t> range_frame_id() const {return _cut_frame_id;};
00124 
00126   const std::pair<PMT::word_t,PMT::word_t> range_timeslice() const {return _cut_timeslice;};
00127 
00129   const std::pair<PMT::word_t,PMT::word_t> range_channel() const  {return _cut_channels;};
00130 
00132   const std::pair<double,double> range_sum_charge() const         {return _cut_sum_charge;};
00133 
00135   const std::pair<double,double> range_sum_peak() const           {return _cut_sum_peak;};
00136 
00137 protected:
00138 
00140   std::pair<double,double> _cut_tstart, _cut_tstart_reco, _cut_tend, _cut_amp, _cut_charge, _cut_pedbase, _cut_pedrms;
00141 
00143   std::pair<double,double> _cut_sum_charge, _cut_sum_peak;
00144 
00146   std::pair<UInt_t,UInt_t> _cut_npulse;  
00147 
00149   std::pair<PMT::word_t,PMT::word_t>  _cut_frame_id, _cut_timeslice;
00150 
00152   std::pair<PMT::ch_number_t,PMT::ch_number_t> _cut_channels;
00153 };
00154 
00155 #endif
00156  // end of doxygen group 

Generated on Mon Apr 7 15:35:12 2014 for MyProject by  doxygen 1.4.7