else *fTracksMatched = array;
}
void AddLabels(TArrayI & array) {
- if(!fLabels)fLabels = new TArrayI(array) ;
+ if(!fLabels)fLabels = new TArrayI(array) ;
else *fLabels = array;
}
+ void SetLabel(Int_t *array, UInt_t size)
+ {
+ if(fLabels) delete fLabels ;
+ fLabels = new TArrayI(size,array);
+ }
+
TArrayI * GetTracksMatched() const {return fTracksMatched;}
TArrayI * GetLabelsArray() const {return fLabels;}
Int_t * GetLabels() const {if (fLabels) return fLabels->GetArray(); else return 0;}
UInt_t GetNLabels() const { if (fLabels) return fLabels->GetSize();
else return (0);}
- void GetMomentum(TLorentzVector& p, Double_t * vertexPosition );
+ void GetMomentum(TLorentzVector& p, Double_t * vertexPosition ) const;
void SetNCells(Int_t n) { fNCells = n;}
Int_t GetNCells() const { return fNCells;}
Double_t GetCellAmplitudeFraction(Int_t i) const {
if (fCellsAmpFraction && i >=0 && i < fNCells ) return fCellsAmpFraction[i];
else return -1;}
+
+ Double_t GetMCEnergyFraction() const { return fMCEnergyFraction ; }
+ void SetMCEnergyFraction(Double_t e) { fMCEnergyFraction = e ; }
+
+ virtual Double_t GetCoreEnergy() const {return fCoreEnergy ; }
+ virtual void SetCoreEnergy(Double_t e) { fCoreEnergy=e; }
protected:
Char_t fClusterType; // Flag for different cluster type/versions
Double_t fTOF; //[0,0,12] time-of-flight
+ Double_t fMCEnergyFraction; //!MC energy (embedding)
+ Double32_t fCoreEnergy; // energy of the core of cluster
- ClassDef(AliESDCaloCluster,11) //ESDCaloCluster
+ ClassDef(AliESDCaloCluster,12) //ESDCaloCluster
};