Compilation on Windows/Cygwin
[u/mrichter/AliRoot.git] / JETAN / AliJetUnitArray.h
CommitLineData
ee7de0dd 1#ifndef ALIJETUNITARRAY_H
2#define ALIJETUNITARRAY_H
4a01bb2c 3
4/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * * * See cxx source for full Copyright notice */
6
ee7de0dd 7//------------------------------------------------------------------
4a01bb2c 8// Unit used by UA1 algorithm
ee7de0dd 9// Authors: Sarah Blyth (LBL/UCT)
10// Magali Estienne (IReS) (new version for JETAN)
11//------------------------------------------------------------------
12
4a01bb2c 13
14#include <TObject.h>
15#include "AliJetFinderTypes.h"
16
17class AliJetUnitArray : public TObject
18{
19 public:
20 AliJetUnitArray();
ee7de0dd 21 AliJetUnitArray(Int_t absId, Int_t esdId, Float_t eta, Float_t phi, Float_t en, Float_t px, Float_t py, Float_t pz, Float_t Deta, Float_t Dphi, AliJetFinderUnitDetectorFlagType_t det, AliJetFinderUnitFlagType_t inout, AliJetFinderUnitCutFlagType_t cut, Float_t mass, Int_t clusId);
4a01bb2c 22 ~AliJetUnitArray();
23
24 // Setter
25 void SetUnitEnergy(Float_t energy) {fUnitEnergy = energy;}
26 void SetUnitEta(Float_t eta) {fUnitEta = eta;}
27 void SetUnitPhi(Float_t phi) {fUnitPhi = phi;}
28 void SetUnitDeta(Float_t deta) {fUnitDeta = deta;}
29 void SetUnitDphi(Float_t dphi) {fUnitDphi = dphi;}
30 void SetUnitID(Int_t id) {fUnitID = id;}
ee7de0dd 31 void SetUnitTrackID(Int_t esdid) {fUnitTrackID = esdid;}
4a01bb2c 32 void SetUnitEntries(Int_t num) {fUnitNum = num;}
33 void SetUnitClusterID(Int_t id) {fUnitClusterID = id;}
34 void SetUnitFlag(AliJetFinderUnitFlagType_t flag)
35 {
36 fUnitFlag = flag;
37 }
38 void SetUnitCutFlag(AliJetFinderUnitCutFlagType_t cutFlag)
39 {
40 fUnitCutFlag = cutFlag;
41 }
42 void SetUnitSignalFlag(AliJetFinderUnitSignalFlagType_t signalFlag)
43 {
44 fUnitSignalFlag = signalFlag;
45 }
46 void SetUnitDetectorFlag(AliJetFinderUnitDetectorFlagType_t detectorflag)
47 {
48 fUnitDetectorFlag = detectorflag;
49 }
ee7de0dd 50 void SetUnitPxPyPz(Double_t *pxyz) {fUnitPx = pxyz[0]; fUnitPy = pxyz[1]; fUnitPz = pxyz[2];}
51 void SetUnitMass(Float_t mass) {fUnitMass = mass;}
4a01bb2c 52
53 // Getter
54 Float_t GetUnitEnergy() const {return fUnitEnergy;}
55 Float_t GetUnitEta() const {return fUnitEta;}
56 Float_t GetUnitPhi() const {return fUnitPhi;}
57 Float_t GetUnitDeta() const {return fUnitDeta;}
58 Float_t GetUnitDphi() const {return fUnitDphi;}
59 Int_t GetUnitID() const {return fUnitID;}
ee7de0dd 60 Int_t GetUnitTrackID() const {return fUnitTrackID;}
4a01bb2c 61 Int_t GetUnitEntries() const {return fUnitNum;}
62 Int_t GetUnitClusterID() const {return fUnitClusterID;}
ee7de0dd 63 Float_t GetUnitMass() const {return fUnitMass;}
64 Bool_t GetUnitPxPyPz(Double_t* p) const {p[0]=fUnitPx; p[1]=fUnitPy; p[2]=fUnitPz; return kTRUE;}
65
4a01bb2c 66 AliJetFinderUnitFlagType_t GetUnitFlag() const
67 {
68 return fUnitFlag;
69 }
70 AliJetFinderUnitCutFlagType_t GetUnitCutFlag() const
71 {
72 return fUnitCutFlag;
73 }
74 AliJetFinderUnitSignalFlagType_t GetUnitSignalFlag() const
75 {
76 return fUnitSignalFlag;
77 }
78 AliJetFinderUnitDetectorFlagType_t GetUnitDetectorFlag() const
79 {
80 return fUnitDetectorFlag;
81 }
82
ee7de0dd 83
a1fa3a77 84 Bool_t operator> ( AliJetUnitArray &unit1) const;
85 Bool_t operator< ( AliJetUnitArray &unit1) const;
86 Bool_t operator== ( AliJetUnitArray &unit1) const;
4a01bb2c 87
88 protected:
ee7de0dd 89 Float_t fUnitEnergy; // Energy of the unit
90 Float_t fUnitEta; // Eta of the unit
91 Float_t fUnitPhi; // Phi of the unit
92 Float_t fUnitDeta; // Delta Eta of the unit
93 Float_t fUnitDphi; // Delta Phi of the unit
94 Int_t fUnitID; // ID of the unit
95 Int_t fUnitTrackID; // ID of the unit
96 Int_t fUnitNum; // number of units
97 Int_t fUnitClusterID; // ID of the unit
98 AliJetFinderUnitFlagType_t fUnitFlag; // Flag of the unit
99 AliJetFinderUnitCutFlagType_t fUnitCutFlag; // Flag of the unit
100 AliJetFinderUnitSignalFlagType_t fUnitSignalFlag; // Flag of the unit
101 AliJetFinderUnitDetectorFlagType_t fUnitDetectorFlag; // Detector flag of the unit
102 Float_t fUnitPx; // Px of charged track
103 Float_t fUnitPy; // Py of charged track
104 Float_t fUnitPz; // Pz of charged track
105 Float_t fUnitMass; // Mass of charged particle
4a01bb2c 106
a1fa3a77 107 private:
108 AliJetUnitArray(const AliJetUnitArray &det);
109 AliJetUnitArray &operator=(const AliJetUnitArray &det);
110
ee7de0dd 111 ClassDef(AliJetUnitArray,1)
4a01bb2c 112};
113
114#endif
115