File indexing completed on 2023-03-17 10:41:01
0001 #ifndef ZTR_TEcnaParHistos
0002 #define ZTR_TEcnaParHistos
0003
0004 #include <Riostream.h>
0005
0006 #include "TObject.h"
0007 #include "TSystem.h"
0008 #include "Riostream.h"
0009
0010 #include "TCanvas.h"
0011 #include "TRootCanvas.h"
0012 #include "TH1.h"
0013 #include "TStyle.h"
0014 #include "TGraph.h"
0015 #include "TString.h"
0016 #include "TColor.h"
0017 #include "TPaveText.h"
0018 #include "TVectorD.h"
0019 #include "TMatrixD.h"
0020
0021 #include "CalibCalorimetry/EcalCorrelatedNoiseAnalysisAlgos/interface/TEcnaObject.h"
0022 #include "CalibCalorimetry/EcalCorrelatedNoiseAnalysisAlgos/interface/TEcnaParEcal.h"
0023 #include "CalibCalorimetry/EcalCorrelatedNoiseAnalysisAlgos/interface/TEcnaNumbering.h"
0024
0025
0026
0027
0028
0029
0030
0031
0032
0033
0034
0035
0036
0037
0038
0039
0040
0041
0042
0043
0044 class TEcnaParHistos : public TObject {
0045 private:
0046
0047
0048
0049
0050 Int_t fgMaxCar;
0051
0052 Int_t fCnew, fCdelete;
0053 Int_t fCnewRoot, fCdeleteRoot;
0054
0055 TString fTTBELL;
0056
0057 Int_t fCnaCommand, fCnaError;
0058
0059 TEcnaParEcal* fEcal;
0060 TEcnaNumbering* fEcalNumbering;
0061
0062 TString fFlagSubDet;
0063
0064
0065
0066 Int_t fMaxColorNumber;
0067 Double_t fMarginAutoMinMax;
0068 Int_t fNbOfRunsDisplayed;
0069 Int_t fMaxNbOfRunsInLists;
0070
0071 TString fOnlyOnePlot;
0072 TString fSeveralPlot;
0073 TString fSameOnePlot;
0074 TString fAllXtalsInStinPlot;
0075 Int_t fPlotAllXtalsInStin;
0076
0077 public:
0078
0079
0080 TEcnaParHistos();
0081 TEcnaParHistos(TEcnaObject*, const TString&);
0082 TEcnaParHistos(const TString&, TEcnaParEcal*, TEcnaNumbering*);
0083 ~TEcnaParHistos() override;
0084
0085 void Init();
0086 void SetEcalSubDetector(const TString&);
0087 void SetEcalSubDetector(const TString&, TEcnaParEcal*, TEcnaNumbering*);
0088
0089
0090 UInt_t SetCanvasWidth(const TString&, const TString&);
0091 UInt_t SetCanvasHeight(const TString&, const TString&);
0092 UInt_t CanvasFormatW(const TString&);
0093 UInt_t CanvasFormatH(const TString&);
0094
0095 Double_t BoxLeftX(const TString&);
0096 Double_t BoxRightX(const TString&);
0097 Double_t BoxBottomY(const TString&);
0098 Double_t BoxTopY(const TString&);
0099
0100 void SetColorPalette(const TString&);
0101 Color_t ColorTab(const Int_t&);
0102 Color_t ColorDefinition(const TString&);
0103 Int_t GetMaxNbOfColors();
0104
0105 Int_t GetNbOfRunsDisplayed();
0106 Double_t GetMarginAutoMinMax();
0107
0108 void SetViewHistoStyle(const TString&);
0109 void SetViewHistoPadMargins(const TString&, const TString&);
0110 void SetViewHistoStats(TH1D*, const TString&);
0111 void SetViewHistoOffsets(TH1D*, const TString&, const TString&);
0112 void SetViewGraphOffsets(TGraph*, const TString&);
0113
0114 Float_t AxisTitleOffset();
0115 Float_t AxisTitleOffset(const TString&);
0116 Float_t AxisTitleSize();
0117 Float_t AxisTitleSize(const TString&);
0118 Float_t AxisLabelOffset();
0119 Float_t AxisLabelOffset(const TString&);
0120 Float_t AxisLabelSize();
0121 Float_t AxisLabelSize(const TString&);
0122 Float_t AxisTickSize();
0123 Float_t AxisTickSize(const TString&);
0124
0125 Float_t DeeOffsetX(const TString&, const Int_t&);
0126 Float_t DeeNameOffsetX(const Int_t&);
0127 Float_t DeeNumberOffsetX(const TString&, const Int_t&);
0128
0129 TPaveText* SetPaveGeneralComment(const TString&);
0130 TPaveText* SetPaveAnalysisRun(
0131 const TString&, const Int_t&, const Int_t&, const TString&, const Int_t&, const Int_t&, const TString&);
0132 TPaveText* SetPaveNbOfEvts(const Int_t&, const TString&, const TString&, const TString&);
0133 TPaveText* SetPaveEvolNbOfEvtsAna(const TString&, const Int_t&, const Int_t&, const Int_t&, const TString&);
0134 TPaveText* SetPaveEvolRuns(const Int_t&, const TString&, const Int_t&, const TString&, const TString&, const TString&);
0135
0136 TPaveText* SetOptionSamePaveBorder(const TString&, const TString&);
0137
0138 TPaveText* SetPaveStas();
0139 TPaveText* SetPaveSM(const TString&, const Int_t&, const TString&);
0140 TPaveText* SetPaveTower(const Int_t&);
0141 TPaveText* SetPaveTowersXY(const Int_t&, const Int_t&);
0142 TPaveText* SetPaveLVRB(const Int_t&, const Int_t&);
0143 Color_t SetColorsForNumbers(const TString&);
0144
0145 TPaveText* SetPaveDee(const TString&, const Int_t&, const TString&);
0146 TPaveText* SetPaveSC(const Int_t&, const Int_t&);
0147 TPaveText* SetPaveSCsXY(const Int_t&, const Int_t&);
0148 TPaveText* SetPaveCxyz(const Int_t&);
0149
0150 TPaveText* SetPaveStex(const TString&, const Int_t&);
0151 TPaveText* SetPaveStin(const Int_t&, const Int_t&);
0152 TPaveText* SetPaveStinsXY(const Int_t&, const Int_t&);
0153 TPaveText* SetPaveCrystal(const Int_t&, const Int_t&, const Int_t&);
0154 TPaveText* SetPaveCrystal(const Int_t&, const Int_t&, const Int_t&, const Int_t&, const Int_t&);
0155 TPaveText* SetPaveCrystalSample(const Int_t&, const Int_t&, const Int_t&, const Int_t&);
0156
0157 TString GetHistoType(const TString&);
0158 TString GetXVarHisto(const TString&, const TString&, const Int_t&);
0159 TString GetYVarHisto(const TString&, const TString&, const Int_t&);
0160 TString GetQuantityName(const TString&);
0161
0162 Double_t GetYminDefaultValue(const TString&);
0163 Double_t GetYmaxDefaultValue(const TString&);
0164
0165 Int_t MaxNbOfRunsInLists();
0166
0167
0168 TString BuildStandardDetectorCode(const TString&);
0169 TString BuildStandardPlotOption(const TString&, const TString&);
0170 TString BuildStandard1DHistoCodeX(const TString&, const TString&);
0171 TString BuildStandard1DHistoCodeY(const TString&, const TString&);
0172 TString BuildStandard1DHistoCodeXY(const TString&);
0173 TString BuildStandardCovOrCorCode(const TString&, const TString&);
0174 TString BuildStandardBetweenWhatCode(const TString&, const TString&);
0175
0176 void ListOfStandardCodes(const TString&);
0177
0178 TString GetTechHistoCode(const TString&);
0179 TString GetTechHistoCode(const TString&, const TString&);
0180
0181 TString GetCodeOnlyOnePlot();
0182 TString GetCodeSeveralPlot();
0183 TString GetCodeSameOnePlot();
0184 TString GetCodeAllXtalsInStinPlot();
0185 Int_t GetCodePlotAllXtalsInStin();
0186
0187 ClassDefOverride(TEcnaParHistos, 1)
0188 };
0189
0190 #endif