Logo ROOT   6.30.04
Reference Guide
 All Namespaces Files Pages
tmvaglob.h
Go to the documentation of this file.
1 #ifndef tmvaglob__HH
2 #define tmvaglob__HH
3 // global TMVA style settings
4 #ifndef TMVA_TMVAGLOB
5 #define TMVA_TMVAGLOB
6 
7 #include <iostream>
8 #include <vector>
9 
10 #include "TPad.h"
11 #include "TCanvas.h"
12 #include "TColor.h"
13 #include "TSystem.h"
14 #include "TImage.h"
15 #include "TKey.h"
16 #include "TH1.h"
17 #include "TROOT.h"
18 #include "TStyle.h"
19 #include "TFile.h"
20 #include "TDirectory.h"
21 #include "TObjArray.h"
22 #include "TClass.h"
23 #include "TText.h"
24 #include "TLegend.h"
25 
26 #include "RVersion.h"
27 
28 namespace TMVA{
29 
30  using std::cout;
31  using std::endl;
32 
33  namespace TMVAGlob {
34  // --------- S t y l e ---------------------------
35  // -----------------------------------------------
36 
37  enum TypeOfPlot { kId = 0,
38  kNorm,
39  kDecorrelated,
40  kPCA,
41  kGaussDecorr,
42  kNumOfMethods };
43 
44  inline Int_t getCanvas () {return TColor::GetColor( "#f0f0f0" );}
45  inline Int_t getFrameFill () {return TColor::GetColor( "#fffffd" );}
46  inline Int_t getTitleBox () {return TColor::GetColor( "#5D6B7D" );}
47  inline Int_t getTitleBorder () {return TColor::GetColor( "#7D8B9D" );}
48  inline Int_t getTitleText () {return TColor::GetColor( "#FFFFFF" );}
49  inline Int_t getSignalLine () {return TColor::GetColor( "#0000ee" );}
50  inline Int_t getSignalFill () {return TColor::GetColor( "#7d99d1" );}
51  inline Int_t getBackgroundLine () {return TColor::GetColor( "#ff0000" );}
52  inline Int_t getBackgroundFill () {return TColor::GetColor( "#ff0000" );}
53  inline Int_t getNovelBlue () {return TColor::GetColor( "#2244a5" );}
54 
55 
56  // set the style
57  void SetSignalAndBackgroundStyle( TH1* sig, TH1* bkg, TH1* all = 0 );
58  void SetMultiClassStyle( TObjArray* hists );
59  // set frame styles
60  void SetFrameStyle( TH1* frame, Float_t scale = 1.0 );
61  void SetTMVAStyle();
62  void DestroyCanvases();
63  // set style and remove existing canvas'
64  void Initialize( Bool_t useTMVAStyle = kTRUE );
65  // checks if file with name "fin" is already open, and if not opens one
66  TFile* OpenFile( const TString& fin );
67  // used to create output file for canvas
68  void imgconv( TCanvas* c, const TString & fname );
69  TImage * findImage(const char * imageName) ;
70  void plot_logo( Float_t v_scale = 1.0, Float_t skew = 1.0 );
71  void NormalizeHist( TH1* h );
72  void NormalizeHists( TH1* sig, TH1* bkg = 0 );
73  void GetMethodName( TString & name, TKey * mkey );
74  void GetMethodTitle( TString & name, TKey * ikey ) ;
75  void GetMethodName( TString & name, TDirectory * mdir );
76  void GetMethodTitle( TString & name, TDirectory * idir ) ;
77  TKey *NextKey( TIter & keyIter, TString className);
78  UInt_t GetListOfKeys( TList& keys, TString inherits, TDirectory *dir=0 );
79  Int_t GetNumberOfTargets( TDirectory *dir );
80  Int_t GetNumberOfInputVariables( TDirectory *dir );
81  std::vector<TString> GetInputVariableNames(TDirectory *dir );
82  Int_t GetNumberOfInputVariablesMultiClass( TDirectory *dir );
83  std::vector<TString> GetClassNames(TDirectory *dir );
84  TKey* FindMethod( TString name, TDirectory *dir=0 );
85  Bool_t ExistMethodName( TString name, TDirectory *dir=0 );
86  UInt_t GetListOfMethods( TList & methods, TDirectory *dir=0 );
87  UInt_t GetListOfJobs( TFile* file, TList& jobdirs);
88  UInt_t GetListOfTitles( TDirectory *rfdir, TList & titles );
89  UInt_t GetListOfTitles( TString & methodName, TList & titles, TDirectory *dir=0 );
90  TDirectory *GetInputVariablesDir( TMVAGlob::TypeOfPlot type, TDirectory *dir=0 );
91  TDirectory *GetCorrelationPlotsDir( TMVAGlob::TypeOfPlot type, TDirectory *dir=0 );
92 
93  }
94 
95 #endif
96 }
97 #endif