LArSoft  v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
PPFXFluxReader.h
Go to the documentation of this file.
6 
7 #include <fstream>
8 #include <map>
9 #include <vector>
10 
11 #include "FluxInterface.h"
12 
13 class TH1D;
14 class TTree;
15 class TFile;
16 
17 namespace fluxr {
19  public:
20  // Required constructor
23  art::SourceHelper const& pm);
24 
25  // Required by FileReaderSource:
26  void closeCurrentFile();
27  void readFile(std::string const& name, art::FileBlock*& fb);
28  bool readNext(art::RunPrincipal* const& inR,
29  art::SubRunPrincipal* const& inSR,
30  art::RunPrincipal*& outR,
31  art::SubRunPrincipal*& outSR,
32  art::EventPrincipal*& outE);
33 
34  private:
37 
38  uint32_t fEventCounter;
39  uint32_t fEntry;
40  int fMaxEvents; //fhicl parameter. Maximum number of events.
41  uint32_t fSkipEvents; // fhicl parameter. Number of events to skip.
42  std::string fInputType; //fhicl parameter. Maximum number of events.
43  float fPOT;
44 
47  //int fNuPdgCode[4];
48  TH1D* fHFlux[4];
49  TH1D* fHFluxParent[4][4];
50  TH1D* fHFluxSec[4][5];
51 
53 
58  }; // PPFXFluxReader
59 }
fhicl::ParameterSet fConfigPS
art::TypeLabel fTLdk2nu
art::TypeLabel fTLmcflux
TH1D * fHFluxParent[4][4]
bool readNext(art::RunPrincipal *const &inR, art::SubRunPrincipal *const &inSR, art::RunPrincipal *&outR, art::SubRunPrincipal *&outSR, art::EventPrincipal *&outE)
FluxInterface * fFluxDriver
PPFXFluxReader(fhicl::ParameterSet const &pset, art::ProductRegistryHelper &helper, art::SourceHelper const &pm)
TFile fb("Li6.root")
art::SourceHelper const & fSourceHelper
art::TypeLabel fTLnuchoice
TH1D * fHFluxSec[4][5]
art::SubRunID fSubRunID
art::TypeLabel fTLmctruth
void readFile(std::string const &name, art::FileBlock *&fb)