]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG2/UNICOR/AliUnicorEvent.h
Bug coreected in PTM gain array indexes
[u/mrichter/AliRoot.git] / PWG2 / UNICOR / AliUnicorEvent.h
CommitLineData
621688e4 1#ifndef ALIUNICOREVENT_H
2#define ALIUNICOREVENT_H
3
4/* Copyright(c) 1998-2048, ALICE Experiment at CERN, All rights reserved. *
5* See cxx source for full Copyright notice */
6/* $Id$ */
7
8// Author: Dariusz Miskowiec <mailto:d.miskowiec@gsi.de> 2007
9
10//=============================================================================
11// parent class of all events; analyzers access data via this class
12//=============================================================================
13
14#include <cmath>
15#include <TObject.h>
16
17class TTree;
18
19//=============================================================================
20class AliUnicorEvent : public TObject {
21 public:
22 AliUnicorEvent() : TObject(){printf("AliUnicorEvent object created\n");}
23 virtual ~AliUnicorEvent() {printf("AliUnicorEvent object deleted\n");}
24
25 // interface part
26
27 virtual void AttachTree(TTree *tr) = 0;
28 virtual Double_t Etamin() const = 0; // experiment's acceptance
29 virtual Double_t Etamax() const = 0;
30 virtual Bool_t Good() const = 0;
31 virtual Double_t Centrality() = 0; // centrality (0,1); 0 is most central
32 virtual void RP(Double_t &qx, Double_t &qy) const = 0;
33 virtual Double_t RPphi() const = 0;
34 virtual Double_t Zver() const = 0; // z-vertex (-1,1)
35 virtual Int_t NParticles() const = 0;
36
37 virtual Bool_t ParticleGood(Int_t i, Int_t pidi) const = 0;
38 virtual Double_t ParticleP(Int_t i) const = 0;
39 virtual Double_t ParticleTheta(Int_t i) const = 0;
40 virtual Double_t ParticlePhi(Int_t i) const = 0;
41 virtual Double_t ParticleDedx(Int_t i) const = 0;
42 virtual Bool_t PairGood(Double_t p0, Double_t the0, Double_t phi0,
43 Double_t p1, Double_t the1, Double_t phi1) const = 0;
44
45 // toolkit part
46
47 void RP(Double_t &qx, Double_t &qy, Int_t harmonic) const;
48 Double_t ParticlePt(Int_t i) const {return ParticleP(i)*sin(ParticleTheta(i));}
49 Double_t ParticlePz(Int_t i) const {return ParticleP(i)*cos(ParticleTheta(i));}
50 Double_t ParticleEta(Int_t i) const;
51 Double_t ParticleY(Int_t i, Double_t mass) const;
52
53 ClassDef(AliUnicorEvent,0)
54};
55#endif
56//=============================================================================