Improved QAchecker and plots for DQM
[u/mrichter/AliRoot.git] / TOF / AliTOFcluster.cxx
... / ...
CommitLineData
1/**************************************************************************
2 * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
3 * *
4 * Author: The ALICE Off-line Project. *
5 * Contributors are mentioned in the code where appropriate. *
6 * *
7 * Permission to use, copy, modify and distribute this software and its *
8 * documentation strictly for non-commercial purposes is hereby granted *
9 * without fee, provided that the above copyright notice appears in all *
10 * copies and that both the copyright notice and this permission notice *
11 * appear in the supporting documentation. The authors make no claims *
12 * about the suitability of this software for any purpose. It is *
13 * provided "as is" without express or implied warranty. *
14 **************************************************************************/
15/*
16Revision 0.02 2005/07/27 A. De Caro
17 Implement new ctor AliTOFcluster(Double_t *, Int_t *)
18 for cluster construction from raw data
19
20Revision 0.01 2005/07/25 A. De Caro
21 Implement new class statring from
22 class definition inside AliTOFtracker class
23 (originally implemented by S. Arcelli and C. Zampolli)
24*/
25
26////////////////////////////////////////////////////////
27// //
28// AliTOFcluster Class //
29// Description: class for TOF cluster definition //
30// //
31////////////////////////////////////////////////////////
32
33#include "AliTOFcluster.h"
34//#include "AliLog.h"
35//#include "AliGeomManager.h"
36//#include "TGeoMatrix.h"
37
38ClassImp(AliTOFcluster)
39
40AliTOFcluster::AliTOFcluster():
41 AliCluster3D(),
42 fIdx(-1),
43 fQuality(-100),
44 fR(0),
45 fPhi(0),
46 fTDC(0),
47 fToT(0),
48 fADC(0),
49 fTdcND(0),
50 fTdcRAW(0),
51 fStatus(kTRUE),
52 fDeltaBC(0),
53 fL0L1Latency(0)
54 {
55 //
56 // default ctor
57 //
58
59 Int_t ii;
60 for (ii=0; ii<5; ii++) fdetIndex[ii] = -1;
61}
62//-------------------------------------------------------------------------
63
64AliTOFcluster::AliTOFcluster(UShort_t volId,
65 Float_t x, Float_t y, Float_t z,
66 Float_t sx2, Float_t sxy, Float_t sxz,
67 Float_t sy2, Float_t syz,
68 Float_t sz2,
69 Int_t *lab, Int_t * const ind,
70 Int_t *par, Bool_t status, Int_t idx):
71 AliCluster3D(volId,x,y,z,sx2,sxy,sxz,sy2,syz,sz2,lab),
72 fIdx(idx),
73 fQuality(-100),
74 fR(0),
75 fPhi(0),
76 fTDC(par[0]),
77 fToT(par[1]),
78 fADC(par[2]),
79 fTdcND(par[3]),
80 fTdcRAW(par[4]),
81 fStatus(status),
82 fDeltaBC(par[5]),
83 fL0L1Latency(par[6])
84 {
85 //
86 // constructor
87 //
88 Int_t ii;
89 for (ii=0; ii<5; ii++) fdetIndex[ii] = ind[ii];
90
91 Float_t xyz[3];
92 GetGlobalXYZ(xyz);
93 fR = TMath::Sqrt(xyz[0]*xyz[0] + xyz[1]*xyz[1]);
94 fPhi = TMath::ATan2(xyz[1], xyz[0]);
95
96}
97//-------------------------------------------------------------------------
98
99AliTOFcluster::AliTOFcluster(const AliTOFcluster & cluster):
100 AliCluster3D(cluster),
101 fIdx(cluster.fIdx),
102 fQuality(cluster.fQuality),
103 fR(cluster.fR),
104 fPhi(cluster.fPhi),
105 fTDC(cluster.fTDC),
106 fToT(cluster.fToT),
107 fADC(cluster.fADC),
108 fTdcND(cluster.fTdcND),
109 fTdcRAW(cluster.fTdcRAW),
110 fStatus(cluster.fStatus),
111 fDeltaBC(cluster.fDeltaBC),
112 fL0L1Latency(cluster.fL0L1Latency)
113 {
114 //
115 // copy ctor for AliTOFcluster object
116 //
117
118 Int_t ii;
119 for (ii=0; ii<5; ii++) fdetIndex[ii] = cluster.fdetIndex[ii];
120}
121//-------------------------------------------------------------------------
122
123AliTOFcluster & AliTOFcluster::operator = (const AliTOFcluster & cluster)
124{
125
126 if (this == &cluster)
127 return *this;
128
129 TObject::operator=(cluster);
130 fIdx=cluster.fIdx;
131 fQuality=cluster.fQuality;
132 fR=cluster.fR;
133 fPhi=cluster.fPhi;
134 fTDC=cluster.fTDC;
135 fToT=cluster.fToT;
136 fADC=cluster.fADC;
137 fTdcND=cluster.fTdcND;
138 fTdcRAW=cluster.fTdcRAW;
139 fStatus=cluster.fStatus;
140 fDeltaBC=cluster.fDeltaBC;
141 fL0L1Latency=cluster.fL0L1Latency;
142 for (Int_t ii=0; ii<5; ii++)
143 fdetIndex[ii] = cluster.fdetIndex[ii];
144 return *this;
145
146}
147//-------------------------------------------------------------------------
148
149AliTOFcluster::~AliTOFcluster() {
150
151 //
152 // dtor
153 //
154
155}
156
157