@@ -721,6 +721,7 @@ struct DndetaMFTPbPb {
721721
722722 // / Joined tables
723723 using FullBCs = soa::Join<aod::BCsWithTimestamps, aod::BcSels>;
724+ using CollBCs = soa::Join<aod::BCsWithTimestamps, aod::Run3MatchedToBCSparse>;
724725 using Colls = soa::Join<aod::Collisions, aod::EvSels>;
725726 using Coll = Colls::iterator;
726727 using CollsCentFT0C = soa::Join<aod::Collisions, aod::CentFT0Cs, aod::EvSels>;
@@ -1106,13 +1107,14 @@ struct DndetaMFTPbPb {
11061107 // / @brief process function for counting tracks
11071108 template <typename C>
11081109 void processData (typename C::iterator const & collision,
1109- FiltMftTracks const & tracks)
1110+ FiltMftTracks const & tracks, CollBCs const & /* bcs */ )
11101111 {
11111112 auto occ = getOccupancy (collision, eventCuts.occupancyEstimator );
11121113 float c = getRecoCent (collision);
1114+ auto bc = collision.template foundBC_as <CollBCs>();
11131115 float ir = -1 ;
11141116 if (cfgDoIR) {
1115- ir = rateFetcher.fetch (ccdb.service , coll .timestamp (), coll .runNumber (), cfgIRSource, cfgIRCrashOnNull) * 1 .e -3 ;
1117+ ir = rateFetcher.fetch (ccdb.service , bc .timestamp (), bc .runNumber (), cfgIRSource, cfgIRCrashOnNull) * 1 .e -3 ;
11161118 }
11171119 if constexpr (has_reco_cent<C>) {
11181120 registry.fill (HIST (" Events/Centrality/Selection" ), 1 ., c, occ);
@@ -1153,13 +1155,14 @@ struct DndetaMFTPbPb {
11531155 template <typename C>
11541156 void processDatawBestTracks (
11551157 typename C::iterator const & collision, FiltMftTracks const & tracks,
1156- soa::SmallGroups<aod::BestCollisionsFwd> const & besttracks)
1158+ soa::SmallGroups<aod::BestCollisionsFwd> const & besttracks, CollBCs const & /* bcs */ )
11571159 {
11581160 auto occ = getOccupancy (collision, eventCuts.occupancyEstimator );
11591161 float c = getRecoCent (collision);
1162+ auto bc = collision.template foundBC_as <CollBCs>();
11601163 float ir = -1 ;
11611164 if (cfgDoIR) {
1162- ir = rateFetcher.fetch (ccdb.service , coll .timestamp (), coll .runNumber (), cfgIRSource, cfgIRCrashOnNull) * 1 .e -3 ;
1165+ ir = rateFetcher.fetch (ccdb.service , bc .timestamp (), bc .runNumber (), cfgIRSource, cfgIRCrashOnNull) * 1 .e -3 ;
11631166 }
11641167 if constexpr (has_reco_cent<C>) {
11651168 registry.fill (HIST (" Events/Centrality/Selection" ), 1 ., c, occ);
@@ -1195,65 +1198,65 @@ struct DndetaMFTPbPb {
11951198 }
11961199
11971200 void processDataInclusive (Colls::iterator const & collision,
1198- FiltMftTracks const & tracks)
1201+ FiltMftTracks const & tracks, CollBCs const & bcs )
11991202 {
1200- processData<Colls>(collision, tracks);
1203+ processData<Colls>(collision, tracks, bcs );
12011204 }
12021205
12031206 PROCESS_SWITCH (DndetaMFTPbPb, processDataInclusive,
12041207 " Count tracks (inclusive)" , false );
12051208
12061209 void processDataCentFT0C (CollsCentFT0C::iterator const & collision,
1207- FiltMftTracks const & tracks)
1210+ FiltMftTracks const & tracks, CollBCs const & bcs )
12081211 {
1209- processData<CollsCentFT0C>(collision, tracks);
1212+ processData<CollsCentFT0C>(collision, tracks, bcs );
12101213 }
12111214
12121215 PROCESS_SWITCH (DndetaMFTPbPb, processDataCentFT0C,
12131216 " Count tracks in FT0C centrality bins" , false );
12141217
12151218 void
12161219 processDataCentFT0CVariant1 (CollsCentFT0CVariant1::iterator const & collision,
1217- FiltMftTracks const & tracks)
1220+ FiltMftTracks const & tracks, CollBCs const & bcs )
12181221 {
1219- processData<CollsCentFT0CVariant1>(collision, tracks);
1222+ processData<CollsCentFT0CVariant1>(collision, tracks, bcs );
12201223 }
12211224
12221225 PROCESS_SWITCH (DndetaMFTPbPb, processDataCentFT0CVariant1,
12231226 " Count tracks in FT0CVariant1 centrality bins" , false );
12241227
12251228 void processDataCentFT0M (CollsCentFT0M::iterator const & collision,
1226- FiltMftTracks const & tracks)
1229+ FiltMftTracks const & tracks, CollBCs const & bcs )
12271230 {
1228- processData<CollsCentFT0M>(collision, tracks);
1231+ processData<CollsCentFT0M>(collision, tracks, bcs );
12291232 }
12301233
12311234 PROCESS_SWITCH (DndetaMFTPbPb, processDataCentFT0M,
12321235 " Count tracks in FT0M centrality bins" , false );
12331236
12341237 void processDataCentNGlobal (CollsCentNGlobal::iterator const & collision,
1235- FiltMftTracks const & tracks)
1238+ FiltMftTracks const & tracks, CollBCs const & bcs )
12361239 {
1237- processData<CollsCentNGlobal>(collision, tracks);
1240+ processData<CollsCentNGlobal>(collision, tracks, bcs );
12381241 }
12391242
12401243 PROCESS_SWITCH (DndetaMFTPbPb, processDataCentNGlobal,
12411244 " Count tracks in NGlobal centrality bins" , false );
12421245
12431246 void processDataCentMFT (CollsCentMFT::iterator const & collision,
1244- FiltMftTracks const & tracks)
1247+ FiltMftTracks const & tracks, CollBCs const & bcs )
12451248 {
1246- processData<CollsCentMFT>(collision, tracks);
1249+ processData<CollsCentMFT>(collision, tracks, bcs );
12471250 }
12481251
12491252 PROCESS_SWITCH (DndetaMFTPbPb, processDataCentMFT,
12501253 " Count tracks in MFT centrality bins" , false );
12511254
12521255 void processDatawBestTracksInclusive (
12531256 Colls::iterator const & collision, FiltMftTracks const & tracks,
1254- soa::SmallGroups<aod::BestCollisionsFwd> const & besttracks)
1257+ soa::SmallGroups<aod::BestCollisionsFwd> const & besttracks, CollBCs const & bcs )
12551258 {
1256- processDatawBestTracks<Colls>(collision, tracks, besttracks);
1259+ processDatawBestTracks<Colls>(collision, tracks, besttracks, bcs );
12571260 }
12581261
12591262 PROCESS_SWITCH (DndetaMFTPbPb, processDatawBestTracksInclusive,
@@ -1262,9 +1265,9 @@ struct DndetaMFTPbPb {
12621265
12631266 void processDatawBestTracksCentFT0C (
12641267 CollsCentFT0C::iterator const & collision, FiltMftTracks const & tracks,
1265- soa::SmallGroups<aod::BestCollisionsFwd> const & besttracks)
1268+ soa::SmallGroups<aod::BestCollisionsFwd> const & besttracks, CollBCs const & bcs )
12661269 {
1267- processDatawBestTracks<CollsCentFT0C>(collision, tracks, besttracks);
1270+ processDatawBestTracks<CollsCentFT0C>(collision, tracks, besttracks, bcs );
12681271 }
12691272
12701273 PROCESS_SWITCH (DndetaMFTPbPb, processDatawBestTracksCentFT0C,
@@ -1274,9 +1277,9 @@ struct DndetaMFTPbPb {
12741277 void processDatawBestTracksCentFT0CVariant1 (
12751278 CollsCentFT0CVariant1::iterator const & collision,
12761279 FiltMftTracks const & tracks,
1277- soa::SmallGroups<aod::BestCollisionsFwd> const & besttracks)
1280+ soa::SmallGroups<aod::BestCollisionsFwd> const & besttracks, CollBCs const & bcs )
12781281 {
1279- processDatawBestTracks<CollsCentFT0CVariant1>(collision, tracks, besttracks);
1282+ processDatawBestTracks<CollsCentFT0CVariant1>(collision, tracks, besttracks, bcs );
12801283 }
12811284
12821285 PROCESS_SWITCH (DndetaMFTPbPb, processDatawBestTracksCentFT0CVariant1,
@@ -1286,9 +1289,9 @@ struct DndetaMFTPbPb {
12861289
12871290 void processDatawBestTracksCentFT0M (
12881291 CollsCentFT0M::iterator const & collision, FiltMftTracks const & tracks,
1289- soa::SmallGroups<aod::BestCollisionsFwd> const & besttracks)
1292+ soa::SmallGroups<aod::BestCollisionsFwd> const & besttracks, CollBCs const & bcs )
12901293 {
1291- processDatawBestTracks<CollsCentFT0M>(collision, tracks, besttracks);
1294+ processDatawBestTracks<CollsCentFT0M>(collision, tracks, besttracks, bcs );
12921295 }
12931296
12941297 PROCESS_SWITCH (DndetaMFTPbPb, processDatawBestTracksCentFT0M,
@@ -1297,9 +1300,9 @@ struct DndetaMFTPbPb {
12971300
12981301 void processDatawBestTracksCentNGlobal (
12991302 CollsCentNGlobal::iterator const & collision, FiltMftTracks const & tracks,
1300- soa::SmallGroups<aod::BestCollisionsFwd> const & besttracks)
1303+ soa::SmallGroups<aod::BestCollisionsFwd> const & besttracks, CollBCs const & bcs )
13011304 {
1302- processDatawBestTracks<CollsCentNGlobal>(collision, tracks, besttracks);
1305+ processDatawBestTracks<CollsCentNGlobal>(collision, tracks, besttracks, bcs );
13031306 }
13041307
13051308 PROCESS_SWITCH (DndetaMFTPbPb, processDatawBestTracksCentNGlobal,
@@ -1309,9 +1312,9 @@ struct DndetaMFTPbPb {
13091312
13101313 void processDatawBestTracksCentMFT (
13111314 CollsCentMFT::iterator const & collision, FiltMftTracks const & tracks,
1312- soa::SmallGroups<aod::BestCollisionsFwd> const & besttracks)
1315+ soa::SmallGroups<aod::BestCollisionsFwd> const & besttracks, CollBCs const & bcs )
13131316 {
1314- processDatawBestTracks<CollsCentMFT>(collision, tracks, besttracks);
1317+ processDatawBestTracks<CollsCentMFT>(collision, tracks, besttracks, bcs );
13151318 }
13161319
13171320 PROCESS_SWITCH (DndetaMFTPbPb, processDatawBestTracksCentMFT,
0 commit comments