]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PHOS/AliPHOSCPV.h
New member functions for CPV clusterization
[u/mrichter/AliRoot.git] / PHOS / AliPHOSCPV.h
CommitLineData
49a7aa5d 1#ifndef ALIPHOSCPV_H
2#define ALIPHOSCPV_H
3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6/* $Id$ */
7
8////////////////////////////////////////////////
9// Manager and hits classes for set:CPV //
10// //
11// Author: Yuri Kharlov, IHEP, Protvino //
12// e-mail: Yuri.Kharlov@cern.ch //
13// Last modified: 23 March 2000 //
14////////////////////////////////////////////////
15
16// --- ROOT system ---
17#include <TClonesArray.h>
18#include <TLorentzVector.h>
19
20// --- galice header files ---
21#include "AliHit.h"
22
23//==============================================================================
24// CPVModule
25//==============================================================================
26
27class CPVModule : public TObject {
28
29public:
30
31 virtual ~CPVModule(void);
32 CPVModule(void);
33
34 void Clear(Option_t *opt="");
35 void Print(Option_t *opt="");
36 void AddHit(TLorentzVector p, Float_t *xy, Int_t ipart);
37 void MakeBranch(Int_t i);
38 void SetTreeAddress(Int_t i);
39
40 TClonesArray *Hits (void) {return fHits;}
41
42private:
43
44 TClonesArray *fHits; // List of hits in the Module
45
46 ClassDef(CPVModule,1) // CPV Module
47};
48
49//==============================================================================
50// CPVHit
51//==============================================================================
52
53class CPVHit : public TObject {
54
55private:
56 TLorentzVector fMomentum; // 4-momentum of the particle
57 Float_t fXhit; // Hit's X-coordinates
58 Float_t fYhit; // Hit's Y-coordinates
59 Int_t fIpart; // Hit's particle type
60
61public:
62 virtual ~CPVHit() {}
63 CPVHit() {}
64 CPVHit(TLorentzVector p, Float_t *xy, Int_t ipart);
65
66 TLorentzVector GetMomentum() { return fMomentum; }
67 Float_t GetX() { return fXhit; }
68 Float_t GetY() { return fYhit; }
69 Int_t GetIpart() { return fIpart; }
70 void Print();
71
72 ClassDef(CPVHit,1) // Hit object in one CPV module
73};
74
75//==============================================================================
76// CPVDigit
77//==============================================================================
78
79class CPVDigit : public TObject {
80
81private:
82 Int_t fXpad; // Digit's pad number in Phi
83 Int_t fYpad; // Digit's pad number in Z
84 Float_t fQpad; // Digit's pad amplitude
85
86public:
87 virtual ~CPVDigit() {}
88 CPVDigit() {}
89 CPVDigit(Int_t x, Int_t y, Float_t q);
90
91 void SetQpad(Float_t q) { fQpad = q; }
92 Int_t GetXpad() { return fXpad; }
93 Int_t GetYpad() { return fYpad; }
94 Float_t GetQpad() { return fQpad; }
95
96 ClassDef(CPVDigit,1) // Digit object in one CPV pad
97};
98
99#endif