16 #include "art/Framework/Core/EDAnalyzer.h"
17 #include "art/Framework/Core/ModuleMacros.h"
18 #include "art/Framework/Principal/Event.h"
19 #include "art/Framework/Principal/fwd.h"
20 #include "art_root_io/TFileService.h"
21 #include "fhiclcpp/ParameterSet.h"
46 class PMTAna :
public art::EDAnalyzer{
51 PMTAna(
const fhicl::ParameterSet&);
54 void analyze (
const art::Event&);
70 DEFINE_ART_MODULE(PMTAna)
89 art::ServiceHandle<art::TFileService const> fileService;
92 _tree = fileService->make<TTree>(
"pmt_tree",
"Analysis Tree");
111 std::vector<const raw::OpDetWaveform*> pmtArray;
116 }
catch (art::Exception
const&
e) {
118 if (e.categoryCode() != art::errors::ProductNotFound )
throw;
125 for(
size_t i=0; i<pmtArray.size(); ++i) {
TTree * _tree
output data holder TTree
void AddRecoAlgo(pmtana::PMTPulseRecoBase *algo, PMTPedestalBase *ped_algo=nullptr)
A method to set pulse reconstruction algorithm.
void analyze(const art::Event &)
Function to be called per event.
bool Reconstruct(const pmtana::Waveform_t &) const
Implementation of ana_base::analyze method.
std::string _fifo_mod_name
Input FIFOChannel producer name.
PulseRecoManager _preco_man
PMTAna(const fhicl::ParameterSet &)
Constructor.
Class definition file of AlgoFixedWindow.
Class definition file of AlgoThreshold.
void SetDefaultPedAlgo(pmtana::PMTPedestalBase *algo)
A method to set a choice of pedestal estimation method.
Class definition file of PedAlgoEdges.
Class definition file of PulseRecoManager.