Class managing the serialization of event information in a simple ROOT tree. More...
#include <EventInfoTree.h>
Public Member Functions | |
EventInfoTree (TTree &tree, bool fillGen=true, bool fillEDep=true) | |
Creates the required branches and assigns addresses to them. More... | |
void | assignEvent (EventInfo_t const &info) |
Fills the information of the specified event. More... | |
Public Member Functions inherited from icarus::trigger::details::TreeHolder | |
TreeHolder ()=default | |
TreeHolder (TTree &tree) | |
TTree & | tree () |
TTree const & | tree () const |
Public Attributes | |
bool const | fDoGen = true |
bool const | fDoEDep = true |
UInt_t | fCC |
UInt_t | fNC |
Int_t | fIntType |
Double_t | fTime |
Double_t | fNuE |
Double_t | fOutLeptE |
Double_t | fTotE |
Double_t | fSpillE |
Double_t | fPreSpillE |
Double_t | fActiveE |
Double_t | fSpillActiveE |
Double_t | fPreSpillActiveE |
UInt_t | fNVertices |
std::vector< geo::Point_t > | fVertices |
Bool_t | fInActive |
Class managing the serialization of event information in a simple ROOT tree.
The tree is supplied by the caller. This object will create the proper branches into the tree and assign addresses to them. Then it will assume they will stay assigned.
On assignEvent()
, the branch addresses are assigned the values from the event information. The tree is not Fill()
-ed.
The tree structure is: CC/i:NC/i:IntType/I:Time/D:NuE/D:OutLeptE/D:TotE/D:SpillE/D:InActive/O
, with a single branch per element.
Branches:
CC
(unsigned integer): number of neutrino CC interactions in the eventNC
(unsigned integer): number of neutrino NC interactions in the eventIntType
(integer): code of interaction type (see simb::int_type_
)Time
(double): time of the interaction in simulation time scaleNuE
(double): energy of the generated initial state neutrino [GeV]OutLeptE
(double): energy of the generated final state lepton [GeV]TotE
(double): total deposited energy in the event [GeV]SpillE
(double): total deposited energy during the beam gate [GeV]PreSpillE
(double): total deposited energy during the pre-spill window [GeV]ActiveE
(double): energy deposited in active volume [GeV]SpillActiveE
(double): energy deposited in active volume during the beam gate [GeV]PreSpillActiveE
(double): energy deposited in active volume during the pre-spill window [GeV]InActive
(bool): whether an interaction happened in active volume' this requires an interaction vertex (e.g. cosmic rays are out)NVertices
(unsigned integer): number of interaction vertices in eventVertices_
(list of points): the location of all the interaction vertices in the event; it's a vector of GenVector 3D points (can access coordinates as Vertices.X()
or Vertices.fCoordinates.fX
) Definition at line 69 of file EventInfoTree.h.
Creates the required branches and assigns addresses to them.
tree | the tree to be filled |
fillGen | (default: true ) create and fill generator info branches |
fillEdep | (default: true ) create and fill energy deposition branches |
Definition at line 21 of file EventInfoTree.cxx.
void EventInfoTree::assignEvent | ( | EventInfo_t const & | info | ) |
Fills the information of the specified event.
info | event information to fill the tree with |
inPlots | whether this event is plotted (as opposed to filtered out) |
Definition at line 52 of file EventInfoTree.cxx.
Double_t icarus::trigger::details::EventInfoTree::fActiveE |
Definition at line 99 of file EventInfoTree.h.
UInt_t icarus::trigger::details::EventInfoTree::fCC |
Definition at line 90 of file EventInfoTree.h.
bool const icarus::trigger::details::EventInfoTree::fDoEDep = true |
Definition at line 88 of file EventInfoTree.h.
bool const icarus::trigger::details::EventInfoTree::fDoGen = true |
Definition at line 87 of file EventInfoTree.h.
Bool_t icarus::trigger::details::EventInfoTree::fInActive |
Definition at line 105 of file EventInfoTree.h.
Int_t icarus::trigger::details::EventInfoTree::fIntType |
Definition at line 92 of file EventInfoTree.h.
UInt_t icarus::trigger::details::EventInfoTree::fNC |
Definition at line 91 of file EventInfoTree.h.
Double_t icarus::trigger::details::EventInfoTree::fNuE |
Definition at line 94 of file EventInfoTree.h.
UInt_t icarus::trigger::details::EventInfoTree::fNVertices |
Definition at line 102 of file EventInfoTree.h.
Double_t icarus::trigger::details::EventInfoTree::fOutLeptE |
Definition at line 95 of file EventInfoTree.h.
Double_t icarus::trigger::details::EventInfoTree::fPreSpillActiveE |
Definition at line 101 of file EventInfoTree.h.
Double_t icarus::trigger::details::EventInfoTree::fPreSpillE |
Definition at line 98 of file EventInfoTree.h.
Double_t icarus::trigger::details::EventInfoTree::fSpillActiveE |
Definition at line 100 of file EventInfoTree.h.
Double_t icarus::trigger::details::EventInfoTree::fSpillE |
Definition at line 97 of file EventInfoTree.h.
Double_t icarus::trigger::details::EventInfoTree::fTime |
Definition at line 93 of file EventInfoTree.h.
Double_t icarus::trigger::details::EventInfoTree::fTotE |
Definition at line 96 of file EventInfoTree.h.
std::vector<geo::Point_t> icarus::trigger::details::EventInfoTree::fVertices |
Definition at line 103 of file EventInfoTree.h.