ClassImp(AliTRDtransform)
+AliTRDgeometry* AliTRDtransform::fgGeo = NULL;
+
//_____________________________________________________________________________
AliTRDtransform::AliTRDtransform()
:TObject()
- ,fGeo(0x0)
,fDetector(0)
,fParam(0x0)
,fCalibration(0x0)
// AliTRDtransform default constructor
//
- fGeo = new AliTRDgeometry();
- if (!fGeo->CreateClusterMatrixArray()) {
- AliError("Could not get transformation matrices\n");
+ if(!fgGeo){
+ fgGeo = new AliTRDgeometry();
+ if (!fgGeo->CreateClusterMatrixArray()) {
+ AliError("Could not get transformation matrices\n");
+ }
}
fParam = AliTRDCommonParam::Instance();
//_____________________________________________________________________________
AliTRDtransform::AliTRDtransform(Int_t det)
:TObject()
- ,fGeo(0x0)
,fDetector(0)
,fParam(0x0)
,fCalibration(0x0)
// AliTRDtransform constructor for a given detector
//
- fGeo = new AliTRDgeometry();
- if (!fGeo->CreateClusterMatrixArray()) {
- AliError("Could not get transformation matrices\n");
+ if(!fgGeo){
+ fgGeo = new AliTRDgeometry();
+ if (!fgGeo->CreateClusterMatrixArray()) {
+ AliError("Could not get transformation matrices\n");
+ }
}
fParam = AliTRDCommonParam::Instance();
//_____________________________________________________________________________
AliTRDtransform::AliTRDtransform(const AliTRDtransform &t)
:TObject(t)
- ,fGeo(0x0)
,fDetector(t.fDetector)
,fParam(0x0)
,fCalibration(0x0)
// AliTRDtransform copy constructor
//
- if (fGeo) {
- delete fGeo;
- }
- fGeo = new AliTRDgeometry();
- fGeo->CreateClusterMatrixArray();
-
fParam = AliTRDCommonParam::Instance();
if (!fParam) {
AliError("Could not get common parameters\n");
// AliTRDtransform destructor
//
- if (fGeo) {
- delete fGeo;
- }
-
}
//_____________________________________________________________________________
fCalT0DetValue = fkCalT0Det->GetValue(det);
// Shift needed to define Z-position relative to middle of chamber
- Int_t layer = fGeo->GetLayer(det);
- Int_t stack = fGeo->GetStack(det);
- fPadPlane = fGeo->GetPadPlane(layer,stack);
+ Int_t layer = fgGeo->GetLayer(det);
+ Int_t stack = fgGeo->GetStack(det);
+ fPadPlane = fgGeo->GetPadPlane(layer,stack);
fZShiftIdeal = 0.5 * (fPadPlane->GetRow0() + fPadPlane->GetRowEnd());
// Get the current transformation matrix
- fMatrix = fGeo->GetClusterMatrix(det);
+ fMatrix = fgGeo->GetClusterMatrix(det);
}