]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWGCF/Correlations/JCORRAN/AliJRunHeader.h
PWGCF/Correlations converted to native cmake
[u/mrichter/AliRoot.git] / PWGCF / Correlations / JCORRAN / AliJRunHeader.h
1 /* Copyright(c) 1998-2014, ALICE Experiment at CERN, All rights reserved. *
2  * See cxx source for full Copyright notice */
3
4 // Short comment describing what this class does needed!
5
6 // $Id: AliJRunHeader.h,v 1.1 2008/02/04 13:28:47 rak Exp $
7 ////////////////////////////////////////////////////
8 /*!
9   \file AliJRunHeader.h
10   \brief
11   \author J. Rak, D.J.Kim, F.Krizek  (Jyvaskyla || HIP)
12   \email: djkim@cc.jyu.fi
13   \version $Revision: 1.1 $
14   \date $Date: 2008/02/04 13:28:47 $
15   */
16 ////////////////////////////////////////////////////
17
18 #ifndef ALIJRUNHEADER_H
19 #define ALIJRUNHEADER_H
20 #ifndef ROOT_TObject
21 #include <TObject.h>
22 #endif
23
24 #include <TNamed.h>
25 #include <TString.h>
26 #include <TObjString.h>
27 #include <TObjArray.h>
28 #include <vector>
29 #include <map>
30
31
32 class AliJRunHeader : public TNamed {
33
34 //#pragma link C++ class AliJRunHeader+;
35
36  public:
37   enum { kJPP, kJPbPb, kPPb };
38   enum { kJESD, kJAOD };  
39   AliJRunHeader();//constructor
40   ~AliJRunHeader(){;}              //destructor
41
42   //==== General Information ====//
43   Int_t  GetRunNumber()     const {return fRunNumber;}
44   void   SetRunNumber(Int_t runN) { fRunNumber = runN;}
45
46   TString GetRunType() const { return fRunType;}
47   void    SetRunType( const TString type ){ fRunType = type; }
48
49   TString  GetBeamType()const{ return fBeamType; }
50   void    SetBeamType(TString t){ fBeamType = t; }
51
52   Int_t   GetBeamTypeI()const{ return fBeamTypeI; }
53   void    SetBeamTypeI(int t){ fBeamTypeI = t; }
54
55   Bool_t  IsPP() const { return fBeamTypeI==kJPP; }
56   Bool_t  IsPbPb() const { return fBeamTypeI==kJPbPb; }
57
58   Float_t GetBeamEnergy() const { return fBeamEnergy; }
59   void    SetBeamEnergy( Float_t e ){ fBeamEnergy = e; }
60
61   Bool_t  IsMC()const{ return fIsMC; }
62   void    SetIsMC(Bool_t b){ fIsMC=b; }
63
64
65   //==== Production Info ====//
66   Int_t   GetInputFormat() const { return fInputFormat; }
67   void    SetInputFormat( Int_t v ){ fInputFormat = v; }
68   Bool_t  FromESD() const { return fInputFormat==kJESD; }
69   Bool_t  FromAOD() const { return fInputFormat==kJAOD; }
70
71   Bool_t  GetWithoutSDD()const{ return fWithoutSDD; }
72   void    SetWithoutSDD( bool b ){ fWithoutSDD = b; }
73
74   void    SetStoreEventPlaneSource(Bool_t dostore ){ fStoreEventPlaneSource = dostore; }
75   Bool_t  GetStoreEventPlaneSource() const { return fStoreEventPlaneSource; };
76
77   void    SetStoreEMCalInfo(Bool_t dostore ){ fStoreEMCalInfo = dostore; }
78   Bool_t  GetStoreEMCalInfo() const { return fStoreEMCalInfo; };
79
80   UInt_t  GetStoreTPCTrackBitMask()const{ return fStoreTPCTrackBitMask; }
81   void    SetStoreTPCTrackBitMask( UInt_t mask ){ fStoreTPCTrackBitMask = mask; }
82
83   UInt_t  GetStoreGCGTrackBitMask()const{ return fStoreGCGTrackBitMask; }
84   void    SetStoreGCGTrackBitMask( UInt_t mask ){ fStoreGCGTrackBitMask = mask; }
85
86   void    SetESDInfo(const TString info ) { fESDInfo = info; }
87   TString GetESDInfo() const { return fESDInfo; }
88
89   Bool_t GetRefitESDVertexTracks() const { return fRefitESDVertexTracks; }
90   void    SetRefitESDVertexTracks( Bool_t refit ){ fRefitESDVertexTracks=refit; } 
91
92   //==== Detector Status ====//
93   Short_t   GetL3MagnetFieldPolarity()  const { return fL3MagnetPolarity; }
94   void      SetL3MagnetFieldPolarity(Short_t p){ fL3MagnetPolarity=p; }
95
96   Double_t  GetL3MagnetFieldIntensity() const { return fMagneticFieldL3; }
97   void      SetL3MagnetFieldIntensity(Double_t i) { fMagneticFieldL3=i; }
98
99   Float_t   GetCurrentL3() const { return fCurrentL3; }
100   void      SetCurrentL3(Float_t current){ fCurrentL3 = current; }
101
102   Float_t   GetCurrentDip() const { return fCurrentDip; }
103   void      SetCurrentDip(Float_t dip){ fCurrentDip=dip; }
104
105   Bool_t    IsUniformBMap() const { return fUniformBMap; }
106   void      SetUniformBMap(Bool_t uniform){ fUniformBMap=uniform; }
107
108   //==== Trigger Information ====//
109   TString   GetFiredTriggers()const{ return fFiredTriggers; }
110   void      SetFiredTriggers( TString trgs ){ fFiredTriggers=trgs; }
111
112   ULong64_t GetTriggerMask()const{ return fTriggerMask; }
113   void      SetTriggerMask( ULong64_t mask ){ fTriggerMask=mask; }
114
115   UChar_t   GetTriggerCluster() const { return fTriggerCluster; }
116   void      SetTriggerCluster( UChar_t cluster ){ fTriggerCluster=cluster; } 
117
118   Int_t     GetSizeOfTableJCorran() const { return fSizeOfTableJCorran; }
119   void      SetSizeOfTableJCorran( Int_t size ){ fSizeOfTableJCorran=size; } 
120
121   std::vector<TString> GetActiveTriggersJCorran() const { return fActiveTriggersJCorran; }
122   void    SetActiveTriggersJCorran( std::vector<TString> strs ){ fActiveTriggersJCorran=strs; } 
123   TString   GetActiveTriggersJCorran(int i) const { return fActiveTriggersJCorran[i]; }
124   void      SetActiveTriggersJCorran(int i, TString str){ fActiveTriggersJCorran[i]=str; }
125
126   std::vector<TString> GetActiveTriggersAlice() const { return fActiveTriggersAlice; }
127   void      SetActiveTriggersAlice( std::vector<TString> strs ){ fActiveTriggersAlice=strs; } 
128   TString   GetActiveTriggersAlice(int i) const { return fActiveTriggersAlice[i]; }
129   void      SetActiveTriggersAlice(int i, TString str){ fActiveTriggersAlice[i]=str; }
130   Int_t     GetActiveTriggerBitAlice(TString TriggerName);
131
132   //==== GENERAL STUFF for Class ====//
133
134   void PrintOut();
135
136  protected:
137   //==== General Info ====//
138   Int_t       fRunNumber;        //run number 
139   TString     fRunType;       // ex) LHC10h
140   TString     fBeamType;        // beam type kJPP, kJPbPb, kJPPb
141   Int_t       fBeamTypeI;        // beam type kJPP, kJPbPb, kJPPb
142   Float_t     fBeamEnergy; // beam energy
143   Bool_t      fIsMC;       // MC data or real data
144
145   //==== Production Info ====//
146   Int_t       fInputFormat; // specify the input data format (kJESD or kJAOD)
147   Bool_t      fWithoutSDD;  // is SDD detector used or not
148   Bool_t      fStoreEventPlaneSource; // store event plane
149   Bool_t      fStoreEMCalInfo; // store event plane
150   UInt_t      fStoreTPCTrackBitMask;  // TPC bit mask
151   UInt_t      fStoreGCGTrackBitMask;  // GCG bit maks
152   TString     fESDInfo;       // information of aliroot,  root version while esd production
153   Bool_t      fRefitESDVertexTracks;   // refit to ESD vertex tracks
154
155   //==== Detector Status ====//
156   Short_t     fL3MagnetPolarity; //Polarity of magnetic filed in L3 magnet (LHC convention: + -> +Bz)
157   Double32_t  fMagneticFieldL3;  //Solenoid Magnetic Field in kG   
158   Float_t     fCurrentL3; // L3 current
159   Float_t     fCurrentDip; // dipole current
160   Bool_t      fUniformBMap; // beam uniformity
161   
162   //==== Trigger Information ====//
163   TString     fFiredTriggers;       // String with fired triggers
164   ULong64_t   fTriggerMask;         // Trigger Type (mask)
165   UChar_t     fTriggerCluster;      // Trigger cluster (mask)
166   Int_t           fSizeOfTableJCorran;  //size of jcorran table
167   std::vector<TString> fActiveTriggersJCorran;   //array maping between trigger bit and trigger names
168   std::vector<TString> fActiveTriggersAlice;   //array maping between trigger bit and trigger names
169   //TBit 0 = MB 
170   ClassDef(AliJRunHeader,3)
171
172 };
173
174 #endif
175