Bug corrected.
[u/mrichter/AliRoot.git] / STEER / AliAODMCHeader.h
CommitLineData
dce1b636 1// -*- mode: C++ -*-
2#ifndef ALIAODMCHEADER_H
3#define ALIAODMCHEADER_H
4
5/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
6 * See cxx source for full Copyright notice */
7
8//-------------------------------------------------------------------------
9// Class AliAODMCHeader
10// Some MC specific inforamtion for filtering KINE infomration to the AOD
11// Origin: Christian Klein-Boesing, CERN, Christian.Klein-Boesing@cern.ch
12//-------------------------------------------------------------------------
13
14#include "AliVHeader.h"
15
16class AliAODMCHeader: public AliVHeader {
17public:
18 AliAODMCHeader();
19 virtual ~AliAODMCHeader();
20 AliAODMCHeader(const AliAODMCHeader& header);
21 AliAODMCHeader& operator=(const AliAODMCHeader& header);
22 virtual void Copy(TObject &obj) const;
23
24 virtual void SetGeneratorName(const char* c){fGenerator = c;}
25 virtual void AddGeneratorName(const char* c){fGenerator += c;}
26 virtual const char* GetGeneratorName() const {return fGenerator.Data();}
27
28 virtual void SetVertex(Double_t *vtx){
29 fVertex[0] = vtx[0]; fVertex[1] = vtx[1]; fVertex[2] = vtx[2];
30 }
31 virtual void SetVertex(Double_t x,Double_t y,Double_t z){
32 fVertex[0] = x; fVertex[1] = y; fVertex[2] = z;
33 }
34 virtual void GetVertex(Double_t *vtx) const {
35 vtx[0] = fVertex[0]; vtx[1] = fVertex[1]; vtx[2] = fVertex[2];
36 }
37
38 virtual Double_t GetVtxX() const { return fVertex[0]; }
39 virtual Double_t GetVtxY() const { return fVertex[1]; }
40 virtual Double_t GetVtxZ() const { return fVertex[2]; }
41
42
43 virtual void SetImpactParameter(Double_t b){fImpactPar = b;}
44 virtual Double_t GetImpactParameter() const {return fImpactPar;}
45
0fd37a1f 46 virtual void SetPtHard(Double_t f){fPtHard = f;}
47 virtual Double_t GetPtHard() const {return fPtHard;}
48
34477296 49 virtual void SetReactionPlaneAngle(Double_t b){fReactionPlaneAngle = b;}
50 virtual Double_t GetReactionPlaneAngle() const {return fReactionPlaneAngle;}
51
dce1b636 52 virtual void SetEventType(UInt_t eventType){fEventType = eventType;}
53 virtual UInt_t GetEventType() const {return fEventType;}
54
55 virtual void Reset();
56 virtual void Print(const Option_t *opt=0) const;
57
58 // needed to make class non virtual
59 virtual UShort_t GetBunchCrossNumber() const {return 0;}
60 virtual UInt_t GetOrbitNumber() const {return 0;}
61 virtual UInt_t GetPeriodNumber() const {return 0;}
62 virtual ULong64_t GetTriggerMask() const {return 0;}
63 virtual UChar_t GetTriggerCluster() const {return 0;}
64 //
65
66 static const char* StdBranchName(){return fgkStdBranchName.Data();}
67
68private:
69
70 static TString fgkStdBranchName; // Standard branch name
71
72 TString fGenerator; // Name of the generator, combination of names in case of gen cocktail
73 Double32_t fVertex[3]; // MC vertex
74 Double32_t fImpactPar; // Impact parameter in case of Pb+Pb
0fd37a1f 75 Double32_t fPtHard; // [0,0,12] Pt hard for jet events
dce1b636 76 UInt_t fEventType; // MC Process Type of Event
34477296 77 Double32_t fReactionPlaneAngle;// MC Reaction Plane Angle
dce1b636 78
25a4d6d2 79 ClassDef(AliAODMCHeader,3)
dce1b636 80
81};
82
83#endif