File indexing completed on 2024-04-06 11:56:55
0001 #ifndef Alignment_OfflineValidation_CompareAlignments_h
0002 #define Alignment_OfflineValidation_CompareAlignments_h
0003
0004 #include "Riostream.h"
0005 #include "TCanvas.h"
0006 #include "TChain.h"
0007 #include "TEnv.h"
0008 #include "TFile.h"
0009 #include "TH1.h"
0010 #include "TKey.h"
0011 #include "TLegend.h"
0012 #include "TMath.h"
0013 #include "TObjArray.h"
0014 #include "TObjString.h"
0015 #include "TPaveStats.h"
0016 #include "TROOT.h"
0017 #include "TStyle.h"
0018 #include "TTree.h"
0019 #include <cstring>
0020 #include <sstream>
0021 #include <vector>
0022
0023 #include "Alignment/OfflineValidation/interface/TkAlStyle.h"
0024
0025 class CompareAlignments {
0026 private:
0027 TList *FileList;
0028 TList *LabelList;
0029 TFile *Target;
0030 std::vector<std::string> lowestlevels;
0031 std::vector<int> theColors;
0032 std::vector<int> theStyles;
0033 std::vector<int> phases;
0034
0035 std::string outPath;
0036
0037 void MergeRootfile(TDirectory *target, TList *sourcelist, TList *labellist, bool bigtext);
0038 void nicePad(Int_t logx, Int_t logy);
0039 void SetMinMaxRange(TObjArray *hists);
0040 void ColourStatsBoxes(TObjArray *hists);
0041
0042 public:
0043 CompareAlignments(const std::string &outPath) : outPath(outPath) {}
0044 void doComparison(TString namesandlabels,
0045 TString legendheader = "",
0046 TString lefttitle = "",
0047 TString righttitle = "",
0048 PublicationStatus status = INTERNAL,
0049 bool bigtext = false);
0050 };
0051
0052 #endif