Resolving all symbols in the library
[u/mrichter/AliRoot.git] / TOF / AliTOFCalPlateC.cxx
CommitLineData
6dc9348d 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
762446e0 16/*
17$Log$
655e379f 18Revision 1.6 2006/04/20 22:30:49 hristov
19Coding conventions (Annalisa)
20
0e46b9ae 21Revision 1.5 2006/04/16 22:29:05 hristov
22Coding conventions (Annalisa)
23
7aeeaf38 24Revision 1.4 2006/04/05 08:35:38 hristov
25Coding conventions (S.Arcelli, C.Zampolli)
26
340693af 27Revision 1.3 2006/03/28 14:57:56 arcelli
28updates to handle new V5 geometry & some re-arrangements
29
d4ad0d6b 30Revision 1.2 2006/02/13 17:22:26 arcelli
31just Fixing Log info
32
762446e0 33Revision 1.1 2006/02/13 16:10:48 arcelli
34Add classes for TOF Calibration (C.Zampolli)
35
6dc9348d 36author: Chiara Zampolli, zampolli@bo.infn.it
762446e0 37*/
6dc9348d 38
39///////////////////////////////////////////////////////////////////////////////
40// //
41// class for TOF calibration : PlateC //
42// //
43///////////////////////////////////////////////////////////////////////////////
44
6dc9348d 45#include "TBrowser.h"
0e46b9ae 46
d4ad0d6b 47#include "AliLog.h"
0e46b9ae 48
6dc9348d 49#include "AliTOFCalPlateC.h"
0e46b9ae 50#include "AliTOFCalStrip.h"
6dc9348d 51#include "AliTOFChannel.h"
0e46b9ae 52#include "AliTOFGeometryV5.h"
6dc9348d 53
54ClassImp(AliTOFCalPlateC)
55
56//________________________________________________________________
57
655e379f 58AliTOFCalPlateC::AliTOFCalPlateC():
59 fNStripC(0),
60 fNpadZ(0),
61 fNpadX(0),
62 fGeom(0x0),
63 fCh(0x0)
64{
340693af 65 //main ctor
6dc9348d 66}
67//________________________________________________________________
68
655e379f 69AliTOFCalPlateC::AliTOFCalPlateC(AliTOFChannel *ch) :
70 fNStripC(0),
71 fNpadZ(0),
72 fNpadX(0),
73 fGeom(0x0),
74 fCh(ch)
d4ad0d6b 75{
340693af 76 //ctor with channel
d4ad0d6b 77}
78//________________________________________________________________
79
655e379f 80AliTOFCalPlateC::AliTOFCalPlateC(AliTOFGeometry *geom):
81 fNStripC(0),
82 fNpadZ(0),
83 fNpadX(0),
84 fGeom(geom),
85 fCh(0x0)
86{
340693af 87 //ctor with geom
d4ad0d6b 88 fNStripC = fGeom->NStripC();
89 fNpadZ = fGeom->NpadZ();
90 fNpadX = fGeom->NpadX();
91}
92//________________________________________________________________
6dc9348d 93
655e379f 94AliTOFCalPlateC::AliTOFCalPlateC(AliTOFGeometry *geom, AliTOFChannel *ch):
95 fNStripC(0),
96 fNpadZ(0),
97 fNpadX(0),
98 fGeom(geom),
99 fCh(ch)
d4ad0d6b 100{
340693af 101 //ctor with channel and geom
d4ad0d6b 102 fNStripC = fGeom->NStripC();
103 fNpadZ = fGeom->NpadZ();
104 fNpadX = fGeom->NpadX();
6dc9348d 105}
d4ad0d6b 106
6dc9348d 107//________________________________________________________________
108
7aeeaf38 109AliTOFCalPlateC& AliTOFCalPlateC::operator=(const AliTOFCalPlateC& pl)
110 {
111 //assignment operator
112 this->fCh = pl.fCh;
113 this->fNStripC = pl.fNStripC;
114 this->fNpadZ = pl.fNpadZ;
115 this->fNpadX = pl.fNpadX;
116 this->fGeom = pl.fGeom;
117 return *this;
118
119 }
120//________________________________________________________________
121
6dc9348d 122AliTOFCalPlateC::~AliTOFCalPlateC()
123{
340693af 124 //dtor
6dc9348d 125 delete[] fCh;
126}
127
128//________________________________________________________________
129
130AliTOFCalPlateC::AliTOFCalPlateC(const AliTOFCalPlateC& pl):
655e379f 131 TObject(pl),
132 fNStripC(0),
133 fNpadZ(0),
134 fNpadX(0),
135 fGeom(0x0),
136 fCh(0x0)
6dc9348d 137 {
340693af 138 //copy ctor
6dc9348d 139 fCh = pl.fCh;
6dc9348d 140 fNStripC = pl.fNStripC;
141 fNpadZ = pl.fNpadZ;
142 fNpadX = pl.fNpadX;
d4ad0d6b 143 fGeom = pl.fGeom;
6dc9348d 144
145 }
146//________________________________________________________________
147
148void AliTOFCalPlateC::Browse(TBrowser *b){
340693af 149 //add cal obj to list of browsables
6dc9348d 150
d4ad0d6b 151 if(fGeom==0x0){
152 AliTOFGeometry *geom = new AliTOFGeometryV5();
153 AliInfo("V5 TOF Geometry is taken as the default");
154 fNStripC = geom->NStripC();
155 fNpadZ = geom->NpadZ();
156 fNpadX = geom->NpadX();
157 delete geom;
158 }
6dc9348d 159 char name[10];
160 for(Int_t i=0; i<fNStripC; ++i) {
161 snprintf(name,sizeof(name),"Strip %2.2d",i);
162 b->Add(new AliTOFCalStrip(&fCh[i*fNpadZ*fNpadX]),name);
163 }
164}