Equivalent of MCTrajectory in LArSoft. More...
#include <mctrajectory.hh>
Public Member Functions | |
mctrajectory (DATA::DATA_TYPE type=DATA::MCTrajectory) | |
virtual | ~mctrajectory () |
virtual void | clear_data () |
--- Utility ---/// | |
void | push_back (const larlight::mcstep &step) |
--- Setter/Adders ---// | |
void | push_back (const TLorentzVector p, const TLorentzVector m) |
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 | |
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. |
Equivalent of MCTrajectory in LArSoft.
Definition at line 74 of file mctrajectory.hh.
larlight::mctrajectory::mctrajectory | ( | DATA::DATA_TYPE | type = DATA::MCTrajectory |
) |
Definition at line 9 of file mctrajectory.cc.
References larlight::data_base::_type, clear_data(), larlight::DATA::DATA_TREE_NAME, larlight::MSG::ERROR, larlight::DATA::MCTrajectory, and larlight::Message::send().
00009 : std::vector<larlight::mcstep>(), 00010 data_base(type) 00011 //*********************************************************************** 00012 { 00013 if(_type!=DATA::MCTrajectory) { 00014 00015 Message::send(MSG::ERROR,__FUNCTION__, 00016 Form("Provided data type (%s) not supported! Reset to default.",DATA::DATA_TREE_NAME[_type].c_str())); 00017 00018 _type=DATA::MCTrajectory; 00019 00020 } 00021 clear_data(); 00022 }
virtual larlight::mctrajectory::~mctrajectory | ( | ) | [inline, virtual] |
Definition at line 81 of file mctrajectory.hh.
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 }
virtual void larlight::mctrajectory::clear_data | ( | ) | [inline, virtual] |
--- Utility ---///
Reimplemented from larlight::data_base.
Definition at line 84 of file mctrajectory.hh.
Referenced by larlight::mcpart::clear_data(), and mctrajectory().
00084 {data_base::clear_data(); clear();}
DATA::DATA_TYPE larlight::data_base::data_type | ( | ) | const [inline, inherited] |
data type getter
Reimplemented in larlight::event_base.
Definition at line 48 of file data_base.hh.
References larlight::data_base::_type.
00048 {return _type; }
void larlight::mctrajectory::push_back | ( | const TLorentzVector | p, | |
const TLorentzVector | m | |||
) | [inline] |
Definition at line 89 of file mctrajectory.hh.
References push_back().
00091 { std::vector<larlight::mcstep>::push_back(larlight::mcstep(p,m));}
void larlight::mctrajectory::push_back | ( | const larlight::mcstep & | step | ) | [inline] |
--- Setter/Adders ---//
Definition at line 87 of file mctrajectory.hh.
Referenced by larlight::mcpart::AddTrajectory(), and push_back().
00087 { std::vector<larlight::mcstep>::push_back(step);}
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().
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().
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(), larlight::event_pulse::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(), 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().