4f09623b |
1 | /** |
2 | * @file MakeMultTrain.C |
3 | * @author Valentina Zaccolo |
4 | * @date Wed Nov 21 12:47:26 2012 |
5 | * |
6 | * @brief |
7 | * |
8 | * @ingroup pwglf_forward_trains_specific |
671df6c9 |
9 | * @ingroup pwglf_forward_multdist |
4f09623b |
10 | * |
11 | */ |
4f09623b |
12 | #include "TrainSetup.C" |
13 | |
14 | //==================================================================== |
15 | /** |
16 | * Analysis train to make @f$ Multiplicity Distributions@f$ |
17 | * |
18 | * |
671df6c9 |
19 | * @ingroup pwglf_forward_multdist |
4f09623b |
20 | * @ingroup pwglf_forward_trains_specific |
21 | */ |
22 | class MakeMultTrain : public TrainSetup |
23 | { |
24 | public: |
25 | /** |
26 | * Constructor. |
27 | * |
28 | * @param name Name of train (free form) |
4f09623b |
29 | */ |
30 | MakeMultTrain(const char* name) |
31 | : TrainSetup(name) |
32 | { |
33 | fOptions.Add("trig", "TYPE", "Trigger type", "V0AND"); |
34 | fOptions.Add("vzMin", "CENTIMETER", "Min Ip Z", -4); |
35 | fOptions.Add("vzMax", "CENTIMETER", "Max Ip Z", +4); |
36 | fOptions.Add("lowCent", "%", "Min Centrality", 0); |
37 | fOptions.Add("highCent","%", "Max Centrality", 0); |
38 | fOptions.Add("nBins", "N", "Max Multiplicity", 500); |
39 | } |
40 | protected: |
41 | /** |
42 | * Create the tasks |
4f09623b |
43 | */ |
44 | void CreateTasks(AliAnalysisManager*) |
45 | { |
46 | // --- Output file name ------------------------------------------ |
47 | AliAnalysisManager::SetCommonFileName("forward_multiplicity.root"); |
48 | |
49 | // --- Load libraries/pars --------------------------------------- |
50 | fHelper->LoadLibrary("PWGLFforward2"); |
51 | |
52 | // --- Set load path --------------------------------------------- |
53 | gROOT->SetMacroPath(Form("%s:$(ALICE_ROOT)/PWGLF/FORWARD/analysis2", |
54 | gROOT->GetMacroPath())); |
55 | |
56 | // --- Get parameters -------------------------------------------- |
57 | TString trig = fOptions.Get("trig"); |
58 | Double_t vzMin = fOptions.AsDouble("vzmin", -4); |
59 | Double_t vzMax = fOptions.AsDouble("vzmax", +4); |
60 | Int_t lowCent = fOptions.AsInt("lowCent", 0); |
61 | Int_t highCent = fOptions.AsInt("highCent", 0); |
62 | Int_t nBins = fOptions.AsInt("nBins", 500); |
63 | |
64 | // --- Form arguments -------------------------------------------- |
65 | TString args; |
66 | args.Form("\"%s\",%f,%f,%d,%d,%d", |
67 | trig.Data(), vzMin, vzMax, lowCent, highCent, nBins); |
68 | // --- Add the task ---------------------------------------------- |
69 | gROOT->Macro(Form("AddTaskMultDists.C(%s);", args.Data())); |
70 | } |
71 | //__________________________________________________________________ |
72 | /** |
73 | * Do not the centrality selection |
74 | */ |
75 | void CreateCentralitySelection(Bool_t, AliAnalysisManager*) {} |
76 | //__________________________________________________________________ |
77 | /** |
78 | * Crete output handler - we don't want one here. |
79 | * |
80 | * @return 0 |
81 | */ |
82 | AliVEventHandler* CreateOutputHandler(UShort_t) { return 0; } |
83 | //__________________________________________________________________ |
84 | const char* ClassName() const { return "MakeMultTrain"; } |
85 | }; |
86 | // |
87 | // EOF |
88 | // |