X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=HLT%2FJET%2FAliHLTJETTrackCuts.cxx;h=c5d4e72eedd46457f40b36a61a618d81a1e2d549;hb=5f2ca1e6de0f4bb9be1c5ea36e3436dda905f3a0;hp=0c4acbefe22a64dfdfa67bbb55512ec7da83e648;hpb=f273a6dda95a1246f859d1570c0bf7ba7122c95e;p=u%2Fmrichter%2FAliRoot.git diff --git a/HLT/JET/AliHLTJETTrackCuts.cxx b/HLT/JET/AliHLTJETTrackCuts.cxx index 0c4acbefe22..c5d4e72eedd 100644 --- a/HLT/JET/AliHLTJETTrackCuts.cxx +++ b/HLT/JET/AliHLTJETTrackCuts.cxx @@ -33,6 +33,7 @@ using namespace std; #endif #include "AliHLTJETTrackCuts.h" +#include /** ROOT macro for the implementation of ROOT specific class methods */ ClassImp(AliHLTJETTrackCuts) @@ -47,7 +48,12 @@ ClassImp(AliHLTJETTrackCuts) AliHLTJETTrackCuts::AliHLTJETTrackCuts(const Char_t* name, const Char_t* title ) : AliAnalysisCuts(name, title), - fPtMin(0.) { + fChargedOnly(kFALSE), + fPtMin(0.0), + fEtaMin(-0.9), + fEtaMax(0.9), + fPhiMin(0.0), + fPhiMax(6.3) { // see header file for class documentation // or // refer to README to build package @@ -73,7 +79,7 @@ Bool_t AliHLTJETTrackCuts::IsSelected( TObject *obj ) { // see header file for class documentation Bool_t bResult = kTRUE; - + if ( ! strcmp(obj->ClassName(),"TParticle") ) bResult = IsSelected( dynamic_cast (obj)); else if ( ! strcmp(obj->ClassName(),"AliESDtrack") ) @@ -92,31 +98,59 @@ Bool_t AliHLTJETTrackCuts::IsSelected( TObject *obj ) { Bool_t AliHLTJETTrackCuts::IsSelected( TParticle *particle ) { // see header file for class documentation + // ---------------------------------- + // Applied before in AliHLTMCEvent: + // - Is Physical Primary + // stack->IsPhysicalPrimary(iter) + // - final state + // particle->GetNDaughters() == 0 + // ---------------------------------- + Bool_t bResult = kTRUE; Int_t status = particle->GetStatusCode(); - Int_t pdg = TMath::Abs( particle->GetPdgCode() ); + Int_t pdgCode = TMath::Abs( particle->GetPdgCode() ); // -- Skip non-final state particles (status != 1), neutrinos (12,14,16) - if ( (status != 1) || (pdg == 12 || pdg == 14 || pdg == 16) ) + if ( (status != 1) || (pdgCode == 12 || pdgCode == 14 || pdgCode == 16) ) + bResult = kFALSE; + + // -- Charged particles only + if ( fChargedOnly && !particle->GetPDG()->Charge() ) + bResult = kFALSE; + + // -- cut on min Pt + if ( particle->Pt() < fPtMin ) + bResult = kFALSE; + + // -- cut on eta acceptance + if ( ( particle->Eta() < fEtaMin ) || ( particle->Eta() > fEtaMax ) ) + bResult = kFALSE; + + // -- cut on phi acceptance + if ( ( particle->Phi() < fPhiMin ) || ( particle->Phi() > fPhiMax ) ) bResult = kFALSE; - else - HLTInfo("Is selected !"); return bResult; } // ################################################################################# -Bool_t AliHLTJETTrackCuts::IsSelected( AliESDtrack */*esdTrack*/ ) { +Bool_t AliHLTJETTrackCuts::IsSelected( AliESDtrack *esdTrack ) { // see header file for class documentation Bool_t bResult = kTRUE; + // -- cut on min Pt + if ( esdTrack->Pt() < fPtMin ) + bResult = kFALSE; + + // -- cut on eta acceptance + if ( ( esdTrack->Eta() < fEtaMin ) || ( esdTrack->Eta() > fEtaMax ) ) + bResult = kFALSE; + + // -- cut on phi acceptance + if ( ( esdTrack->Phi() < fPhiMin ) || ( esdTrack->Phi() > fPhiMax ) ) + bResult = kFALSE; + return bResult; } - -/* - * --------------------------------------------------------------------------------- - * Setter - * --------------------------------------------------------------------------------- - */