PMT-wise data member class to hold a collection of ADC samples. More...
#include <pulse.hh>
Public Member Functions | |
event_pulse (DATA::DATA_TYPE type=DATA::Pulse) | |
Default constructor. | |
event_pulse (const event_pulse &original) | |
Default copy constructor. | |
void | calculate_sum () |
Method to calculate summed variables This iterates over stored pulse and sum charge, peark height, and # pulses. | |
double | sum_charge () const |
Getter for charge sum. | |
double | sum_peak () const |
Getter for summed peak. | |
double | npulse () const |
Getter for summed # of pulses. | |
void | set_sum_charge (double v) |
Setter for charge sum. | |
void | set_sum_peak (double v) |
Setter for summed peak. | |
void | set_npulse (UInt_t v) |
Setter for number of pulses. | |
virtual void | clear_data () |
Method to clear currently held data contents in the buffer. | |
~event_pulse () | |
Default destructor. | |
void | set_run (UInt_t run) |
run number setter | |
void | set_subrun (UInt_t run) |
sub-run number setter | |
void | set_event_id (UInt_t id) |
event-id setter | |
UInt_t | run () const |
run number getter | |
UInt_t | subrun () const |
sub-run number getter | |
UInt_t | event_id () const |
event-id getter | |
DATA::DATA_TYPE | data_type () const |
data type getter | |
void | add_association (DATA::DATA_TYPE type, const std::vector< unsigned short > ass) |
Adder for a set of association. | |
size_t | size_association (DATA::DATA_TYPE type) const |
Getter for # of associations. | |
const std::vector< unsigned short > | association (DATA::DATA_TYPE type, size_t index=0) const |
Getter of an association. | |
Protected Attributes | |
UInt_t | fRunNumber |
Run number. | |
UInt_t | fSubRunNumber |
Sub-Run number. | |
UInt_t | fEventID |
Event ID. | |
DATA::DATA_TYPE | _type |
DATA_TYPE. | |
std::map < larlight::DATA::DATA_TYPE, std::vector< std::vector < unsigned short > > > | _ass |
Association storage ... allow multiple set of associations. | |
Private Member Functions | |
void | init_vars () |
Internal function to reset variables. | |
Private Attributes | |
double | _sum_charge |
summed charge from each pulse | |
double | _sum_peak |
summed peak from each pulse | |
UInt_t | _npulse |
summed number of pulses stored |
PMT-wise data member class to hold a collection of ADC samples.
Definition at line 145 of file pulse.hh.
larlight::event_pulse::event_pulse | ( | DATA::DATA_TYPE | type = DATA::Pulse |
) |
Default constructor.
Definition at line 41 of file pulse.cc.
References larlight::data_base::_type, clear_data(), larlight::DATA::DATA_TREE_NAME, larlight::MSG::ERROR, larlight::DATA::PMTPulse_FixedWin, larlight::DATA::PMTPulse_ThresWin, larlight::DATA::Pulse, larlight::Message::send(), larlight::DATA::TPCPulse_FixedWin, and larlight::DATA::TPCPulse_ThresWin.
00041 : std::vector<larlight::pulse>(), 00042 event_base(type) 00043 { 00044 if(_type!=DATA::PMTPulse_FixedWin && 00045 _type!=DATA::TPCPulse_FixedWin && 00046 _type!=DATA::PMTPulse_ThresWin && 00047 _type!=DATA::TPCPulse_ThresWin && 00048 _type!=DATA::Pulse ) { 00049 00050 Message::send(MSG::ERROR,__FUNCTION__, 00051 Form("Provided data type (%s) not supported! Reset to default.",DATA::DATA_TREE_NAME[_type].c_str())); 00052 00053 _type=DATA::Pulse; 00054 00055 } 00056 clear_data(); 00057 };
larlight::event_pulse::event_pulse | ( | const event_pulse & | original | ) | [inline] |
Default copy constructor.
Definition at line 154 of file pulse.hh.
00155 : std::vector<larlight::pulse>(original), 00156 event_base(original), 00157 _sum_charge(original._sum_charge), 00158 _sum_peak(original._sum_peak), 00159 _npulse(original._npulse) 00160 {}
larlight::event_pulse::~event_pulse | ( | ) | [inline] |
void larlight::data_base::add_association | ( | DATA::DATA_TYPE | type, | |
const std::vector< unsigned short > | ass | |||
) | [inherited] |
Adder for a set of association.
Definition at line 9 of file data_base.cc.
References larlight::data_base::_ass.
const std::vector< unsigned short > larlight::data_base::association | ( | DATA::DATA_TYPE | type, | |
size_t | index = 0 | |||
) | const [inherited] |
Getter of an association.
Definition at line 35 of file data_base.cc.
References larlight::DATA::DATA_TREE_NAME, larlight::MSG::ERROR, and larlight::Message::send().
00037 { 00038 00039 size_t ass_length = size_association(type); 00040 00041 if( !(ass_length) ) { 00042 00043 Message::send(MSG::ERROR,__FUNCTION__, 00044 Form("There is no association to %s",DATA::DATA_TREE_NAME[type].c_str())); 00045 00046 return std::vector<unsigned short>(); 00047 00048 } 00049 00050 if( ass_length <= index ) { 00051 00052 Message::send(MSG::ERROR,__FUNCTION__, 00053 Form("There are only %zu associations. No association @ index=%zu",ass_length,index)); 00054 00055 return std::vector<unsigned short>(); 00056 00057 } 00058 00059 return ((_ass.find(type))->second).at(index); 00060 }
void larlight::event_pulse::calculate_sum | ( | ) |
Method to calculate summed variables This iterates over stored pulse and sum charge, peark height, and # pulses.
Note that, if a user is responsible for storing all pulses, it is faster if a user calculate this sum as (s)he stores pulses, then use setter functions for each parameters to set a value. This method is useful in case a user looses a track OR a user wish to re-calculate the sum on stored pulse for some reasons.
Definition at line 69 of file pulse.cc.
References _npulse, _sum_charge, and _sum_peak.
00069 { 00070 00071 std::vector<pulse>::const_iterator iter(this->begin()); 00072 _sum_charge=0; 00073 _sum_peak=0; 00074 _npulse=0; 00075 while(iter!=this->end()){ 00076 00077 _sum_charge+=(*iter).charge(); 00078 _sum_peak+=(*iter).pulse_peak(); 00079 _npulse++; 00080 } 00081 00082 }
void larlight::event_pulse::clear_data | ( | ) | [virtual] |
Method to clear currently held data contents in the buffer.
Reimplemented from larlight::event_base.
Definition at line 59 of file pulse.cc.
References _npulse, _sum_charge, and _sum_peak.
Referenced by event_pulse().
00059 { 00060 00061 event_base::clear_data(); 00062 clear(); 00063 _sum_charge=-1; 00064 _sum_peak=-1; 00065 _npulse=0; 00066 00067 }
DATA::DATA_TYPE larlight::event_base::data_type | ( | ) | const [inline, inherited] |
data type getter
Reimplemented from larlight::data_base.
Definition at line 112 of file data_base.hh.
References larlight::data_base::_type.
00112 {return _type; }
UInt_t larlight::event_base::event_id | ( | ) | const [inline, inherited] |
event-id getter
Definition at line 110 of file data_base.hh.
References larlight::event_base::fEventID.
Referenced by main(), and larlight::storage_manager::read_event().
00110 { return fEventID; }
void larlight::event_pulse::init_vars | ( | ) | [private] |
Internal function to reset variables.
double larlight::event_pulse::npulse | ( | ) | const [inline] |
UInt_t larlight::event_base::run | ( | ) | const [inline, inherited] |
run number getter
Definition at line 106 of file data_base.hh.
References larlight::event_base::fRunNumber.
00106 { return fRunNumber; }
void larlight::event_base::set_event_id | ( | UInt_t | id | ) | [inline, inherited] |
event-id setter
Definition at line 103 of file data_base.hh.
References larlight::event_base::fEventID.
Referenced by main().
00103 { fEventID = id; }
void larlight::event_pulse::set_npulse | ( | UInt_t | v | ) | [inline] |
void larlight::event_base::set_run | ( | UInt_t | run | ) | [inline, inherited] |
run number setter
Definition at line 99 of file data_base.hh.
References larlight::event_base::fRunNumber.
Referenced by main().
00099 { fRunNumber = run; }
void larlight::event_base::set_subrun | ( | UInt_t | run | ) | [inline, inherited] |
sub-run number setter
Definition at line 101 of file data_base.hh.
References larlight::event_base::fSubRunNumber.
Referenced by main().
00101 { fSubRunNumber = run; }
void larlight::event_pulse::set_sum_charge | ( | double | v | ) | [inline] |
Setter for charge sum.
Definition at line 181 of file pulse.hh.
References _sum_charge.
00181 {_sum_charge=v;}
void larlight::event_pulse::set_sum_peak | ( | double | v | ) | [inline] |
size_t larlight::data_base::size_association | ( | DATA::DATA_TYPE | type | ) | const [inherited] |
Getter for # of associations.
Definition at line 23 of file data_base.cc.
Referenced by larlight::cluster::get_hit_type().
UInt_t larlight::event_base::subrun | ( | ) | const [inline, inherited] |
sub-run number getter
Definition at line 108 of file data_base.hh.
References larlight::event_base::fSubRunNumber.
00108 { return fSubRunNumber; }
double larlight::event_pulse::sum_charge | ( | ) | const [inline] |
Getter for charge sum.
Definition at line 172 of file pulse.hh.
References _sum_charge.
00172 {return _sum_charge;}
double larlight::event_pulse::sum_peak | ( | ) | const [inline] |
std::map<larlight::DATA::DATA_TYPE,std::vector<std::vector<unsigned short> > > larlight::data_base::_ass [protected, inherited] |
Association storage ... allow multiple set of associations.
Definition at line 65 of file data_base.hh.
Referenced by larlight::data_base::add_association(), and larlight::data_base::clear_data().
UInt_t larlight::event_pulse::_npulse [private] |
summed number of pulses stored
Definition at line 203 of file pulse.hh.
Referenced by calculate_sum(), clear_data(), npulse(), and set_npulse().
double larlight::event_pulse::_sum_charge [private] |
summed charge from each pulse
Definition at line 201 of file pulse.hh.
Referenced by calculate_sum(), clear_data(), set_sum_charge(), and sum_charge().
double larlight::event_pulse::_sum_peak [private] |
summed peak from each pulse
Definition at line 202 of file pulse.hh.
Referenced by calculate_sum(), clear_data(), set_sum_peak(), and sum_peak().
DATA::DATA_TYPE larlight::data_base::_type [protected, inherited] |
DATA_TYPE.
Definition at line 62 of file data_base.hh.
Referenced by larlight::calorimetry::calorimetry(), larlight::cluster::cluster(), larlight::data_base::data_base(), larlight::event_base::data_type(), larlight::data_base::data_type(), larlight::endpoint2d::endpoint2d(), larlight::event_calorimetry::event_calorimetry(), larlight::event_cluster::event_cluster(), larlight::event_endpoint2d::event_endpoint2d(), larlight::event_fifo::event_fifo(), larlight::event_hit::event_hit(), larlight::event_mcpart::event_mcpart(), larlight::event_mcshower::event_mcshower(), larlight::event_mctruth::event_mctruth(), event_pulse(), larlight::event_shower::event_shower(), larlight::event_simch::event_simch(), larlight::event_sps::event_sps(), larlight::event_track::event_track(), larlight::event_user::event_user(), larlight::event_vertex::event_vertex(), larlight::event_wire::event_wire(), larlight::fifo::fifo(), larlight::hit::hit(), larlight::mcnu::mcnu(), larlight::mcpart::mcpart(), larlight::mcshower::mcshower(), larlight::mctrajectory::mctrajectory(), larlight::mctruth::mctruth(), larlight::pmtfifo::pmtfifo(), larlight::pulse::pulse(), larlight::fifo::readout_sample_number_16MHz(), larlight::fifo::readout_sample_number_2MHz(), larlight::fifo::readout_sample_number_64MHz(), larlight::shower::shower(), larlight::simch::simch(), larlight::spacepoint::spacepoint(), larlight::tpcfifo::tpcfifo(), larlight::track::track(), larlight::trigger::trigger(), larlight::user_info::user_info(), larlight::vertex::vertex(), and larlight::wire::wire().
UInt_t larlight::event_base::fEventID [protected, inherited] |
Event ID.
Definition at line 123 of file data_base.hh.
Referenced by larlight::event_base::clear_data(), larlight::event_base::event_id(), and larlight::event_base::set_event_id().
UInt_t larlight::event_base::fRunNumber [protected, inherited] |
Run number.
Definition at line 117 of file data_base.hh.
Referenced by larlight::event_base::clear_data(), larlight::event_base::run(), and larlight::event_base::set_run().
UInt_t larlight::event_base::fSubRunNumber [protected, inherited] |
Sub-Run number.
Definition at line 120 of file data_base.hh.
Referenced by larlight::event_base::clear_data(), larlight::event_base::set_subrun(), and larlight::event_base::subrun().