// being kPhoton, kElectron, kPi0 ... as defined in the header file
// - GetPdg(const TString calo, const Double_t * pid, const Float_t energy)
// Reads the PID weights array of the ESDs and depending on its magnitude identifies the particle
-// - GetPdg(const TString calo,const TLorentzVector mom, const AliAODCaloCluster * cluster)
+// - GetPdg(const TString calo,const TLorentzVector mom, const AliVCluster * cluster)
// Recalcultes PID, the bayesian or any new one to be implemented in the future
// Right now only the possibility to recalculate EMCAL with bayesian and simple PID.
// In order to recalculate Bayesian, it is necessary to load the EMCALUtils library
class TTask;
//--- AliRoot system ---
-class AliAODCaloCluster;
+class AliVCluster;
class AliAODPWG4Particle;
class AliEMCALPIDUtils;
+class AliCalorimeterUtils;
class AliCaloPID : public TObject {
Int_t GetPdg(const TString calo, const Double_t * pid, const Float_t energy) const ;
- Int_t GetPdg(const TString calo,const TLorentzVector mom, const AliAODCaloCluster * cluster) const ;
+ Int_t GetPdg(const TString calo,const TLorentzVector mom, const AliVCluster * cluster) const ;
TString GetPIDParametersList();
- void SetPIDBits(const TString calo, const AliAODCaloCluster * cluster, AliAODPWG4Particle *aodph);
+ void SetPIDBits(const TString calo, const AliVCluster * cluster, AliAODPWG4Particle *aodph, const AliCalorimeterUtils* cu);
void Print(const Option_t * opt)const;
// void SetPHOSPi0WeightFormula(TFormula * const pi0) { fPHOSPi0WeightFormula = pi0; }
//PID bits setters and getters
+
+ Bool_t IsTrackMatched(const AliVCluster * cluster, const AliCalorimeterUtils* cu) const ;
+
void SetDispersionCut(Float_t dcut ) {fDispCut = dcut; }
Float_t GetDispersionCut() const {return fDispCut ;}
void SetLowParticleFlux() {fParticleFlux = kLow;}
void SetHighParticleFlux() {fParticleFlux = kHigh;}
- private:
+private:
Float_t fEMCALPhotonWeight; //Bayesian PID weight for photons in EMCAL
Float_t fEMCALPi0Weight; //Bayesian PID weight for pi0 in EMCAL
Int_t fDebug; //Debug level
- Bool_t fRecalculateBayesian; // Recalculate PID bayesian or use simple PID?
- Int_t fParticleFlux; // Particle flux for setting PID parameters
- AliEMCALPIDUtils * fEMCALPIDUtils; //Pointer to EMCALPID to redo the PID Bayesian calculation
-
+ Bool_t fRecalculateBayesian; // Recalculate PID bayesian or use simple PID?
+ Int_t fParticleFlux; // Particle flux for setting PID parameters
+ AliEMCALPIDUtils * fEMCALPIDUtils; // Pointer to EMCALPID to redo the PID Bayesian calculation
ClassDef(AliCaloPID,4)
} ;