Hall-D Software  alpha
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
JEventProcessor_BCAL_attenlength_gainratio.h
Go to the documentation of this file.
1 // $Id$
2 //
3 // File: JEventProcessor_BCAL_attenlength_gainratio.h
4 // Created: Mon Aug 10 10:17:48 EDT 2015
5 // Creator: dalton (on Linux gluon02.jlab.org 2.6.32-358.18.1.el6.x86_64 x86_64)
6 //
7 
8 #ifndef _JEventProcessor_BCAL_attenlength_gainratio_
9 #define _JEventProcessor_BCAL_attenlength_gainratio_
10 
11 #include <JANA/JEventProcessor.h>
12 #include "BCAL/DBCALGeometry.h"
13 #include "TH2.h"
14 
15 class JEventProcessor_BCAL_attenlength_gainratio:public jana::JEventProcessor{
16  public:
19  const char* className(void){return "JEventProcessor_BCAL_attenlength_gainratio";}
20 
21  static const int nummodule=48;
22  static const int numlayer=4;
23  static const int numsector=4;
24 
26 
27  private:
28  uint32_t VERBOSE;
30 
31  jerror_t init(void); ///< Called once at program start.
32  jerror_t brun(jana::JEventLoop *eventLoop, int32_t runnumber); ///< Called everytime a new run number is detected.
33  jerror_t evnt(jana::JEventLoop *eventLoop, uint64_t eventnumber); ///< Called every event.
34  jerror_t erun(void); ///< Called everytime run number changes, provided brun has been called.
35  jerror_t fini(void); ///< Called after last event of last event source has been processed.
36 
37 
38  //DO NOT MAKE THESE STATIC GLOBAL EVER AGAIN!!
39 
40  // Summary histograms
41  TH1I *hist_attenlength = nullptr;
42  TH1I *hist_gainratio = nullptr;
43  TH1I *hist_attenlength_err = nullptr;
44  TH1I *hist_gainratio_err = nullptr;
45  TH1I *hist_attenlength_relerr = nullptr;
46  TH1I *hist_gainratio_relerr = nullptr;
47  TH2F *hist2D_peakattenlength = nullptr;
48  TH2F *hist2D_peakgainratio = nullptr;
49  TH2F *hist2D_intattenlength = nullptr;
50  TH2F *hist2D_intgainratio = nullptr;
51 
52  // Channel by channel histograms
53  TH2I *logpeakratiovsZ_all = nullptr;
54  TH2I *logintratiovsZ_all = nullptr;
58 
59  // Debug histograms to help understand data
60  TH2I *EvsZ_all = nullptr;
61  TH2I *EvsZ_layer[4] = { nullptr };
62  TH2F *hist2D_aveZ = nullptr;
63 };
64 
65 #endif // _JEventProcessor_BCAL_attenlength_gainratio_
66 
TH2I * logpeakratiovsZ[JEventProcessor_BCAL_attenlength_gainratio::nummodule][JEventProcessor_BCAL_attenlength_gainratio::numlayer][JEventProcessor_BCAL_attenlength_gainratio::numsector]
TH2I * logintratiovsZ[JEventProcessor_BCAL_attenlength_gainratio::nummodule][JEventProcessor_BCAL_attenlength_gainratio::numlayer][JEventProcessor_BCAL_attenlength_gainratio::numsector]
jerror_t evnt(jana::JEventLoop *eventLoop, uint64_t eventnumber)
Called every event.
jerror_t erun(void)
Called everytime run number changes, provided brun has been called.
jerror_t brun(jana::JEventLoop *eventLoop, int32_t runnumber)
Called everytime a new run number is detected.
TH2I * EvsZ[JEventProcessor_BCAL_attenlength_gainratio::nummodule][JEventProcessor_BCAL_attenlength_gainratio::numlayer][JEventProcessor_BCAL_attenlength_gainratio::numsector]
jerror_t fini(void)
Called after last event of last event source has been processed.