bugs found by Rene require more work to fix. Will be fixed soon.
/*
$Log$
+Revision 1.63 2001/10/24 21:16:34 nilsen
+Removed some dead code and improved comments/documntation.
+
Revision 1.62 2001/10/21 19:23:21 nilsen
Added function to allow to limit which detectors to digitize and reconstruct.
The default is All. This change makes no changes to any root file.
fEuclidOut = 0;
fITSgeom = 0;
fITSmodules = 0;
- SetDetectors(); // default to "All". This variable not written out.
+ SetDetectors(); // default to fOpt="All". This variable not written out.
fIdN = 0;
fIdName = 0;
fEuclidOut = 0;
fITSgeom = 0;
fITSmodules = 0;
- SetDetectors(); // default to "All". This variable not written out.
+ SetDetectors(); // default to fOpt="All". This variable not written out.
fIdN = 0;
fIdName = 0;
////////////////////////////////////////////////////////////////////////
#include <TObjArray.h> // used in inline function GetModule.
+#include <TBranch.h> // used in inline function SetHitsAddressBranch
#include "AliDetector.h"
virtual void SetDefaultClusterFinders();
virtual void MakeBranch(Option_t *opt=" ", const char *file=0);
virtual void SetTreeAddress();
+ // For a give branch from the treeH sets the TClonesArray address.
+ virtual void SetHitsAddressBranch(TBranch *b){b->SetAddress(fHits);}
// Return pointer to DetType #id
AliITSDetType *DetType(Int_t id);
//Int_t NDetTypes() {return fNDetTypes;}
ClassImp(AliITSRad)
+//______________________________________________________________________
+AliITSRad::AliITSRad() {
+ // Default constructor
+
+ fmrad1 = 0;
+ fmrad2 = 0;
+ fmrad3 = 0;
+ fmrad4 = 0;
+ fmrad5 = 0;
+ fmrad6 = 0;
+}
AliITSRad::AliITSRad(Int_t iimax, Int_t jjmax) {
imax=iimax;
class AliITSRad : public TObject {
public:
-
+ ALIITSRAD(); // Default constructor.
AliITSRad(Int_t iimax, Int_t jjmax); // class constructor
- ~AliITSRad(); // class destructor
+ virtual ~AliITSRad(); // class destructor
Int_t Getimax() {return imax;} // return the first dimension of the matrices
Int_t Getjmax() {return jmax;} // return the second dimension of the matrices
//////////////////////////////////////////////////////////////////////
-//______________________________________________________________________________
+//______________________________________________________________________
+AliITSVertex::AliITSVertex() {
+ // Default Constructor
-AliITSVertex::AliITSVertex() {
+ fPosition = 0;
+ fResolution = 0;
+ fSNR = 0;
+}
+//______________________________________________________________________
+AliITSVertex::~AliITSVertex() {
+ // Default Constructor
+
+ if(fPosition){ delete [] fPosition; fPostion = 0;}
+ if(fResolution){ delete []fResoultion; fResolution = 0;}
+ if(fSNR){ delete [] fSNR;fSNR = 0;}
+}
+//______________________________________________________________________
+void AliITSVertex::Exec(){
fPosition = new Double_t[3];
fResolution = new Double_t[3];
delete hITSYv;
}
-
-
-//______________________________________________________________________________
-
-AliITSVertex::~AliITSVertex() {
- delete [] fPosition;
- delete [] fResolution;
- delete [] fSNR;
-}
-
-//______________________________________________________________________________
-
+//______________________________________________________________________
Double_t AliITSVertex::PhiFunc(Float_t p[]) {
- Double_t phi=0;
- if(p[1]>0 && p[0]>0) phi=(TMath::ATan((Double_t)(p[1]/p[0]))*57.29578);
- if(p[1]>0 && p[0]<0) phi=(TMath::ATan((Double_t)(p[1]/p[0]))*57.29578)+180;
- if(p[1]<0 && p[0]<0) phi=(TMath::ATan((Double_t)(p[1]/p[0]))*57.29578)+180;
- if(p[1]<0 && p[0]>0) phi=(TMath::ATan((Double_t)(p[1]/p[0]))*57.29578)+360;
- return phi;
-}
-
-//______________________________________________________________________________
+ Double_t phi=0;
+ if(p[1]>0 && p[0]>0) phi=(TMath::ATan((Double_t)(p[1]/p[0]))*57.29578);
+ if(p[1]>0 && p[0]<0) phi=(TMath::ATan((Double_t)(p[1]/p[0]))*57.29578)+180;
+ if(p[1]<0 && p[0]<0) phi=(TMath::ATan((Double_t)(p[1]/p[0]))*57.29578)+180;
+ if(p[1]<0 && p[0]>0) phi=(TMath::ATan((Double_t)(p[1]/p[0]))*57.29578)+360;
+ return phi;
+}
+//______________________________________________________________________
public:
AliITSVertex();
- ~AliITSVertex();
+ virtual ~AliITSVertex();
+ void Exec();
Double_t PhiFunc(Float_t p[]);
// This class determines 3D vertex position, resolution and signal
fNTracks = -1;
fLeftNeighbour = kFALSE;
fRightNeighbour = kFALSE;
- fCrossedClusterIndexes = new TArrayI(300);
+ fCrossedClusterIndexes = 0;
fConsumed=kFALSE;
}
/*
$Log$
+Revision 1.14 2001/10/19 21:32:35 nilsen
+Minor changes to remove compliation warning on gcc 2.92.2 compiler, and
+cleanded up a little bit of code.
+
Revision 1.13 2001/10/12 22:07:20 nilsen
A patch for C++ io manipulation functions so that they will work both
with GNU gcc 2.96 and GNU gcc 3.01 compilers. Needs to be tested with
// Destructor
if(fShapeSDD!=0) delete fShapeSDD;
- if(fAnodeLowEdgeL!=0) delete fAnodeLowEdgeL;
- if(fAnodeLowEdgeR!=0) delete fAnodeLowEdgeR;
+ if(fAnodeLowEdgeL!=0) delete [] fAnodeLowEdgeL;
+ if(fAnodeLowEdgeR!=0) delete [] fAnodeLowEdgeR;
fShapeSDD = 0;
fPeriod = 0.0;
fDvelocity = 0.0;
//======================================================================
/*
$Log$
+Revision 1.14 2001/10/19 21:32:35 nilsen
+Minor changes to remove compliation warning on gcc 2.92.2 compiler, and
+cleanded up a little bit of code.
+
Revision 1.13 2001/10/12 22:07:20 nilsen
A patch for C++ io manipulation functions so that they will work both
with GNU gcc 2.96 and GNU gcc 3.01 compilers. Needs to be tested with
//======================================================================
/*
$Log$
+Revision 1.14 2001/10/19 21:32:35 nilsen
+Minor changes to remove compliation warning on gcc 2.92.2 compiler, and
+cleanded up a little bit of code.
+
Revision 1.13 2001/10/12 22:07:20 nilsen
A patch for C++ io manipulation functions so that they will work both
with GNU gcc 2.96 and GNU gcc 3.01 compilers. Needs to be tested with
/*
$Log$
+Revision 1.13 2001/10/12 22:07:20 nilsen
+A patch for C++ io manipulation functions so that they will work both
+with GNU gcc 2.96 and GNU gcc 3.01 compilers. Needs to be tested with
+other platforms.
+
Revision 1.12 2001/08/24 21:06:37 nilsen
Added more documentation, fixed up some coding violations, and some
forward declorations.
AliITSgeomSSD::~AliITSgeomSSD(){
// Destructor.
- delete fLowEdgeP; fLowEdgeP = 0;
- delete fLowEdgeN; fLowEdgeN = 0;
- delete fShapeSSD; fShapeSSD = 0;
+ if(fLowEdgeP) delete [] fLowEdgeP; fLowEdgeP = 0;
+ if(fLowEdgeN) delete [] fLowEdgeN; fLowEdgeN = 0;
+ if(fShapeSSD) delete fShapeSSD; fShapeSSD = 0;
fNp = 0;
fNn = 0;
fAngleP = 0.0;
//======================================================================
/*
$Log$
+Revision 1.13 2001/10/12 22:07:20 nilsen
+A patch for C++ io manipulation functions so that they will work both
+with GNU gcc 2.96 and GNU gcc 3.01 compilers. Needs to be tested with
+other platforms.
+
Revision 1.12 2001/08/24 21:06:37 nilsen
Added more documentation, fixed up some coding violations, and some
forward declorations.
//======================================================================
/*
$Log$
+Revision 1.13 2001/10/12 22:07:20 nilsen
+A patch for C++ io manipulation functions so that they will work both
+with GNU gcc 2.96 and GNU gcc 3.01 compilers. Needs to be tested with
+other platforms.
+
Revision 1.12 2001/08/24 21:06:37 nilsen
Added more documentation, fixed up some coding violations, and some
forward declorations.
//======================================================================
/*
$Log$
+Revision 1.13 2001/10/12 22:07:20 nilsen
+A patch for C++ io manipulation functions so that they will work both
+with GNU gcc 2.96 and GNU gcc 3.01 compilers. Needs to be tested with
+other platforms.
+
Revision 1.12 2001/08/24 21:06:37 nilsen
Added more documentation, fixed up some coding violations, and some
forward declorations.
/*
$Log$
+Revision 1.4 2000/07/12 05:32:20 fca
+Correcting several syntax problem with static members
+
*/
#include <iostream.h>
AliITSpackageSSD::AliITSpackageSSD()
{
fNclustersN=0;
- fClusterNIndexes = new TArrayI(300);
+ fClusterNIndexes = 0;
fNclustersP=0;
- fClusterPIndexes = new TArrayI(300);
+ fClusterPIndexes = 0;
if (debug) cout<<"Default Ctor was used\n>>>>>>>>>>>>>><<<<<<<<<<<<<";
}
delete fStream;
delete fElectronics;
- fD.Set(0);
- fT1.Set(0);
- fT2.Set(0);
- fTol.Set(0);
- fNoise.Set(0);
- fBaseline.Set(0);
fITS = 0;
if (fHis) {