}
//____________________________________________________________________________
-void AliPMDRecPoint::Copy(AliPMDRecPoint& recp) const
+void AliPMDRecPoint::Copy(TObject & recp) const
{
//
// Copy *this onto pts
//
// Copy all first
+
if(this != &recp) {
((TObject*) this)->Copy((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;
+ ((AliPMDRecPoint&)recp).fAmp = fAmp;
+ ((AliPMDRecPoint&)recp).fGeom = fGeom;
+ ((AliPMDRecPoint&)recp).fIndexInList = fIndexInList;
+ ((AliPMDRecPoint&)recp).fLocPos = fLocPos;
+ ((AliPMDRecPoint&)recp).fLocPosM = new TMatrix(*fLocPosM);
+ ((AliPMDRecPoint&)recp).fMaxDigit = fMaxDigit;
+ ((AliPMDRecPoint&)recp).fMulDigit = fMulDigit;
+ ((AliPMDRecPoint&)recp).fMaxTrack = fMaxTrack;
+ ((AliPMDRecPoint&)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));
+ ((AliPMDRecPoint&)recp).fDigitsList = new Int_t[fMulDigit];
+ memcpy(((AliPMDRecPoint&)recp).fDigitsList,fDigitsList,fMulDigit*sizeof(Int_t));
+ ((AliPMDRecPoint&)recp).fTracksList = new Int_t[fMulTrack];
+ memcpy(((AliPMDRecPoint&)recp).fTracksList,fTracksList,fMulTrack*sizeof(Int_t));
}
}
//____________________________________________________________________________
-void AliPMDRecPoint::GetCovarianceMatrix(TMatrix & mat)
+void AliPMDRecPoint::GetCovarianceMatrix(TMatrix & mat) const
{
// returns the covariant matrix for the local position
public:
virtual void AddDigit(AliDigitNew & digit) ; // add a digit to the digit's indexes list
// virtual void AddTrack(AliTrack & track) ; // add a track to the tracks list
- void Copy(AliPMDRecPoint &recp) const;
- virtual void GetCovarianceMatrix(TMatrix & mat) ;
+ void Copy(TObject &recp) const;
+ virtual void GetCovarianceMatrix(TMatrix & mat) const;
virtual AliGeometry * GetGeom() const { return fGeom; }
virtual void GetGlobalPosition(TVector3 & gpos, TMatrix & gmat) const ; // return global position in ALICE
virtual int * GetDigitsList(void) const { return fDigitsList ; }
virtual Int_t GetMaximumDigitMultiplicity() const { return fMaxDigit; }
virtual Int_t GetMaximumTrackMultiplicity() const { return fMaxTrack; }
virtual Int_t GetTracksMultiplicity(void) const { return fMulTrack ; }
- virtual void Print(Option_t * /*opt = "void"*/) {;}
+ virtual void Print(Option_t * /*opt = "void"*/) const {;}
AliPMDRecPoint & operator= (const AliPMDRecPoint &recp);
void SetIndexInList(Int_t val) { fIndexInList = val ; }
AliRawReader *rawReader) const;
virtual void Reconstruct(AliRawReader* rawReader,
TTree* clustersTree) const;
+ virtual void Reconstruct(TTree* digitsTree, TTree* clustersTree) const {
+ AliReconstructor::Reconstruct(digitsTree,clustersTree);
+ }
virtual Bool_t HasLocalReconstruction() const { return kTRUE; }
//virtual void FillESD(AliRunLoader* runLoader, AliESD* esd) const;
virtual void FillESD(AliRawReader* /*rawReader*/, TTree* clustersTree,
AliESD* esd) const;
+ virtual void FillESD(TTree* digitsTree, TTree* clustersTree,
+ AliESD* esd) const {
+ AliReconstructor::FillESD(digitsTree,clustersTree,esd);
+ }
+ virtual void FillESD(AliRunLoader* runLoader, AliESD* esd) const {
+ AliReconstructor::FillESD(runLoader,esd);
+ }
+ virtual void FillESD(AliRunLoader* runLoader,
+ AliRawReader* rawReader, AliESD* esd) const {
+ AliReconstructor::FillESD(runLoader,rawReader,esd);
+ }
private:
fEnergy+=cell.GetEnergy();
return *this;
}
- virtual void Print(Option_t *) {
+ virtual void Print(Option_t *) const {
printf("PMD Cell %d %d %d %d\n Primary %d - Energy %f\n",
fVolume[0],fVolume[1],fVolume[2],fVolume[3],fTrack,fEnergy);
}