Creates a simple ROOT tree with tracking and calorimetry information. More...
Public Member Functions | |
AnalysisTree (fhicl::ParameterSet const &pset) | |
virtual | ~AnalysisTree () |
void | analyze (const art::Event &evt) |
read access to event More... | |
void | beginSubRun (const art::SubRun &sr) |
Private Member Functions | |
void | HitsPurity (detinfo::DetectorClocksData const &clockData, std::vector< art::Ptr< recob::Hit > > const &hits, Int_t &trackid, Float_t &purity, double &maxe) |
void | HitTruth (detinfo::DetectorClocksData const &clockData, art::Ptr< recob::Hit > const &hit, Int_t &truthid, Float_t &frac, Float_t &energy, Float_t &numElectrons) |
bool | HitTruthId (detinfo::DetectorClocksData const &clockData, art::Ptr< recob::Hit > const &hit, Int_t &mcid) |
bool | TrackIdToMCTruth (Int_t const trkID, art::Ptr< simb::MCTruth > &mctruth) |
bool | DoesHitHaveSimChannel (std::vector< const sim::SimChannel * > chans, art::Ptr< recob::Hit > const &hit) |
double | length (const recob::Track &track) |
double | length (const simb::MCParticle &part, TVector3 &start, TVector3 &end) |
double | bdist (const recob::Track::Point_t &pos) |
size_t | GetNTrackers () const |
Returns the number of trackers configured. More... | |
void | CreateData (bool bClearData=false) |
Creates the structure for the tree data; optionally initializes it. More... | |
void | SetAddresses () |
Sets the addresses of all the tree branches, creating the missing ones. More... | |
void | SetTrackerAddresses (size_t iTracker) |
void | SetVerticesAddresses (size_t iTracker) |
void | SetShowerAddresses () |
Sets the addresses of all the tree branches, creating the missing ones. More... | |
void | CreateTree (bool bClearData=false) |
Create the output tree and the data structures, if needed. More... | |
void | DestroyData () |
Destroy the local buffers (existing branches will point to invalid address!) More... | |
void | CheckData (std::string caller) const |
Helper function: throws if no data structure is available. More... | |
void | CheckTree (std::string caller) const |
Helper function: throws if no tree is available. More... | |
Private Attributes | |
TTree * | fTree |
AnalysisTreeDataStruct * | fData |
AnalysisTreeDataStruct::SubRunData_t | SubRunData |
std::string | fDigitModuleLabel |
std::string | fHitsModuleLabel |
std::string | fLArG4ModuleLabel |
std::string | fTPCSimChannelModuleLabel |
std::string | fCalDataModuleLabel |
std::string | fGenieGenModuleLabel |
std::string | fCryGenModuleLabel |
std::string | fG4ModuleLabel |
std::string | fPFParticleModuleLabel |
std::string | fShowerModuleLabel |
std::vector< std::string > | fVertexModuleLabel |
std::vector< std::string > | fTrackModuleLabel |
std::vector< std::string > | fCalorimetryModuleLabel |
std::vector< std::string > | fParticleIDModuleLabel |
std::string | fPOTModuleLabel |
bool | fUseBuffer |
whether to use a permanent buffer (faster, huge memory) More... | |
bool | fSaveAuxDetInfo |
whether to extract and save auxiliary detector data More... | |
bool | fSaveCryInfo |
bool | fSaveGenieInfo |
whether to extract and save CRY particle data More... | |
bool | fSaveGeantInfo |
whether to extract and save Genie information More... | |
bool | fSaveHitInfo |
whether to extract and save Geant information More... | |
bool | fSaveTrackInfo |
whether to extract and save Hit information More... | |
bool | fSaveShowerInfo |
whether to extract and save Track information More... | |
bool | fSaveVertexInfo |
whether to extract and save Shower information More... | |
bool | fSaveSliceInfo |
whether to extract and save Vertex information More... | |
std::vector< bool > | fSaveHierarchyInfo |
whether to extract and save Slice information More... | |
bool | fSaveShowerHierarchyInfo |
if the user wants to access the showers with their hierarchy More... | |
std::vector< std::string > | fCosmicTaggerAssocLabel |
std::vector< std::string > | fFlashMatchAssocLabel |
bool | isCosmics |
if it contains cosmics More... | |
bool | fSaveCaloCosmics |
save calorimetry information for cosmics More... | |
float | fG4minE |
Energy threshold to save g4 particle info. More... | |
calo::CalorimetryAlg | fCaloAlg |
art::ServiceHandle < cheat::ParticleInventoryService > | pi_serv |
art::ServiceHandle < cheat::BackTrackerService > | bt_serv |
Creates a simple ROOT tree with tracking and calorimetry information.
Definition at line 819 of file sbndcode/sbndcode/AnalysisTree/AnalysisTree_module.cc.
|
explicit |
Definition at line 2100 of file sbndcode/sbndcode/AnalysisTree/AnalysisTree_module.cc.
|
virtual |
void sbnd::AnalysisTree::analyze | ( | const art::Event & | evt | ) |
read access to event
|
private |
void sbnd::AnalysisTree::beginSubRun | ( | const art::SubRun & | sr | ) |
|
inlineprivate |
Helper function: throws if no data structure is available.
Definition at line 969 of file sbndcode/sbndcode/AnalysisTree/AnalysisTree_module.cc.
|
inlineprivate |
Helper function: throws if no tree is available.
Definition at line 976 of file sbndcode/sbndcode/AnalysisTree/AnalysisTree_module.cc.
|
inlineprivate |
Creates the structure for the tree data; optionally initializes it.
Definition at line 901 of file sbndcode/sbndcode/AnalysisTree/AnalysisTree_module.cc.
|
private |
Create the output tree and the data structures, if needed.
|
inlineprivate |
Destroy the local buffers (existing branches will point to invalid address!)
Definition at line 966 of file sbndcode/sbndcode/AnalysisTree/AnalysisTree_module.cc.
|
private |
|
inlineprivate |
Returns the number of trackers configured.
Definition at line 898 of file sbndcode/sbndcode/AnalysisTree/AnalysisTree_module.cc.
|
private |
|
private |
|
private |
|
private |
|
private |
|
inlineprivate |
Sets the addresses of all the tree branches, creating the missing ones.
Definition at line 923 of file sbndcode/sbndcode/AnalysisTree/AnalysisTree_module.cc.
|
inlineprivate |
Sets the addresses of all the tree branches, creating the missing ones.
Definition at line 956 of file sbndcode/sbndcode/AnalysisTree/AnalysisTree_module.cc.
|
inlineprivate |
Sets the addresses of all the tree branches of the specified tracking algo, creating the missing ones
Definition at line 931 of file sbndcode/sbndcode/AnalysisTree/AnalysisTree_module.cc.
|
inlineprivate |
Definition at line 943 of file sbndcode/sbndcode/AnalysisTree/AnalysisTree_module.cc.
|
private |
|
private |
Definition at line 895 of file sbndcode/sbndcode/AnalysisTree/AnalysisTree_module.cc.
|
private |
Definition at line 858 of file sbndcode/sbndcode/AnalysisTree/AnalysisTree_module.cc.
|
private |
Definition at line 889 of file sbndcode/sbndcode/AnalysisTree/AnalysisTree_module.cc.
|
private |
Definition at line 866 of file sbndcode/sbndcode/AnalysisTree/AnalysisTree_module.cc.
|
private |
Definition at line 882 of file sbndcode/sbndcode/AnalysisTree/AnalysisTree_module.cc.
|
private |
Definition at line 860 of file sbndcode/sbndcode/AnalysisTree/AnalysisTree_module.cc.
|
private |
Definition at line 849 of file sbndcode/sbndcode/AnalysisTree/AnalysisTree_module.cc.
|
private |
Definition at line 854 of file sbndcode/sbndcode/AnalysisTree/AnalysisTree_module.cc.
|
private |
Definition at line 883 of file sbndcode/sbndcode/AnalysisTree/AnalysisTree_module.cc.
|
private |
Energy threshold to save g4 particle info.
Definition at line 887 of file sbndcode/sbndcode/AnalysisTree/AnalysisTree_module.cc.
|
private |
Definition at line 861 of file sbndcode/sbndcode/AnalysisTree/AnalysisTree_module.cc.
|
private |
Definition at line 859 of file sbndcode/sbndcode/AnalysisTree/AnalysisTree_module.cc.
|
private |
Definition at line 855 of file sbndcode/sbndcode/AnalysisTree/AnalysisTree_module.cc.
|
private |
Definition at line 856 of file sbndcode/sbndcode/AnalysisTree/AnalysisTree_module.cc.
|
private |
Definition at line 867 of file sbndcode/sbndcode/AnalysisTree/AnalysisTree_module.cc.
|
private |
Definition at line 862 of file sbndcode/sbndcode/AnalysisTree/AnalysisTree_module.cc.
|
private |
Definition at line 868 of file sbndcode/sbndcode/AnalysisTree/AnalysisTree_module.cc.
|
private |
whether to extract and save auxiliary detector data
Definition at line 870 of file sbndcode/sbndcode/AnalysisTree/AnalysisTree_module.cc.
|
private |
save calorimetry information for cosmics
Definition at line 886 of file sbndcode/sbndcode/AnalysisTree/AnalysisTree_module.cc.
|
private |
Definition at line 871 of file sbndcode/sbndcode/AnalysisTree/AnalysisTree_module.cc.
|
private |
whether to extract and save Genie information
Definition at line 873 of file sbndcode/sbndcode/AnalysisTree/AnalysisTree_module.cc.
|
private |
whether to extract and save CRY particle data
Definition at line 872 of file sbndcode/sbndcode/AnalysisTree/AnalysisTree_module.cc.
|
private |
whether to extract and save Slice information
if the user wants to access the tracks with their hierarchy for each tracker
Definition at line 879 of file sbndcode/sbndcode/AnalysisTree/AnalysisTree_module.cc.
|
private |
whether to extract and save Geant information
Definition at line 874 of file sbndcode/sbndcode/AnalysisTree/AnalysisTree_module.cc.
|
private |
if the user wants to access the showers with their hierarchy
Definition at line 880 of file sbndcode/sbndcode/AnalysisTree/AnalysisTree_module.cc.
|
private |
whether to extract and save Track information
Definition at line 876 of file sbndcode/sbndcode/AnalysisTree/AnalysisTree_module.cc.
|
private |
whether to extract and save Vertex information
Definition at line 878 of file sbndcode/sbndcode/AnalysisTree/AnalysisTree_module.cc.
|
private |
whether to extract and save Hit information
Definition at line 875 of file sbndcode/sbndcode/AnalysisTree/AnalysisTree_module.cc.
|
private |
whether to extract and save Shower information
Definition at line 877 of file sbndcode/sbndcode/AnalysisTree/AnalysisTree_module.cc.
|
private |
Definition at line 863 of file sbndcode/sbndcode/AnalysisTree/AnalysisTree_module.cc.
|
private |
Definition at line 857 of file sbndcode/sbndcode/AnalysisTree/AnalysisTree_module.cc.
|
private |
Definition at line 865 of file sbndcode/sbndcode/AnalysisTree/AnalysisTree_module.cc.
|
private |
Definition at line 844 of file sbndcode/sbndcode/AnalysisTree/AnalysisTree_module.cc.
|
private |
whether to use a permanent buffer (faster, huge memory)
Definition at line 869 of file sbndcode/sbndcode/AnalysisTree/AnalysisTree_module.cc.
|
private |
Definition at line 864 of file sbndcode/sbndcode/AnalysisTree/AnalysisTree_module.cc.
|
private |
if it contains cosmics
Definition at line 885 of file sbndcode/sbndcode/AnalysisTree/AnalysisTree_module.cc.
|
private |
Definition at line 892 of file sbndcode/sbndcode/AnalysisTree/AnalysisTree_module.cc.
|
private |
Definition at line 851 of file sbndcode/sbndcode/AnalysisTree/AnalysisTree_module.cc.