]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG/muondep/AliAnalysisMuMuConfig.h
Merge branch 'master' of https://git.cern.ch/reps/AliRoot
[u/mrichter/AliRoot.git] / PWG / muondep / AliAnalysisMuMuConfig.h
1 #ifndef ALIANALYSISMUMUPARAMETERS_H
2 #define ALIANALYSISMUMUPARAMETERS_H
3
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5  * See cxx source for full Copyright notice                               */
6
7 // $Id$
8
9 ///
10 /// AliAnalysisMuMuConfig : helper class to store steering options
11 /// for the AliAnalysisMuMu and AliAnalysisMuMuEvolution classes
12 ///
13 /// author : Laurent Aphecetche (Subatech)
14
15 #include "TObject.h"
16 #include "TString.h"
17
18 class TObjArray;
19
20 class AliAnalysisMuMuConfig : public TObject
21 {
22
23 public:
24   
25   enum EColor
26   {
27     kBlue=1500,
28     kOrange=1501,
29     kGreen=1502
30   };
31   
32   enum ETypeList
33   {
34     kDimuonTriggerList=0, // list of dimuon triggers to consider
35     kMuonTriggerList=1, // list of single muon triggers to consider
36     kMinbiasTriggerList=2,   // list of minbias triggers to consider
37     kEventSelectionList=3, // list of event types to consider
38     kPairSelectionList=4, // list of pair cuts to consider
39     kCentralitySelectionList=5, // list of centrality cuts to consider
40     kFitTypeList=7 // list of fit types to perform    
41   };
42   
43   AliAnalysisMuMuConfig(const char* beamYear="pPb2013");
44   virtual ~AliAnalysisMuMuConfig();
45
46   TObjArray* GetListElements(ETypeList type, Bool_t simulation) const;
47
48   TString GetList(ETypeList type, Bool_t simulation) const;
49
50   void SetList(ETypeList type, Bool_t simulation, const char* list);
51
52 //  TString AppendToList(ETypeList type, Bool_t simulation, const char* list);
53
54   void SetColorScheme();
55   
56   void SetOCDBPath(const char* ocdbPath) { fOCDBPath = ocdbPath; }
57
58   TString OCDBPath() const { return fOCDBPath; }
59   
60   void SetCompactGraphs(Bool_t value=kTRUE) { fIsCompactGraphs = value; }
61   
62   Bool_t CompactGraphs() { return fIsCompactGraphs; }
63   
64   void Print(Option_t* opt="") const;
65   
66   void DefineDefaults(const char* beamYear);
67   
68 private:
69   
70   void ShowLists(const char* title, ETypeList type, const char separator=',', const TString& sopt="ALL") const;
71   
72   void ShowList(const char* title, const TString& list, const char separator=',') const;
73
74 private:
75
76   TObjArray* fLists; // storage for lists
77   
78   TString fOCDBPath; // OCDB to be used (raw:// by default)
79   Bool_t fIsCompactGraphs; // whether the graph produced should be compact
80
81   ClassDef(AliAnalysisMuMuConfig,2) // class to hold configuration of AliAnalysisMuMu(Evolution) class
82 };
83
84 #endif