]> git.uio.no Git - u/mrichter/AliRoot.git/blame - TPC/Upgrade/AliToyMCEvent.h
Initialization of material budget before tracking steps
[u/mrichter/AliRoot.git] / TPC / Upgrade / AliToyMCEvent.h
CommitLineData
de0014b7 1#ifndef AliToyMCEvent_H
2#define AliToyMCEvent_H
526ddf0e 3
4
5#include <TClonesArray.h>
de0014b7 6#include "AliToyMCTrack.h"
526ddf0e 7
de0014b7 8class AliToyMCEvent : public TObject {
526ddf0e 9 public:
de0014b7 10 AliToyMCEvent();
11 AliToyMCEvent(const AliToyMCEvent &event);
12 virtual ~AliToyMCEvent() {}
13 AliToyMCEvent& operator = (const AliToyMCEvent &event);
d1cf83f5 14
0403120d 15 enum EEventType {
16 kPhysics=0,
17 kLaser
18 };
19
d1cf83f5 20 static void SetInitialEventCounter(Int_t iev) { fgEvCounter=iev; }
526ddf0e 21
de0014b7 22 AliToyMCTrack* AddTrack(const AliToyMCTrack &track);
0403120d 23 AliToyMCTrack* AddTrack(Double_t xyz[3],Double_t pxpypz[3],
24 Double_t cv[21],Short_t sign);
25
526ddf0e 26 Int_t GetNumberOfTracks() const { return fTracks.GetEntriesFast(); }
de0014b7 27 const AliToyMCTrack* GetTrack(Int_t track) const { return static_cast<const AliToyMCTrack*>(fTracks.At(track)); }
526ddf0e 28
29 void SetT0 (Float_t time) { fT0 = time; }
30 void SetX(Float_t var) { fX = var; }
31 void SetY(Float_t var) { fY = var; }
32 void SetZ(Float_t var) { fZ = var; }
33
34 UInt_t GetEventNumber() const {return fEventNumber; }
35 Float_t GetT0() const {return fT0; }
36 Float_t GetX() const {return fX; }
37 Float_t GetY() const {return fY; }
38 Float_t GetZ() const {return fZ; }
0403120d 39
40 void SetEventType(EEventType type) { fEventType=type; }
41 EEventType GetEventType() const { return fEventType; }
526ddf0e 42
43 private:
d1cf83f5 44 static Int_t fgEvCounter;
526ddf0e 45
46 UInt_t fEventNumber;
0403120d 47
48 EEventType fEventType;
526ddf0e 49
50 Float_t fT0;
51 Float_t fX;
52 Float_t fY;
53 Float_t fZ;
54
55 TClonesArray fTracks;
56
de0014b7 57 ClassDef(AliToyMCEvent, 1);
526ddf0e 58
59};
60
61#endif