@@ -95,6 +95,7 @@ struct AnalysisEnergyCorrelator {
9595 Configurable<std::string> fConfigAddEventHistogram {" cfgAddEventHistogram" , " " , " Event histograms" };
9696 Configurable<std::string> fConfigAddEventMCHistogram {" cfgAddEventMCHistogram" , " generator" , " MC Event histograms" };
9797 Configurable<int > fConfigMixingDepth {" cfgMixingDepth" , 5 , " Event mixing pool depth" };
98+ Configurable<float > fConfigEventfilterVtz {" cfgEventfilterVtz" , 10.0 , " Event filter Vtz" };
9899 Configurable<bool > fConfigEventQA {" cfgEventQA" , false , " If true, fill Event QA histograms" };
99100 } fConfigEventOptions ;
100101
@@ -160,8 +161,6 @@ struct AnalysisEnergyCorrelator {
160161
161162 Service<o2::ccdb::BasicCCDBManager> fCCDB ;
162163 int fCurrentRun = -1 ;
163- // uint32_t fTrackCutBitMap;
164- // uint32_t fHadronCutBitMap;
165164
166165 // Preslice for association table
167166 Preslice<aod::TrackAssoc> preslice = aod::track_association::collisionId;
@@ -574,8 +573,6 @@ struct AnalysisEnergyCorrelator {
574573
575574 // Get associated tracks for this event
576575 auto groupedAssocs = assocs.sliceBy (preslice, event.globalIndex ());
577- if (groupedAssocs.size () < 2 )
578- continue ; // Need at least 2 tracks for pairing
579576
580577 // Triple loop: track1 (electron) x track2 (electron) x hadron
581578 for (auto & a1 : groupedAssocs) {
@@ -589,6 +586,10 @@ struct AnalysisEnergyCorrelator {
589586 VarManager::FillTrackMC (mcParticles, t1.mcParticle ());
590587 }
591588
589+ if (fConfigTrackOptions .fConfigTrackQA ) {
590+ fHistMan ->FillHistClass (" AssocsBarrel_BeforeCuts" , VarManager::fgValues);
591+ }
592+
592593 // Apply electron cuts and fill histograms
593594 int iCut1 = 0 ;
594595 for (auto cut1 = fTrackCuts .begin (); cut1 != fTrackCuts .end (); cut1++, iCut1++) {
@@ -665,7 +666,8 @@ struct AnalysisEnergyCorrelator {
665666 } // end event loop
666667 }
667668
668- void processBarrelMixedEvent (MyEvents const & events, aod::TrackAssoc const & assocs, MyBarrelTracksWithCov const & /* tracks*/ , aod::McCollisions const & /* mcCollisions*/ , aod::McParticles const & mcParticles, BCsWithTimestamps const & bcs)
669+ Filter eventFilter = nabs(aod::collision::posZ) < fConfigEventOptions .fConfigEventfilterVtz && aod::evsel::sel8 == true ;
670+ void processBarrelMixedEvent (soa::Filtered<MyEvents>& events, aod::TrackAssoc const & assocs, MyBarrelTracksWithCov const & /* tracks*/ , aod::McCollisions const & /* mcCollisions*/ , aod::McParticles const & mcParticles, BCsWithTimestamps const & bcs)
669671 {
670672 if (events.size () == 0 ) {
671673 return ;
@@ -842,7 +844,7 @@ struct AnalysisEnergyCorrelator {
842844 }
843845 }
844846
845- void processMCGenEnergyCorrelators (MyEvents const & events,
847+ void processMCGenEnergyCorrelators (soa::Filtered< MyEvents> & events,
846848 McCollisions const & /* mcEvents*/ , McParticles const & mcTracks)
847849 {
848850 if (events.size () == 0 ) {
@@ -868,7 +870,7 @@ struct AnalysisEnergyCorrelator {
868870 }
869871 }
870872
871- void processMCGenEnergyCorrelatorsME (MyEvents const & events,
873+ void processMCGenEnergyCorrelatorsME (soa::Filtered< MyEvents> & events,
872874 McCollisions const & /* mcEvents*/ , McParticles const & mcTracks)
873875 {
874876 if (events.size () == 0 ) {
@@ -898,7 +900,7 @@ struct AnalysisEnergyCorrelator {
898900 }
899901 }
900902
901- void processMCGenEnergyCorrelatorsPion (MyEvents const & events,
903+ void processMCGenEnergyCorrelatorsPion (soa::Filtered< MyEvents> & events,
902904 McCollisions const & /* mcEvents*/ , McParticles const & mcTracks)
903905 {
904906 if (events.size () == 0 ) {
@@ -924,7 +926,7 @@ struct AnalysisEnergyCorrelator {
924926 }
925927 }
926928
927- void processMCGenEnergyCorrelatorsPionME (MyEvents const & events,
929+ void processMCGenEnergyCorrelatorsPionME (soa::Filtered< MyEvents> & events,
928930 McCollisions const & /* mcEvents*/ , McParticles const & mcTracks)
929931 {
930932 if (events.size () == 0 ) {
0 commit comments