1 #ifndef __JAANET__JAANETTOOLKIT__
2 #define __JAANET__JAANETTOOLKIT__
39 namespace JPP {
using namespace JAANET; }
141 time_range.include(
getTime(*hit));
162 if (time_range.getLength() < T_ns.getLength()) {
163 time_range.setLength(T_ns.getLength());
612 cascade.
E += track->E;
613 cascade.
dir += track->dir * track->E;
614 cascade.
t = track->t;
615 cascade.
pos = track->pos;
bool from_tau(const Hit &hit)
Test whether given hit was produced by a tau.
Router for direct addressing of PMT data in detector data structure.
JVertex3D getVertex(const Trk &track)
Get vertex.
bool is_electron(const Trk &track)
Test whether given track is a (anti-)electron.
int count_electrons(const Evt &evt)
Count the number of electrons in a given event.
JHitType_t
Enumeration of hit types based on km3 codes.
Scattered light from primary shower.
bool is_proton(const Trk &track)
Test whether given track is a (anti-)proton.
const Trk & get_muon(const Evt &evt)
Get first muon from the event tracklist.
Data structure for direction in three dimensions.
const JModule & getModule(const JObjectID &id) const
Get module parameters.
JTrack3E getTrack(const Trk &track)
Get track.
Direct light from delta-rays.
double t
track time [ns] (when the particle is at pos )
Scattered light from muon.
JTransformation3D getTransformation(const Trk &track)
Get transformation.
void add_time_offset(Evt &evt, const double tOff)
Add time offset to mc event; according to current definition, the absolute time of the event is defin...
bool has_neutrino(const Evt &evt)
Test whether given event has an incoming neutrino.
bool is_muon(const Trk &track)
Test whether given track is a (anti-)muon.
bool has_electron(const Evt &evt)
Test whether given event has an electron.
int count_muons(const Evt &evt)
Count the number of muons in a given event.
Router for direct addressing of module data in detector data structure.
#define THROW(JException_t, A)
Marco for throwing exception with std::ostream compatible message.
bool has_particleID(const Trk &track, const int type)
Test whether given track corresponds to given particle type.
int pmt_id
global PMT identifier as found in evt files
Scattered light from Bremsstrahlung.
const JPMT & getPMT(const JPMTAddress &address) const
Get PMT.
unsigned int tdc
hit tdc (=time in ns)
Direct light from Bremsstrahlung.
double getTime(const Hit &hit)
Get true time of hit.
double E
Energy [GeV] (either MC truth or reconstructed)
Direct light from primary shower.
esac $JPP_DIR examples JDetector JTransitTime o $OUTPUT_FILE n N $NPE T $TTS_NS d $DEBUG for HISTOGRAM in tts tt2 pmt
static const int AASHOWER_RECONSTRUCTION_TYPE
AAshower reconstruction type for AAnet.
bool is_noise(const Hit &hit)
Verify hit origin.
JTimeRange getTimeRange(const Evt &event)
Get time range (i.e. time between earliest and latest hit) of Monte Carlo event.
Basic data structure for L0 hit.
bool is_neutrino(const Trk &track)
Test whether given track is a neutrino.
double pure_t
photon time before pmt simultion (MC only)
double getToT(const T &tot, const JCalibration &cal)
Get calibrated time-over-threshold of hit.
double a
hit amplitude (in p.e.)
The Vec class is a straightforward 3-d vector, which also works in pyroot.
Trk get_hadronic_cascade(const Evt &evt)
Auxiliary function to get average direction and total energy of a hadronic cascade.
const Trk & get_electron(const Evt &evt)
Get first electron from the event tracklist.
JAxis3D getAxis(const Trk &track)
Get axis.
Data structure for PMT geometry and calibration.
double pure_a
amptitude before pmt simution (MC only)
Direct access to PMT in detector data structure.
Vec dir
hit direction; i.e. direction of the PMT
const JPMT & getPMT(const int index) const
Get PMT.
Vec & normalize()
Normalise this vector.
bool is_photon(const Trk &track)
Test whether given track is a photon or neutral pion.
bool from_hadron(const Hit &hit)
Test whether given hit was produced by a hadronic shower.
int type
MC: particle type in PDG encoding.
Direct access to module in detector data structure.
bool is_pion(const Trk &track)
Test whether given track is a charged pion.
Vec pos
postion of the track at time t [m]
int count_taus(const Evt &evt)
Count the number of taus in a given event.
const Trk & get_tau(const Evt &evt)
Get first tau from the event tracklist.
Auxiliary class to define a range between two values.
bool has_muon(const Evt &evt)
Test whether given event has a muon.
std::vector< Hit > mc_hits
MC: list of MC truth hits.
double t
hit time (from calibration or MC truth)
Data structure for L0 hit.
int dom_id
module identifier from the data (unique in the detector).
Scattered light from delta-rays.
Definition of particle types.
unsigned int tot
tot value as stored in raw data (int for pyroot)
bool has_tau(const Evt &evt)
Test whether given event has a tau.
JDirection3D getDirection(const Vec &v)
Get direction.
unsigned int channel_id
PMT channel id {0,1, .., 31} local to moduke.
double getNPE(const Hit &hit)
Get true charge of hit.
Data structure for position in three dimensions.
bool is_neutron(const Trk &track)
Test whether given track is a (anti-)neutron.
Exception for accessing an index in a collection that is outside of its range.
const Trk & get_neutrino(const Evt &evt)
Get incoming neutrino.
bool is_hadron(const Trk &track)
Test whether given track is a hadron.
JHitL0 getHit(const Hit &hit)
Get transformation.
bool is_tau(const Trk &track)
Test whether given track is a (anti-)tau.
bool from_electron(const Hit &hit)
Test whether given hit was produced by an electron.
The Trk class represents a Monte Carlo (MC) particle as well as a reconstructed track/shower.
int type
particle type or parametrisation used for hit (mc only)
std::vector< Trk > mc_trks
MC: list of MC truth tracks.
The Evt class respresent a Monte Carlo (MC) event as well as an offline event.
int count_hadrons(const Evt &evt)
Count the number of hadrons in a given event (not including neutral pions)
JPosition3D getPosition(const Vec &v)
Get position.
bool from_muon(const Hit &hit)
Test whether given hit was produced by a muon.