ROOT logo
#ifndef MAPS_DIGHISTO_H
#define MAPS_DIGHISTO_H

#include <TNamed.h>
#include <TList.h>
#include <TGraph.h>
#include "Riostream.h"
#include "vector"

// ROOT classes
#include "TString.h"
#include "TObject.h"
#include "TVector.h"
#include "TFile.h"
#include "TSystem.h"
#include "TRandom.h"
#include "TH1.h"
#include "TH2.h"
#include "TH3F.h"
#include "TObjArray.h"
#include "TTree.h"
#include "TBranch.h"
#include "TClonesArray.h"
#include "TCanvas.h"
#include "TGraphErrors.h"
#include "TProfile.h"
#include "Riostream.h"
#include "TSystem.h"
#include "TInterpreter.h"






using namespace std;

class DIGInitialize;
class DIGPlane;
class DIGADC;
class DIGBeam;
class DIGTransport;
class DIGParticle;
class DIGAction;
class DIGEvent;
//class DIGMAPS;
//==============================================================================
class DIGHistograms  {
  //class DIGHistograms {
 public:
  DIGHistograms();
  DIGHistograms(Int_t myNumberOfConfigurations);
  DIGHistograms(DIGHistograms& adighisto);
  virtual ~DIGHistograms();
  void    Clear(const Option_t * /*option*/ = "");
  void PrintInfo();

  Int_t GetNumberOfConfigurations(){return fNumberOfConfigs;}
  
  void SetNumberOfConfigurations(Int_t myNumberOfConfigurations);
  void BookHistograms(Int_t myNumberOfConfigurations);
  void PlotHistograms(Int_t myNumberOfConfigurations);
  //  friend class DIGMAPS;

  TH1F* AutoZoom(TH1F* H,Option_t* aType="all", Int_t EntryMin=0);
  TH2F* AutoZoom(TH2F* H,Option_t* aType="all", Int_t EntryMin=0);

 protected:




 //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 // Histogram list
 //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++


 //----------------------
 // general histograms
 //----------------------
  TH1F *h1_NumberOfEventsPerConfiguration;
  TH1F *h1_NumberOfConfigurations;

 //----------------------
 // cluster histograms
 //----------------------
 Int_t fNumberOfConfigs; // number of configurations to study = nb of planes x nb of ADCs x nb  beams

 TObjArray *Ar_h1_multiplicity_with_threshold_01;
 TObjArray *Ar_h1_multiplicity_with_threshold_02;
 TObjArray *Ar_h1_multiplicity_with_threshold_03;
 TObjArray *Ar_h1_multiplicity_with_threshold_04;
 TObjArray *Ar_h1_multiplicity_with_threshold_05;
 TObjArray *Ar_h1_multiplicity_with_threshold_06;
 TObjArray *Ar_h1_multiplicity_with_threshold_07;
 TObjArray *Ar_h1_multiplicity_with_threshold_08;
 TObjArray *Ar_h1_multiplicity_with_threshold_09;
 TObjArray *Ar_h1_multiplicity_with_threshold_10;


 TObjArray *Ar_h1_Cluster_SeedDigitalCharge;
 TObjArray *Ar_h1_Cluster_TotalDigitalCharge;
 TObjArray *Ar_h1_Cluster_9x9DigitalCharge;
 TObjArray *Ar_h1_Cluster_1stCrownDigitalCharge;
 TObjArray *Ar_h1_Cluster_2ndCrownDigitalCharge;
 TObjArray *Ar_h1_Cluster_4NeighboursDigitalCharge;
 TObjArray *Ar_h1_Cluster_SeedOverTotalDigitalCharge;
 TObjArray *Ar_h1_Cluster_1stCrownOverTotalDigitalCharge;
 TObjArray *Ar_h1_Cluster_2ndCrownOverTotalDigitalCharge;
 TObjArray *Ar_h1_Cluster_4NeighboursOverTotalDigitalCharge;
 
 TObjArray *Ar_h1_Particle_TotalAnalogCharge;
 TObjArray *Ar_h1_Particle_TotalDigitalCharge;
 TObjArray *Ar_h1_Particle_Energy_deposited;
 TObjArray *Ar_h2_Particle_EnergyDeposited_vs_TotalAnalogCharge;
 TObjArray *Ar_h2_Particle_TotalDigitalCharge_vs_TotalAnalogCharge;

 TObjArray *Ar_h1_test;

 TObjArray *Ar_h1_Resolution_ResidualX_CoG_true;
 TObjArray *Ar_h1_Resolution_ResidualY_CoG_true;
 TObjArray *Ar_h1_Resolution_Residualdist_CoG_true;
 TObjArray *Ar_h2_Resolution_TruePosition;
 TObjArray *Ar_h2_Resolution_TruePosition_modulo;
 TObjArray *Ar_h2_Resolution_CoG;
 TObjArray *Ar_h2_Resolution_CoG_modulo;

 TObjArray *Ar_h1_Charge_Q_over_Qtot_vs_distance;
 TObjArray *Ar_h2_Charge_Q_over_Qtot_vs_distance;

  ClassDef(DIGHistograms,1);
};



//==============================================================================

#endif
 dighistograms.h:1
 dighistograms.h:2
 dighistograms.h:3
 dighistograms.h:4
 dighistograms.h:5
 dighistograms.h:6
 dighistograms.h:7
 dighistograms.h:8
 dighistograms.h:9
 dighistograms.h:10
 dighistograms.h:11
 dighistograms.h:12
 dighistograms.h:13
 dighistograms.h:14
 dighistograms.h:15
 dighistograms.h:16
 dighistograms.h:17
 dighistograms.h:18
 dighistograms.h:19
 dighistograms.h:20
 dighistograms.h:21
 dighistograms.h:22
 dighistograms.h:23
 dighistograms.h:24
 dighistograms.h:25
 dighistograms.h:26
 dighistograms.h:27
 dighistograms.h:28
 dighistograms.h:29
 dighistograms.h:30
 dighistograms.h:31
 dighistograms.h:32
 dighistograms.h:33
 dighistograms.h:34
 dighistograms.h:35
 dighistograms.h:36
 dighistograms.h:37
 dighistograms.h:38
 dighistograms.h:39
 dighistograms.h:40
 dighistograms.h:41
 dighistograms.h:42
 dighistograms.h:43
 dighistograms.h:44
 dighistograms.h:45
 dighistograms.h:46
 dighistograms.h:47
 dighistograms.h:48
 dighistograms.h:49
 dighistograms.h:50
 dighistograms.h:51
 dighistograms.h:52
 dighistograms.h:53
 dighistograms.h:54
 dighistograms.h:55
 dighistograms.h:56
 dighistograms.h:57
 dighistograms.h:58
 dighistograms.h:59
 dighistograms.h:60
 dighistograms.h:61
 dighistograms.h:62
 dighistograms.h:63
 dighistograms.h:64
 dighistograms.h:65
 dighistograms.h:66
 dighistograms.h:67
 dighistograms.h:68
 dighistograms.h:69
 dighistograms.h:70
 dighistograms.h:71
 dighistograms.h:72
 dighistograms.h:73
 dighistograms.h:74
 dighistograms.h:75
 dighistograms.h:76
 dighistograms.h:77
 dighistograms.h:78
 dighistograms.h:79
 dighistograms.h:80
 dighistograms.h:81
 dighistograms.h:82
 dighistograms.h:83
 dighistograms.h:84
 dighistograms.h:85
 dighistograms.h:86
 dighistograms.h:87
 dighistograms.h:88
 dighistograms.h:89
 dighistograms.h:90
 dighistograms.h:91
 dighistograms.h:92
 dighistograms.h:93
 dighistograms.h:94
 dighistograms.h:95
 dighistograms.h:96
 dighistograms.h:97
 dighistograms.h:98
 dighistograms.h:99
 dighistograms.h:100
 dighistograms.h:101
 dighistograms.h:102
 dighistograms.h:103
 dighistograms.h:104
 dighistograms.h:105
 dighistograms.h:106
 dighistograms.h:107
 dighistograms.h:108
 dighistograms.h:109
 dighistograms.h:110
 dighistograms.h:111
 dighistograms.h:112
 dighistograms.h:113
 dighistograms.h:114
 dighistograms.h:115
 dighistograms.h:116
 dighistograms.h:117
 dighistograms.h:118
 dighistograms.h:119
 dighistograms.h:120
 dighistograms.h:121
 dighistograms.h:122
 dighistograms.h:123
 dighistograms.h:124
 dighistograms.h:125
 dighistograms.h:126
 dighistograms.h:127
 dighistograms.h:128
 dighistograms.h:129
 dighistograms.h:130
 dighistograms.h:131
 dighistograms.h:132
 dighistograms.h:133
 dighistograms.h:134
 dighistograms.h:135
 dighistograms.h:136
 dighistograms.h:137
 dighistograms.h:138