/*
$Log$
+Revision 1.6 2006/04/20 22:30:49 hristov
+Coding conventions (Annalisa)
+
+Revision 1.5 2006/04/16 22:29:05 hristov
+Coding conventions (Annalisa)
+
+Revision 1.4 2006/04/05 08:35:38 hristov
+Coding conventions (S.Arcelli, C.Zampolli)
+
+Revision 1.3 2006/03/28 14:57:48 arcelli
+updates to handle new V5 geometry & some re-arrangements
+
+Revision 1.2 2006/02/13 17:22:26 arcelli
+just Fixing Log info
+
Revision 1.1 2006/02/13 16:10:48 arcelli
Add classes for TOF Calibration (C.Zampolli)
// //
///////////////////////////////////////////////////////////////////////////////
-#include "TObject.h"
-#include "TROOT.h"
#include "TBrowser.h"
-#include "TClass.h"
-#include "AliTOFGeometryV4.h"
-#include "AliTOFCalStrip.h"
+
+#include "AliLog.h"
+
#include "AliTOFCalPlateB.h"
+#include "AliTOFCalStrip.h"
#include "AliTOFChannel.h"
+#include "AliTOFGeometryV5.h"
ClassImp(AliTOFCalPlateB)
//________________________________________________________________
-AliTOFCalPlateB::AliTOFCalPlateB(){
- fCh = 0;
- fNSector = AliTOFGeometryV4::NSectors();
- fNPlate = AliTOFGeometryV4::NPlates();
- fNStripA = AliTOFGeometryV4::NStripA();
- fNStripB = AliTOFGeometryV4::NStripB();
- fNStripC = 20;
- // fNStripC = AliTOFGeometryV4::NStripC();
- fNpadZ = AliTOFGeometryV4::NpadZ();
- fNpadX = AliTOFGeometryV4::NpadX();
+AliTOFCalPlateB::AliTOFCalPlateB():
+ fNStripB(0),
+ fNpadZ(0),
+ fNpadX(0),
+ fGeom(0x0),
+ fCh(0x0)
+{
+ //main ctor
+}
+//________________________________________________________________
+AliTOFCalPlateB::AliTOFCalPlateB(AliTOFChannel *ch) :
+ fNStripB(0),
+ fNpadZ(0),
+ fNpadX(0),
+ fGeom(0x0),
+ fCh(ch)
+{
+ //ctor with channel
}
//________________________________________________________________
-AliTOFCalPlateB::AliTOFCalPlateB(AliTOFChannel *ch):
+AliTOFCalPlateB::AliTOFCalPlateB(AliTOFGeometry *geom):
+ fNStripB(0),
+ fNpadZ(0),
+ fNpadX(0),
+ fGeom(geom),
+ fCh(0x0)
+{
+ //ctor with geom
+ fNStripB = fGeom->NStripB();
+ fNpadZ = fGeom->NpadZ();
+ fNpadX = fGeom->NpadX();
+}
+//________________________________________________________________
+
+AliTOFCalPlateB::AliTOFCalPlateB(AliTOFGeometry *geom, AliTOFChannel *ch):
+ fNStripB(0),
+ fNpadZ(0),
+ fNpadX(0),
+ fGeom(geom),
fCh(ch)
{
- fNSector = AliTOFGeometryV4::NSectors();
- fNPlate = AliTOFGeometryV4::NPlates();
- fNStripA = AliTOFGeometryV4::NStripA();
- fNStripB = AliTOFGeometryV4::NStripB();
- fNStripC = 20;
- // fNStripC = AliTOFGeometryV4::NStripC();
- fNpadZ = AliTOFGeometryV4::NpadZ();
- fNpadX = AliTOFGeometryV4::NpadX();
+ //ctor with channel and geom
+ fNStripB = fGeom->NStripB();
+ fNpadZ = fGeom->NpadZ();
+ fNpadX = fGeom->NpadX();
}
+
//________________________________________________________________
AliTOFCalPlateB::~AliTOFCalPlateB()
{
+ //dtor
delete[] fCh;
}
//________________________________________________________________
AliTOFCalPlateB::AliTOFCalPlateB(const AliTOFCalPlateB& pl):
- TObject(pl)
+ TObject(pl),
+ fNStripB(0),
+ fNpadZ(0),
+ fNpadX(0),
+ fGeom(0x0),
+ fCh(0x0)
{
+ //copy ctor
fCh = pl.fCh;
- fCh = pl.fCh;
- fCh = pl.fCh;
- fNSector = pl.fNSector;
- fNPlate = pl.fNPlate;
- fNStripA = pl.fNStripA;
fNStripB = pl.fNStripB;
- fNStripC = pl.fNStripC;
fNpadZ = pl.fNpadZ;
fNpadX = pl.fNpadX;
+ fGeom = pl.fGeom;
+
+ }
+//________________________________________________________________
+
+AliTOFCalPlateB& AliTOFCalPlateB::operator=(const AliTOFCalPlateB& pl)
+ {
+ //assignment operator
+ this->fCh = pl.fCh;
+ this->fNStripB = pl.fNStripB;
+ this->fNpadZ = pl.fNpadZ;
+ this->fNpadX = pl.fNpadX;
+ this->fGeom = pl.fGeom;
+ return *this;
}
//________________________________________________________________
void AliTOFCalPlateB::Browse(TBrowser *b){
+ //add cal obj to list of browsables
+ if(fGeom==0x0){
+ AliTOFGeometry *geom = new AliTOFGeometryV5();
+ AliInfo("V5 TOF Geometry is taken as the default");
+ fNStripB = geom->NStripB();
+ fNpadZ = geom->NpadZ();
+ fNpadX = geom->NpadX();
+ delete geom;
+ }
char name[10];
for(Int_t i=0; i<fNStripB; ++i) {
snprintf(name,sizeof(name),"Strip %2.2d",i);