]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG4/JCORRAN/AliPhJPiZero.h
added the fragmentation function task to the train
[u/mrichter/AliRoot.git] / PWG4 / JCORRAN / AliPhJPiZero.h
1 // $Id: AliPhJPiZero.h,v 1.4 2008/05/08 15:19:52 djkim Exp $
2
3 ////////////////////////////////////////////////////
4 /*!
5   \file AliPhJPiZero.h
6   \brief
7   \author J. Rak, D.J.Kim, R.Diaz (University of Jyvaskyla)
8   \email: djkim@jyu.fi
9   \version $Revision: 1.4 $
10   \date $Date: 2008/05/08 15:19:52 $
11 */
12 ////////////////////////////////////////////////////
13
14 #ifndef ALIPHJPIZERO_H
15 #define ALIPHJPIZERO_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 <math.h>
25 #include <stdio.h>
26 #include <TVector3.h>
27 #include <TLorentzVector.h>
28
29 #include  "AliPhJBaseTrack.h"
30 #include  "AliPhJPhoton.h"
31
32 //class AliPhJPhoton;
33 //class TObject;
34
35 class AliPhJPiZero : public AliPhJBaseTrack {
36
37 public:
38   AliPhJPiZero();//{PhotSum.SetPxPyPzE(0,0,0,0);}   //constructor
39   AliPhJPiZero(const AliPhJPiZero& a);//{PhotSum.SetPxPyPzE(0,0,0,0);}   //constructor
40   ~AliPhJPiZero(){;}                  //destructor
41
42   bool SetMass(AliPhJPhoton* g1, AliPhJPhoton* g2);
43
44   float GetInvMass()  const {return fPizM;}
45   float GetAsymm()    const {return fAsymm;}
46   
47   int   GetMassBin()  const {return fMassBin;}
48   void  SetMassBin(int im)  {fMassBin=im;}
49   void  ResetToZero(){fPizM=0; fBasePt=0; fBasePhi=0; fBaseTheta=0; fAsymm=0; fMassBin=-1;}
50   
51   TVector3 GetP() const {return fPi0P;}
52   //TLorentzVector &GetSum() {return *PhotSum;}  //I think should be like that
53   TLorentzVector GetSum() const {return fPhotSum;} 
54
55   double operator- (const AliPhJPiZero &pi0);
56
57   AliPhJPiZero& operator= (const AliPhJPiZero& piz);
58
59 protected:
60   TVector3 fV1, fV2; //vector 1 and 2
61   TVector3 fPi0P;     // pi0 momentum
62   TLorentzVector fPhotSum; //sum of lorentz vectors of two photons
63   TLorentzVector fPhoton1, fPhoton2; //decay photons
64   float fAsymm, fPizM;//assymtery and inv. mass
65   int fMassBin;    //mass bin
66   
67   ClassDef(AliPhJPiZero,1)
68 };
69
70 #endif
71