* provided "as is" without express or implied warranty. *
**************************************************************************/
-/* $Header$ */
+/* $Id$ */
//-*-C++-*-
//_________________________________________________________________________
if ( fMulDigit >= fMaxDigit ) { // increase the size of the list
- int * tempo = new ( int[fMaxDigit*=2] ) ;
+ int * tempo = new int[fMaxDigit*2];
Int_t index ;
for ( index = 0 ; index < fMulDigit ; index++ )
tempo[index] = fDigitsList[index] ;
- delete fDigitsList ;
+ delete [] fDigitsList ;
fDigitsList = tempo ;
}
// }
//_______________________________________________________________________
-void AliRecPoint::Copy(AliRecPoint& recp) const
+void AliRecPoint::Copy(TObject& recp) const
{
//
// Copy *this onto pts
//
// Copy all first
- if(this != &recp) {
- ((TObject*) this)->Copy(dynamic_cast<TObject&>(recp));
- recp.fAmp = fAmp;
- recp.fGeom = fGeom;
- recp.fIndexInList = fIndexInList;
- recp.fLocPos = fLocPos;
- recp.fLocPosM = new TMatrix(*fLocPosM);
- recp.fMaxDigit = fMaxDigit;
- recp.fMulDigit = fMulDigit;
- recp.fMaxTrack = fMaxTrack;
- recp.fMulTrack = fMulTrack;
+ if((TObject*)this != &recp) {
+ ((TObject*) this)->Copy(recp);
+ (dynamic_cast<AliRecPoint&>(recp)).fAmp = fAmp;
+ (dynamic_cast<AliRecPoint&>(recp)).fGeom = fGeom;
+ (dynamic_cast<AliRecPoint&>(recp)).fIndexInList = fIndexInList;
+ (dynamic_cast<AliRecPoint&>(recp)).fLocPos = fLocPos;
+ (dynamic_cast<AliRecPoint&>(recp)).fLocPosM = new TMatrix(*fLocPosM);
+ (dynamic_cast<AliRecPoint&>(recp)).fMaxDigit = fMaxDigit;
+ (dynamic_cast<AliRecPoint&>(recp)).fMulDigit = fMulDigit;
+ (dynamic_cast<AliRecPoint&>(recp)).fMaxTrack = fMaxTrack;
+ (dynamic_cast<AliRecPoint&>(recp)).fMulTrack = fMulTrack;
// Duplicate pointed objects
- recp.fDigitsList = new Int_t[fMulDigit];
- memcpy(recp.fDigitsList,fDigitsList,fMulDigit*sizeof(Int_t));
- recp.fTracksList = new Int_t[fMulTrack];
- memcpy(recp.fTracksList,fTracksList,fMulTrack*sizeof(Int_t));
+ (dynamic_cast<AliRecPoint&>(recp)).fDigitsList = new Int_t[fMulDigit];
+ memcpy((dynamic_cast<AliRecPoint&>(recp)).fDigitsList,fDigitsList,fMulDigit*sizeof(Int_t));
+ (dynamic_cast<AliRecPoint&>(recp)).fTracksList = new Int_t[fMulTrack];
+ memcpy((dynamic_cast<AliRecPoint&>(recp)).fTracksList,fTracksList,fMulTrack*sizeof(Int_t));
}
}