/* History of cvs commits:
*
* $Log$
+ * Revision 1.79 2006/04/25 12:41:15 hristov
+ * Moving non-persistent data to AliESDfriend (Yu.Belikov)
+ *
+ * Revision 1.78 2005/11/18 13:04:51 hristov
+ * Bug fix
+ *
+ * Revision 1.77 2005/11/17 23:34:36 hristov
+ * Corrected logics
+ *
+ * Revision 1.76 2005/11/17 22:29:12 hristov
+ * Faster version, no attempt to match tracks outside the PHOS acceptance
+ *
* Revision 1.75 2005/11/17 12:35:27 hristov
* Use references instead of objects. Avoid to create objects when they are not really needed
*
//____________________________________________________________________________
- AliPHOSTrackSegmentMakerv1::AliPHOSTrackSegmentMakerv1() : AliPHOSTrackSegmentMaker()
+AliPHOSTrackSegmentMakerv1::AliPHOSTrackSegmentMakerv1() :
+ AliPHOSTrackSegmentMaker(),
+ fDefaultInit(kTRUE),
+ fWrite(kFALSE),
+ fNTrackSegments(0),
+ fRcpv(0.f),
+ fRtpc(0.f),
+ fLinkUpArray(0),
+ fEmcFirst(0),
+ fEmcLast(0),
+ fCpvFirst(0),
+ fCpvLast(0),
+ fModule(0),
+ fTrackSegmentsInRun(0)
+
{
// default ctor (to be used mainly by Streamer)
-
InitParameters() ;
- fDefaultInit = kTRUE ;
}
//____________________________________________________________________________
- AliPHOSTrackSegmentMakerv1::AliPHOSTrackSegmentMakerv1(const TString alirunFileName, const TString eventFolderName)
- :AliPHOSTrackSegmentMaker(alirunFileName, eventFolderName)
+AliPHOSTrackSegmentMakerv1::AliPHOSTrackSegmentMakerv1(const TString & alirunFileName, const TString & eventFolderName) :
+ AliPHOSTrackSegmentMaker(alirunFileName, eventFolderName),
+ fDefaultInit(kFALSE),
+ fWrite(kFALSE),
+ fNTrackSegments(0),
+ fRcpv(0.f),
+ fRtpc(0.f),
+ fLinkUpArray(0),
+ fEmcFirst(0),
+ fEmcLast(0),
+ fCpvFirst(0),
+ fCpvLast(0),
+ fModule(0),
+ fTrackSegmentsInRun(0)
{
// ctor
-
InitParameters() ;
Init() ;
- fDefaultInit = kFALSE ;
fESD = 0;
}
+
+AliPHOSTrackSegmentMakerv1::AliPHOSTrackSegmentMakerv1(const AliPHOSTrackSegmentMakerv1 & tsm) :
+ AliPHOSTrackSegmentMaker(tsm),
+ fDefaultInit(kFALSE),
+ fWrite(kFALSE),
+ fNTrackSegments(0),
+ fRcpv(0.f),
+ fRtpc(0.f),
+ fLinkUpArray(0),
+ fEmcFirst(0),
+ fEmcLast(0),
+ fCpvFirst(0),
+ fCpvLast(0),
+ fModule(0),
+ fTrackSegmentsInRun(0)
+{
+ // cpy ctor: no implementation yet
+ // requested by the Coding Convention
+ Fatal("cpy ctor", "not implemented") ;
+}
+
+
//____________________________________________________________________________
AliPHOSTrackSegmentMakerv1::~AliPHOSTrackSegmentMakerv1()
{
AliESDtrack *track;
for (Int_t iTrack=0; iTrack<nTracks; iTrack++) {
track = fESD->GetTrack(iTrack);
- if (track->IsPHOS())
- continue ; //Skip the PHOS tracks
if (!track->GetXYZAt(rPHOS, fESD->GetMagneticField(), xyz))
continue; //track coord on the cylinder of PHOS radius
if ((TMath::Abs(xyz[0])+TMath::Abs(xyz[1])+TMath::Abs(xyz[2]))<=0)
Double_t inPhi = inPHOS.Phi();
Double_t inTheta = inPHOS.Theta();
- Bool_t skip = kFALSE;
- for (Int_t imod=0; nModules; imod++) {
+ Bool_t skip = kTRUE;
+ for (Int_t imod=0; imod<nModules; imod++) {
//PH Loop on modules to check if the track enters in the acceptance
- if (thmin[imod] > inTheta || thmax[imod] < inTheta ||
- phmin[imod] > inPhi || phmax[imod] < inPhi) {
- skip = kTRUE;
+ if (thmin[imod] < inTheta && thmax[imod] > inTheta &&
+ phmin[imod] < inPhi && phmax[imod] > inPhi) {
+ skip = kFALSE;
break;
}
}