9 #ifndef ICARUSCODE_PMT_TRIGGER_ALGORITHM_DETAILS_EVENTINFO_T_H
10 #define ICARUSCODE_PMT_TRIGGER_ALGORITHM_DETAILS_EVENTINFO_T_H
25 namespace icarus::trigger::details {
240 void dump(std::ostream& out)
const;
246 static constexpr std::size_t
itWCC { 0U };
247 static constexpr std::size_t
itWNC { 1U };
301 inline std::ostream& icarus::trigger::details::operator<<
303 {
info.dump(out);
return out; }
309 #endif // ICARUSCODE_PMT_TRIGGER_ALGORITHM_DETAILS_EVENTINFO_T_H
bool isInActiveVolume() const
Returns whether there is an interaction within the active volume.
bool fHasDepEnergy
Whether deposited energy info is available.
void SetNu_mu(bool numu)
Marks the flavor of the neutrino in the first interaction.
std::vector< geo::Point_t > fVertices
Position of all vertices.
GeV fEnergyDepPreSpillActive
Energy deposited in active volume in pre-spill window.
GeV NeutrinoEnergy() const
Returns the neutrino energy [GeV].
GeV fEnergyDepSpillActive
Energy deposited in active volume in spill.
void InsertVertex(geo::Point_t const &vertex, std::size_t beforeIndex)
std::array< unsigned int, NInteractionTypes > fInteractions
void SetDepositedEnergyInSpill(GeV e)
Sets the energy of the event deposited during beam gate [GeV].
void setDep()
Declares that this object has deposited energy information.
void setGen()
Declares that this object has generator information.
GeV LeptonEnergy() const
Returns the lepton energy [GeV].
bool hasDepEnergy() const
Returns whether generator information is available.
bool fInActiveVolume
Whether the event has activity inside the active volume.
bool hasVertex() const
Returns whether this type of event has a known vertex.
void SetInteractionTime(simulation_time time)
Sets the time of the first interaction.
EventInfo_t()
Constructor. As if nobody noticed.
void SetDepositedEnergyInPreSpillInActiveVolume(GeV e)
void SetDepositedEnergyInPreSpill(GeV e)
Sets the energy of the event deposited during pre-spill window [GeV].
Information about the event.
GeV DepositedEnergyInPreSpill() const
void AddVertex(geo::Point_t const &vertex)
Adds a point to the list of interaction vertices in the event.
bool isWeakChargedCurrent() const
Returns whether the event is generated as a neutrino CC interaction.
void AddWeakNeutralCurrentInteractions(unsigned int n=1U)
Marks this event as including n more weak neutral current interactions.
GeV fEnergyDepTotal
Total deposited energy.
void SetLeptonEnergy(GeV eL)
Sets the lepton energy.
Definitions of geometry vector data types.
timescale_traits< SimulationTimeCategory >::time_point_t simulation_time
A point in time on the simulation time scale.
A value measured in the specified unit.
unsigned int nWeakChargedCurrentInteractions() const
Returns the number of weak charged current interactions in the event.
static constexpr std::size_t itWNC
Neutral weak current.
simulation_time fInteractionTime
Time of the first interaction [ns].
void SetInActiveVolume(bool active=true)
Set whether the event has relevant activity in the active volume.
void dump(std::ostream &out) const
Prints the content of the object into a stream.
void SetNeutrinoEnergy(GeV eNu)
Sets the neutrino energy.
bool isNu_mu() const
Returns which neutrino flavor is present in an event.
GeV DepositedEnergyInSpill() const
Returns the total energy deposited in the detector during beam [GeV].
gigaelectronvolt_as<> gigaelectronvolt
Type of energy stored in gigaelectronvolt, in double precision.
simulation_time InteractionTime() const
Returns the time of the first interaction, in simulation time scale [ns].
static constexpr std::size_t NInteractionTypes
detinfo::timescales::simulation_time simulation_time
GeV DepositedEnergyInSpillInActiveVolume() const
Returns the energy deposited in the active volume during the beam [GeV].
auto begin(FixedBins< T, C > const &) noexcept
bool hasGenerated() const
Returns whether generator information is available.
GeV DepositedEnergyInPreSpillInActiveVolume() const
bool isWeakNeutralCurrent() const
Returns whether the event is generated as a neutrino NC interaction.
void SetNeutrinoPDG(int NU)
Marks the neutrino type of the first interaction in the event.
Dimensioned variables representing energy.
bool isNeutrino() const
Returns whether the event is generated as a neutrino interaction.
unsigned int nVertices() const
Returns the number of known interaction vertices.
std::ostream & operator<<(std::ostream &out, EventInfo_t const &info)
void SetDepositedEnergy(GeV e)
Sets the total deposited energy of the event [GeV].
Data types for detinfo::DetectorTimings.
GeV DepositedEnergy() const
Returns the total energy deposited in the detector during the event [GeV].
GeV DepositedEnergyInActiveVolume() const
Returns the energy deposited in the active volume during the event [GeV].
static constexpr std::size_t itWCC
Charged weak current.
void SetDepositedEnergyInSpillInActiveVolume(GeV e)
GeV fEnergyDepSpill
Energy deposited in spill.
Selected information about the event.
unsigned int nWeakNeutralCurrentInteractions() const
Returns the number of weak neutral current interactions in the event.
ROOT::Math::PositionVector3D< ROOT::Math::Cartesian3D< double >, ROOT::Math::GlobalCoordinateSystemTag > Point_t
Type for representation of position in physical 3D space.
void SetInteractionType(int type)
Sets the interaction type.
void AddWeakChargedCurrentInteractions(unsigned int n=1U)
Marks this event as including n more weak charged current interactions.
void SetDepositedEnergyInActiveVolume(GeV e)
Sets the total deposited energy of the event in active volume [GeV].
int NeutrinoPDG() const
Returns the neutrino PDG code.
bool fHasGenerated
Whether generation information is available.
std::vector< geo::Point_t > const & Vertices() const
Returns the list of a known interaction vertex.
GeV fEnergyDepPreSpill
Energy deposited in pre-spill.
unsigned int nWeakCurrentInteractions() const
Returns the number of weak current interactions in the event.
int InteractionType() const
Returns the interaction type.