X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=STEER%2FAliESDCaloCluster.cxx;h=4c411ae4947a966844e701aaa118c195f622d97c;hb=58e1d4edca9e8b4255ce184ec1452e9d82668423;hp=78f6efa5ea3dbc6ccf6f9f55cf556bc97921cec0;hpb=e649177a7ba040c8e27382914e7378178e56de12;p=u%2Fmrichter%2FAliRoot.git diff --git a/STEER/AliESDCaloCluster.cxx b/STEER/AliESDCaloCluster.cxx index 78f6efa5ea3..4c411ae4947 100644 --- a/STEER/AliESDCaloCluster.cxx +++ b/STEER/AliESDCaloCluster.cxx @@ -45,12 +45,11 @@ AliESDCaloCluster::AliESDCaloCluster() : fChi2(0), fM20(0), fM02(0), - fM11(0), fEmcCpvDistance(1024), fDistToBadChannel(1024), fID(0), fNExMax(0), - fClusterType(kUndef) + fClusterType(kUndef), fTOF(0.) { // // The default ESD constructor @@ -75,12 +74,12 @@ AliESDCaloCluster::AliESDCaloCluster(const AliESDCaloCluster& clus) : fChi2(clus.fChi2), fM20(clus.fM20), fM02(clus.fM02), - fM11(clus.fM11), fEmcCpvDistance(clus.fEmcCpvDistance), fDistToBadChannel(clus.fDistToBadChannel), fID(clus.fID), fNExMax(clus.fNExMax), - fClusterType(clus.fClusterType) + fClusterType(clus.fClusterType), + fTOF(clus.fTOF) { // // The copy constructor @@ -116,75 +115,136 @@ AliESDCaloCluster &AliESDCaloCluster::operator=(const AliESDCaloCluster& source) if(&source == this) return *this; TObject::operator=(source); - fGlobalPos[0] = source.fGlobalPos[0]; fGlobalPos[1] = source.fGlobalPos[1]; fGlobalPos[2] = source.fGlobalPos[2]; - fEnergy = source.fEnergy; fDispersion = source.fDispersion; fChi2 = source.fChi2; fM20 = source.fM20; fM02 = source.fM02; - fM11 = source.fM11; fEmcCpvDistance = source.fEmcCpvDistance; fDistToBadChannel = source.fDistToBadChannel ; for(Int_t i=0; i 0) { - if(source.fCellsAbsId){ - fCellsAbsId = new UShort_t[source.fNCells]; - for (Int_t i=0; i(&obj); + if(!robj)return; // not an AliESDCluster + *robj = *this; + +} //_______________________________________________________________________ AliESDCaloCluster::~AliESDCaloCluster(){ // // This is destructor according Coding Conventions // - delete fTracksMatched; - delete fLabels; + if(fTracksMatched)delete fTracksMatched;fTracksMatched = 0; + if(fLabels) delete fLabels; fLabels = 0; delete fDigitAmplitude; //not in use delete fDigitTime; //not in use delete fDigitIndex; //not in use - if(fCellsAmpFraction) delete[] fCellsAmpFraction; fCellsAmpFraction=0; - if(fCellsAbsId) delete[] fCellsAbsId; fCellsAbsId = 0; + if(fCellsAmpFraction){ delete[] fCellsAmpFraction; fCellsAmpFraction=0;} + if(fCellsAbsId){ delete[] fCellsAbsId; fCellsAbsId = 0;} } //_______________________________________________________________________ @@ -239,3 +299,23 @@ void AliESDCaloCluster::GetMomentum(TLorentzVector& p, Double_t *vertex ) { p.SetPxPyPzE( fEnergy*fGlobalPos[0]/r, fEnergy*fGlobalPos[1]/r, fEnergy*fGlobalPos[2]/r, fEnergy) ; } + +//_______________________________________________________________________ +void AliESDCaloCluster::SetCellsAbsId(UShort_t *array) +{ + // Set the array of cell absId numbers + if (fNCells) { + fCellsAbsId = new UShort_t[fNCells]; + for (Int_t i = 0; i < fNCells; i++) fCellsAbsId[i] = array[i]; + } +} + +//_______________________________________________________________________ +void AliESDCaloCluster::SetCellsAmplitudeFraction(Double32_t *array) +{ + // Set the array of cell amplitude fraction + if (fNCells) { + fCellsAmpFraction = new Double32_t[fNCells]; + for (Int_t i = 0; i < fNCells; i++) fCellsAmpFraction[i] = array[i]; + } +}