]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG4/JCORRAN/AliJMCTrack.h
Updating track cuts and removing functionality that is now in separate cosmics tasks
[u/mrichter/AliRoot.git] / PWG4 / JCORRAN / AliJMCTrack.h
CommitLineData
2f4cac02 1// $Id: AliJMCTrack.h,v 1.3 2008/05/08 15:19:52 djkim Exp $
2
3////////////////////////////////////////////////////
4/*!
5 \file AliJMCTrack.h
6 \brief
7 \author J. Rak, D.J.Kim, R.Diaz (University of Jyvaskyla)
8 \email: djkim@jyu.fi
9 \version $Revision: 1.3 $
10 \date $Date: 2008/05/08 15:19:52 $
11*/
12////////////////////////////////////////////////////
13
14#ifndef ALIJMCTRACK_H
15#define ALIJMCTRACK_H
16
17#ifndef ROOT_TObject
18#include <TObject.h>
19#endif
20
21#include <iostream>
22#include <fstream>
23#include <stdlib.h>
24#include <stdio.h>
25#include <math.h>
26
27#include "AliPhJBaseTrack.h"
28
29//class TObject;
30
31class AliJMCTrack : public AliPhJBaseTrack {
32
33public:
34
35 AliJMCTrack(); //default constructor
36 AliJMCTrack(const AliJMCTrack& a); //copy constructor
37
38 ~AliJMCTrack(){;} //destructor
39
40 Int_t GetPdgCode() const {return fPdgCode;}
41 Int_t GetStatusCode() const {return fStatus;}
42 Int_t GetFlag() const {return fFlag;}
43 Int_t GetLabel() const {return fLabel;}
44 Int_t GetMother (Int_t i) const {return fMother[i];}
45 Int_t GetDaughter(Int_t i) const {return fDaughter[i];}
46 Double_t GetEta() const {return fEta;}
47 bool IsPrimary() const {return fPrimary;}
48 bool IsInPHOS() const {return fPHOS;}
49 bool IsInEMCAL() const {return fEMCAL;}
50 bool IsInTPC() const {return fTPC;}
51 Double_t GetPtHard() const {return fPtHard;}
52
53 void SetPdgCode(Int_t icode) {fPdgCode=icode;}
54 void SetStatusCode(Int_t icode) {fStatus=icode;}
55 void SetFlag(Int_t i) {fFlag=i;}
56 void SetLabel(Int_t i) {fLabel=i;}
57 void SetMother (int i, int code){ fMother[i] = code ; }
58 void SetDaughter(int i, int code){ fDaughter[i] = code ; }
59 void SetEta(Double_t i) {fEta=i;}
60 void SetProductionVertex(Double_t vx, Double_t vy, Double_t vz)
61 {fVx=vx; fVy=vy; fVz=vz;}
62 void SetIsPrimary(bool in) {fPrimary=in;}
63 void SetIsInPHOS(bool in) {fPHOS=in;}
64 void SetIsInEMCAL(bool in) {fEMCAL=in;}
65 void SetIsInTPC(bool in) {fTPC=in;}
66 void SetPtHard(Double_t i) {fPtHard=i;}
67
68
69 AliJMCTrack& operator=(const AliJMCTrack& trk);
70
71
72private:
73
74 Int_t fPdgCode; // PDG code of the particle
75 Int_t fStatus; //status flag
76 Int_t fFlag; // Flag for indication of primary etc
77 Int_t fLabel; // Label of the original MCParticle
78 Int_t fMother[2]; // Index of the mother particles
79 Int_t fDaughter[2]; // Indices of the daughter particles
80
81 Double32_t fVx; // [0.,0.,12] x of production vertex
82 Double32_t fVy; // [0.,0.,12] y of production vertex
83 Double32_t fVz; // [0.,0.,12] z of production vertex
84 Double_t fEta; //pseudorapidity
85 bool fPrimary; //primary particle flag
86 bool fPHOS; //hit in PHOS
87 bool fEMCAL; //hit in EMCAL
88 bool fTPC; //hit in TPC
89 Double_t fPtHard; //hard particle
90
91
92 ClassDef(AliJMCTrack,1)
93};
94
95#endif