AliAODJet::AliAODJet() :
AliVParticle(),
fNeutralFraction(0),
+ fPtLeadingConstituent(-1.),
fTrigger(0),
fMomentum(0),
fVectorAreaCharged(0),
AliAODJet::AliAODJet(Double_t px, Double_t py, Double_t pz, Double_t e):
AliVParticle(),
fNeutralFraction(0),
+ fPtLeadingConstituent(-1.),
fTrigger(0),
fMomentum(0),
fVectorAreaCharged(0),
fRefTracks(new TRefArray())
+
+
{
// constructor
fBackgEnergy[0] = 0.;
AliAODJet::AliAODJet(TLorentzVector & p):
AliVParticle(),
fNeutralFraction(0),
+ fPtLeadingConstituent(-1.),
fTrigger(0),
fMomentum(0),
fVectorAreaCharged(0),
fRefTracks(new TRefArray())
+
{
// constructor
fBackgEnergy[0] = 0.;
AliAODJet::AliAODJet(const AliAODJet& jet) :
AliVParticle(jet),
fNeutralFraction(jet.fNeutralFraction),
+ fPtLeadingConstituent(jet.fPtLeadingConstituent),
fTrigger(jet.fTrigger),
fMomentum(0),
fVectorAreaCharged(0),
fRefTracks(0)
+
{
// Copy constructor
fBackgEnergy[0] = jet.fBackgEnergy[0];
fPtSubtracted[0] = jet.fPtSubtracted[0];
fPtSubtracted[1] = jet.fPtSubtracted[1];
fNeutralFraction = jet.fNeutralFraction;
+ fPtLeadingConstituent = jet.fPtLeadingConstituent;
fTrigger = jet.fTrigger;
}
delete fRefTracks;
fRefTracks = new TRefArray(*jet.fRefTracks);
+
+
}
return *this;
printf("Effective Area: \n");
printf("Charged: %13.3f\n", EffectiveAreaCharged());
printf("Neutral: %13.3f\n", EffectiveAreaNeutral());
+ printf("Leading constituent: %f\n",GetPtLeading());
}
else {
printf("Jet %s, Eta: %13.3f, Phi: %13.3f, Pt: %13.3f\n",option,Eta(),Phi(),Pt());
virtual Double_t ErrorEffectiveAreaCharged() const { return fEffectiveAreaError[0];}
virtual Double_t ErrorEffectiveAreaNeutral() const { return fEffectiveAreaError[1];}
virtual Double_t DeltaR(const AliVParticle* part) const;
-
TLorentzVector* MomentumVector() const {return fMomentum;}
+
+ virtual void SetPtLeading(Double_t pt) {fPtLeadingConstituent=pt;}
+ virtual Double_t GetPtLeading() const { return fPtLeadingConstituent;}
+
virtual void Print(Option_t* option) const;
-// Dummy
+ // Dummy
virtual Short_t Charge() const { return 0;}
virtual const Double_t* PID() const { return NULL;}
virtual Int_t GetLabel() const { return -1;}
- // Dummy
+ // Dummy
virtual Int_t PdgCode() const {return 0;}
-//
+ //
// first only one bit for EMCAL and TRD, leave space for more
// trigger types and/or other detectors
Double32_t fEffectiveAreaError[2]; //[0,1,10] relative error of jet areas, 10 bit precision
Double32_t fNeutralFraction; //[0,1,12] Neutral fraction between 0 and 1 12 bit precision;
Double32_t fPtSubtracted[2]; //[0,0,12] pT after subtraction can be negative four momentum close to 0 in this case, 12 bit precision
- UInt_t fTrigger; // Bit mask to flag jets triggered by a certain detector
+ Double32_t fPtLeadingConstituent; //[0,0,12] pT of leading constituent
+ UInt_t fTrigger; // Bit mask to flag jets triggered by a certain detector
TLorentzVector* fMomentum; // Jet 4-momentum vector
TLorentzVector* fVectorAreaCharged; // jet area four momentum
TRefArray* fRefTracks; // array of references to the tracks belonging to the jet
- ClassDef(AliAODJet,13);
+
+ ClassDef(AliAODJet,14);
};