Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:30:03

0001 #ifndef HcalTestBeam_HcalTB06Histo_H
0002 #define HcalTestBeam_HcalTB06Histo_H
0003 // -*- C++ -*-
0004 //
0005 // Package:     HcalTestBeam
0006 // Class  :     HcalTB06Histo
0007 //
0008 /**\class HcalTB06Histo HcalTB06Histo.h SimG4CMS/HcalTestBeam/interface/HcalTB06Histo.h
0009   
0010  Description: Histogram handling for Hcal Test Beam 2006 studies
0011   
0012  Usage: Sets up histograms and stores in a file
0013 */
0014 //
0015 // Original Author:  Sunanda Banerjee
0016 //         Created:  Tue Oct 10 10:14:34 CEST 2006
0017 //
0018 
0019 // system include files
0020 #include <string>
0021 #include <vector>
0022 
0023 // user include files
0024 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0025 #include "FWCore/ServiceRegistry/interface/Service.h"
0026 
0027 #include <TH1D.h>
0028 #include <TH2D.h>
0029 #include <TTree.h>
0030 
0031 class HcalTB06Histo {
0032 public:
0033   // ---------- Constructor and destructor -----------------
0034   HcalTB06Histo(const edm::ParameterSet &ps);
0035   virtual ~HcalTB06Histo();
0036 
0037   // ---------- member functions ---------------------------
0038   void fillPrimary(double energy, double eta, double phi);
0039   void fillEdep(double etots, double eecals, double ehcals);
0040   void fillTree(std::vector<double> &ecalo, std::vector<double> &etrig);
0041 
0042 private:
0043   // ---------- Private Data members -----------------------
0044   bool verbose_, mkTree_;
0045 
0046   TH1D *iniE, *iEta, *iPhi;
0047   TH1D *edepS, *edecS, *edhcS;
0048   TH1D *edepN, *edecN, *edhcN, *emhcN;
0049   TH2D *edehS;
0050   TTree *tree_;
0051   double eBeam_, etaBeam_, phiBeam_;
0052   double edepEC_, edepHB_, edepHO_;
0053   double noiseEC_, noiseHB_, noiseHO_;
0054   double edepS1_, edepS2_, edepS3_, edepS4_, edepVC_, edepS7_, edepS8_;
0055   double mip_;
0056 };
0057 
0058 #endif