@@ -103,6 +103,7 @@ struct ResonanceInitializer {
103103
104104 // / Event cuts
105105 o2::analysis::CollisonCuts colCuts;
106+
106107 struct : ConfigurableGroup {
107108 Configurable<float > cfgEvtZvtx{" cfgEvtZvtx" , 10 .f , " Evt sel: Max. z-Vertex (cm)" };
108109 Configurable<int > cfgEvtOccupancyInTimeRangeMax{" cfgEvtOccupancyInTimeRangeMax" , -1 , " Evt sel: maximum track occupancy" };
@@ -118,7 +119,12 @@ struct ResonanceInitializer {
118119 Configurable<bool > cfgEvtCollInTimeRangeStandard{" cfgEvtCollInTimeRangeStandard" , false , " Evt sel: apply NoCollInTimeRangeStandard" };
119120 Configurable<bool > cfgEvtRun2AliEventCuts{" cfgEvtRun2AliEventCuts" , true , " Evt sel: apply Run2 AliEventCuts" };
120121 Configurable<bool > cfgEvtRun2INELgtZERO{" cfgEvtRun2INELgtZERO" , false , " Evt sel: apply Run2 INELgtZERO" };
122+ Configurable<bool > cfgEvtUseRCTFlagChecker{" cfgEvtUseRCTFlagChecker" , false , " Evt sel: use RCT flag checker" };
123+ Configurable<std::string> cfgEvtRCTFlagCheckerLabel{" cfgEvtRCTFlagCheckerLabel" , " CBT_hadronPID" , " Evt sel: RCT flag checker label" };
124+ Configurable<bool > cfgEvtRCTFlagCheckerZDCCheck{" cfgEvtRCTFlagCheckerZDCCheck" , false , " Evt sel: RCT flag checker ZDC check" };
125+ Configurable<bool > cfgEvtRCTFlagCheckerLimitAcceptAsBad{" cfgEvtRCTFlagCheckerLimitAcceptAsBad" , false , " Evt sel: RCT flag checker treat Limited Acceptance As Bad" };
121126 } EventCuts;
127+ RCTFlagsChecker myChecker (EventCuts.cfgEvtRCTFlagCheckerLabel, EventCuts.cfgEvtRCTFlagCheckerZDCCheck, EventCuts.cfgEvtRCTFlagCheckerLimitAcceptAsBad);
122128
123129 Configurable<std::string> cfgMultName{" cfgMultName" , " FT0M" , " The name of multiplicity estimator" };
124130
@@ -1287,6 +1293,8 @@ struct ResonanceInitializer {
12871293 // Default event selection
12881294 if (!colCuts.isSelected (collision))
12891295 return ;
1296+ if (EventCuts.cfgEvtUseRCTFlagChecker && !myChecker (*collision))
1297+ return ;
12901298 colCuts.fillQA (collision);
12911299
12921300 resoCollisions (0 , collision.posX (), collision.posY (), collision.posZ (), centEst (collision), dBz);
@@ -1311,6 +1319,8 @@ struct ResonanceInitializer {
13111319 // Default event selection
13121320 if (!colCuts.isSelected (collision))
13131321 return ;
1322+ if (EventCuts.cfgEvtUseRCTFlagChecker && !myChecker (*collision))
1323+ return ;
13141324 colCuts.fillQARun2 (collision);
13151325
13161326 resoCollisions (0 , collision.posX (), collision.posY (), collision.posZ (), collision.centRun2V0M (), dBz);
@@ -1336,6 +1346,8 @@ struct ResonanceInitializer {
13361346 // Default event selection
13371347 if (!colCuts.isSelected (collision))
13381348 return ;
1349+ if (EventCuts.cfgEvtUseRCTFlagChecker && !myChecker (*collision))
1350+ return ;
13391351 colCuts.fillQA (collision);
13401352
13411353 resoCollisions (0 , collision.posX (), collision.posY (), collision.posZ (), centEst (collision), dBz);
@@ -1361,6 +1373,8 @@ struct ResonanceInitializer {
13611373 // Default event selection
13621374 if (!colCuts.isSelected (collision))
13631375 return ;
1376+ if (EventCuts.cfgEvtUseRCTFlagChecker && !myChecker (*collision))
1377+ return ;
13641378 colCuts.fillQA (collision);
13651379
13661380 resoCollisions (0 , collision.posX (), collision.posY (), collision.posZ (), centEst (collision), dBz);
@@ -1415,6 +1429,8 @@ struct ResonanceInitializer {
14151429 // Default event selection
14161430 if (!colCuts.isSelected (collision))
14171431 return ;
1432+ if (EventCuts.cfgEvtUseRCTFlagChecker && !myChecker (*collision))
1433+ return ;
14181434 colCuts.fillQA (collision);
14191435
14201436 resoCollisions (0 , collision.posX (), collision.posY (), collision.posZ (), centEst (collision), dBz);
@@ -1467,6 +1483,8 @@ struct ResonanceInitializer {
14671483 {
14681484 auto bc = collision.bc_as <aod::BCsWithTimestamps>(); // / adding timestamp to access magnetic field later
14691485 initCCDB (bc);
1486+ if (EventCuts.cfgEvtUseRCTFlagChecker && !myChecker (*collision))
1487+ return ;
14701488 colCuts.fillQA (collision);
14711489
14721490 resoCollisions (0 , collision.posX (), collision.posY (), collision.posZ (), centEst (collision), dBz);
@@ -1497,6 +1515,8 @@ struct ResonanceInitializer {
14971515 {
14981516 auto bc = collision.bc_as <aod::BCsWithTimestamps>(); // / adding timestamp to access magnetic field later
14991517 initCCDB (bc);
1518+ if (EventCuts.cfgEvtUseRCTFlagChecker && !myChecker (*collision))
1519+ return ;
15001520 colCuts.fillQA (collision);
15011521
15021522 resoCollisions (0 , collision.posX (), collision.posY (), collision.posZ (), centEst (collision), dBz);
@@ -1552,6 +1572,8 @@ struct ResonanceInitializer {
15521572 {
15531573 auto bc = collision.bc_as <aod::BCsWithTimestamps>(); // / adding timestamp to access magnetic field later
15541574 initCCDB (bc);
1575+ if (EventCuts.cfgEvtUseRCTFlagChecker && !myChecker (*collision))
1576+ return ;
15551577 colCuts.fillQA (collision);
15561578
15571579 resoCollisions (0 , collision.posX (), collision.posY (), collision.posZ (), centEst (collision), dBz);
@@ -1612,6 +1634,8 @@ struct ResonanceInitializer {
16121634 {
16131635 auto bc = collision.bc_as <aod::BCsWithTimestamps>(); // / adding timestamp to access magnetic field later
16141636 initCCDB (bc);
1637+ if (EventCuts.cfgEvtUseRCTFlagChecker && !myChecker (*collision))
1638+ return ;
16151639 colCuts.fillQA (collision);
16161640
16171641 resoCollisions (0 , collision.posX (), collision.posY (), collision.posZ (), centEst (collision), dBz);
0 commit comments