#ifndef ALICALIBVIEWERGUITIME_H
#define ALICALIBVIEWERGUITIME_H
#ifndef ROOT_TGButton
#include <TGWidget.h>
#endif
#ifndef ROOT_TGFrame
#include <TGFrame.h>
#endif
#include <TString.h>
#include <TVectorT.h>
class TGCompositeFrame;
class TRootEmbeddedCanvas;
class TGTextButton;
class TGListBox;
class TGRadioButton;
class TGComboBox;
class TGGroupFrame;
class TGLabel;
class TGTabElement;
class TGWindow;
class TFile;
class TTree;
class TChain;
class TGraph;
class TObjArray;
class TMap;
class AliBaseCalibViewerGUI;
class AliCalibViewerGUItime : public TGCompositeFrame {
public:
AliCalibViewerGUItime(const TGWindow *p, UInt_t w, UInt_t h, const Char_t* det = "TRD");
virtual ~AliCalibViewerGUItime();
static TObjArray* ShowGUI(TChain* chain);
static TObjArray* ShowGUI();
void DrawGUI(const TGWindow *, UInt_t w, UInt_t h);
void UseFile(const char* fileName, const char* treeName);
void UseChain(TChain *chain = 0);
void Reload(Int_t first=1);
void AddReferenceTree(const char* treeFileName, const char* refName="R");
void SetCalibViewerGUI(AliBaseCalibViewerGUI *gui) {fCalibViewerGUI=gui;}
void SetCalibViewerGUItab(TGTabElement *tab) {fCalibViewerGUItab=tab;}
void SetCacheDir(const char* cachedir) {fOutputCacheDir=cachedir;}
const char* GetDrawString();
const char* GetDrawOption() const;
void GetCutString(TString &cutStr);
TChain* GetChain() const {return fTree;}
void DoDraw();
void DoDumpRuns();
void DoCustomDraw();
void DoCustomCutsDraw();
void DoParLimitChange();
void DoNewSelection();
void DoChangeSelectionList() {Reload(0);}
void HandleButtonsDrawSel(Int_t id = -1);
void MouseMove(Int_t event, Int_t x, Int_t y, TObject *);
void SavePicture();
void HandleLoadRunTextEntry();
void HandleLoadRunButtons();
private:
TString fDetector;
TFile* fFile;
TChain* fTree;
AliBaseCalibViewerGUI *fCalibViewerGUI;
TGTabElement *fCalibViewerGUItab;
TH1* fCurrentHist;
TGraph* fCurrentGraph;
Int_t fCurrentRunDetails;
TString fOutputCacheDir;
TString fDrawString;
Bool_t fIsCustomDraw;
TVectorD fRunNumbers;
TVectorD fTimeStamps;
TVectorD fValuesX;
TVectorD fValuesY;
Bool_t fNoGraph;
Long64_t fGraphLimitEntries;
TMap *fMapRefTrees;
TGCompositeFrame *fContTopBottom;
TGCompositeFrame *fContLCR;
TGCompositeFrame *fContLeft;
TGGroupFrame *fContDrawOpt;
TGCheckButton *fChkDrawOptSame;
TGComboBox *fComboAddDrawOpt;
TGGroupFrame *fContDrawSel;
TGCompositeFrame *fContDrawSelSubRunTime;
TGRadioButton *fRadioXhist;
TGRadioButton *fRadioXrun;
TGRadioButton *fRadioXtime;
TGListBox *fListVariables;
TGComboBox *fComboRunType;
TGLabel *fLblRunType;
TGNumberEntry *fNmbPar;
TGLabel *fLblPar;
TGListBox *fListCalibType;
TGGroupFrame *fContCalibType;
TGCompositeFrame *fContCenter;
TRootEmbeddedCanvas *fCanvMain;
TGCompositeFrame *fContRight;
TGGroupFrame *fContValues;
TGLabel *fLblRunNumber;
TGLabel *fLblRunTime;
TGLabel *fLblValueX;
TGLabel *fLblValueY;
TGLabel *fLblRunNumberVal;
TGLabel *fLblRunTimeVal;
TGLabel *fLblValueXVal;
TGLabel *fLblValueYVal;
TGTextButton *fBtnDumpRuns;
TGTextButton *fBtnSave;
TGGroupFrame *fContLoad;
TGCompositeFrame *fContFilename;
TGCompositeFrame *fContConfigFile;
TGCompositeFrame *fContTreeName;
TGLabel *fLblTreeName;
TGTextEntry *fTxtFilename;
TGTextEntry *fTxtConfigFile;
TGTextEntry *fTxtTreeName;
TGButton *fBtnLoadFile;
TGCompositeFrame *fContCustom;
TGCompositeFrame *fContCustomCuts;
TGLabel *fLblCustomDraw;
TGLabel *fLblCustomCuts;
TGComboBox *fComboCustomDraw;
TGComboBox *fComboCustomCuts;
TObjArray *fTrashBox;
enum { kRadioXhist=10, kRadioXrun=11, kRadioXtime=12 };
enum { kBranchOnOff=0, kBranchTitle=1, kCalibType=2, kParamNames=3 };
void UpdateParLimits();
void UpdateParName();
void SetGuiTree(Int_t run);
void FillRunTypes();
void FillCalibTypes();
void SetInitialValues();
void CheckDrawGraph();
Bool_t CheckChain();
void UpdateValueArrays(Bool_t withGraph);
const char* SubstituteUnderscores(const char* in);
void GetHistogramTitle(TString &title);
void AdjustYRange();
private:
AliCalibViewerGUItime(const AliCalibViewerGUItime &v);
AliCalibViewerGUItime &operator = (const AliCalibViewerGUItime &v);
ClassDef(AliCalibViewerGUItime, 1)
};
#endif
AliCalibViewerGUItime.h:1 AliCalibViewerGUItime.h:2 AliCalibViewerGUItime.h:3 AliCalibViewerGUItime.h:4 AliCalibViewerGUItime.h:5 AliCalibViewerGUItime.h:6 AliCalibViewerGUItime.h:7 AliCalibViewerGUItime.h:8 AliCalibViewerGUItime.h:9 AliCalibViewerGUItime.h:10 AliCalibViewerGUItime.h:11 AliCalibViewerGUItime.h:12 AliCalibViewerGUItime.h:13 AliCalibViewerGUItime.h:14 AliCalibViewerGUItime.h:15 AliCalibViewerGUItime.h:16 AliCalibViewerGUItime.h:17 AliCalibViewerGUItime.h:18 AliCalibViewerGUItime.h:19 AliCalibViewerGUItime.h:20 AliCalibViewerGUItime.h:21 AliCalibViewerGUItime.h:22 AliCalibViewerGUItime.h:23 AliCalibViewerGUItime.h:24 AliCalibViewerGUItime.h:25 AliCalibViewerGUItime.h:26 AliCalibViewerGUItime.h:27 AliCalibViewerGUItime.h:28 AliCalibViewerGUItime.h:29 AliCalibViewerGUItime.h:30 AliCalibViewerGUItime.h:31 AliCalibViewerGUItime.h:32 AliCalibViewerGUItime.h:33 AliCalibViewerGUItime.h:34 AliCalibViewerGUItime.h:35 AliCalibViewerGUItime.h:36 AliCalibViewerGUItime.h:37 AliCalibViewerGUItime.h:38 AliCalibViewerGUItime.h:39 AliCalibViewerGUItime.h:40 AliCalibViewerGUItime.h:41 AliCalibViewerGUItime.h:42 AliCalibViewerGUItime.h:43 AliCalibViewerGUItime.h:44 AliCalibViewerGUItime.h:45 AliCalibViewerGUItime.h:46 AliCalibViewerGUItime.h:47 AliCalibViewerGUItime.h:48 AliCalibViewerGUItime.h:49 AliCalibViewerGUItime.h:50 AliCalibViewerGUItime.h:51 AliCalibViewerGUItime.h:52 AliCalibViewerGUItime.h:53 AliCalibViewerGUItime.h:54 AliCalibViewerGUItime.h:55 AliCalibViewerGUItime.h:56 AliCalibViewerGUItime.h:57 AliCalibViewerGUItime.h:58 AliCalibViewerGUItime.h:59 AliCalibViewerGUItime.h:60 AliCalibViewerGUItime.h:61 AliCalibViewerGUItime.h:62 AliCalibViewerGUItime.h:63 AliCalibViewerGUItime.h:64 AliCalibViewerGUItime.h:65 AliCalibViewerGUItime.h:66 AliCalibViewerGUItime.h:67 AliCalibViewerGUItime.h:68 AliCalibViewerGUItime.h:69 AliCalibViewerGUItime.h:70 AliCalibViewerGUItime.h:71 AliCalibViewerGUItime.h:72 AliCalibViewerGUItime.h:73 AliCalibViewerGUItime.h:74 AliCalibViewerGUItime.h:75 AliCalibViewerGUItime.h:76 AliCalibViewerGUItime.h:77 AliCalibViewerGUItime.h:78 AliCalibViewerGUItime.h:79 AliCalibViewerGUItime.h:80 AliCalibViewerGUItime.h:81 AliCalibViewerGUItime.h:82 AliCalibViewerGUItime.h:83 AliCalibViewerGUItime.h:84 AliCalibViewerGUItime.h:85 AliCalibViewerGUItime.h:86 AliCalibViewerGUItime.h:87 AliCalibViewerGUItime.h:88 AliCalibViewerGUItime.h:89 AliCalibViewerGUItime.h:90 AliCalibViewerGUItime.h:91 AliCalibViewerGUItime.h:92 AliCalibViewerGUItime.h:93 AliCalibViewerGUItime.h:94 AliCalibViewerGUItime.h:95 AliCalibViewerGUItime.h:96 AliCalibViewerGUItime.h:97 AliCalibViewerGUItime.h:98 AliCalibViewerGUItime.h:99 AliCalibViewerGUItime.h:100 AliCalibViewerGUItime.h:101 AliCalibViewerGUItime.h:102 AliCalibViewerGUItime.h:103 AliCalibViewerGUItime.h:104 AliCalibViewerGUItime.h:105 AliCalibViewerGUItime.h:106 AliCalibViewerGUItime.h:107 AliCalibViewerGUItime.h:108 AliCalibViewerGUItime.h:109 AliCalibViewerGUItime.h:110 AliCalibViewerGUItime.h:111 AliCalibViewerGUItime.h:112 AliCalibViewerGUItime.h:113 AliCalibViewerGUItime.h:114 AliCalibViewerGUItime.h:115 AliCalibViewerGUItime.h:116 AliCalibViewerGUItime.h:117 AliCalibViewerGUItime.h:118 AliCalibViewerGUItime.h:119 AliCalibViewerGUItime.h:120 AliCalibViewerGUItime.h:121 AliCalibViewerGUItime.h:122 AliCalibViewerGUItime.h:123 AliCalibViewerGUItime.h:124 AliCalibViewerGUItime.h:125 AliCalibViewerGUItime.h:126 AliCalibViewerGUItime.h:127 AliCalibViewerGUItime.h:128 AliCalibViewerGUItime.h:129 AliCalibViewerGUItime.h:130 AliCalibViewerGUItime.h:131 AliCalibViewerGUItime.h:132 AliCalibViewerGUItime.h:133 AliCalibViewerGUItime.h:134 AliCalibViewerGUItime.h:135 AliCalibViewerGUItime.h:136 AliCalibViewerGUItime.h:137 AliCalibViewerGUItime.h:138 AliCalibViewerGUItime.h:139 AliCalibViewerGUItime.h:140 AliCalibViewerGUItime.h:141 AliCalibViewerGUItime.h:142 AliCalibViewerGUItime.h:143 AliCalibViewerGUItime.h:144 AliCalibViewerGUItime.h:145 AliCalibViewerGUItime.h:146 AliCalibViewerGUItime.h:147 AliCalibViewerGUItime.h:148 AliCalibViewerGUItime.h:149 AliCalibViewerGUItime.h:150 AliCalibViewerGUItime.h:151 AliCalibViewerGUItime.h:152 AliCalibViewerGUItime.h:153 AliCalibViewerGUItime.h:154 AliCalibViewerGUItime.h:155 AliCalibViewerGUItime.h:156 AliCalibViewerGUItime.h:157 AliCalibViewerGUItime.h:158 AliCalibViewerGUItime.h:159 AliCalibViewerGUItime.h:160 AliCalibViewerGUItime.h:161 AliCalibViewerGUItime.h:162 AliCalibViewerGUItime.h:163 AliCalibViewerGUItime.h:164 AliCalibViewerGUItime.h:165 AliCalibViewerGUItime.h:166 AliCalibViewerGUItime.h:167 AliCalibViewerGUItime.h:168 AliCalibViewerGUItime.h:169 AliCalibViewerGUItime.h:170 AliCalibViewerGUItime.h:171 AliCalibViewerGUItime.h:172 AliCalibViewerGUItime.h:173 AliCalibViewerGUItime.h:174 AliCalibViewerGUItime.h:175 AliCalibViewerGUItime.h:176 AliCalibViewerGUItime.h:177 AliCalibViewerGUItime.h:178 AliCalibViewerGUItime.h:179 AliCalibViewerGUItime.h:180 AliCalibViewerGUItime.h:181 AliCalibViewerGUItime.h:182 AliCalibViewerGUItime.h:183 AliCalibViewerGUItime.h:184 AliCalibViewerGUItime.h:185 AliCalibViewerGUItime.h:186 AliCalibViewerGUItime.h:187