@@ -68,6 +68,7 @@ struct TauEventTableProducer {
6868 Configurable<bool > useNumContribs{" useNumContribs" , false , {" Use coll.numContribs as event cut" }};
6969 Configurable<int > cutRecoFlag{" cutRecoFlag" , 1 , {" 0 = std mode, 1 = upc mode" }};
7070 Configurable<bool > useRecoFlag{" useRecoFlag" , false , {" Use coll.flags as event cut" }};
71+ Configurable<int > cutRCTflag{" cutRCTflag" , 0 , {" 0 = off, 1 = CBT, 2 = CBT+ZDC, 3 = CBThadron, 4 = CBThadron+ZDC" }};
7172 Configurable<float > cutTrueGapSideFV0{" cutTrueGapSideFV0" , 180000 , " FV0A threshold for SG selector" };
7273 Configurable<float > cutTrueGapSideFT0A{" cutTrueGapSideFT0A" , 150 ., " FT0A threshold for SG selector" };
7374 Configurable<float > cutTrueGapSideFT0C{" cutTrueGapSideFT0C" , 50 ., " FT0C threshold for SG selector" };
@@ -153,6 +154,23 @@ struct TauEventTableProducer {
153154 return true ;
154155 }
155156
157+ template <typename C>
158+ bool isGoodRCTflag (C const & coll)
159+ {
160+ switch (cutSample.cutRCTflag ) {
161+ case 1 :
162+ return sgSelector.isCBTOk (coll);
163+ case 2 :
164+ return sgSelector.isCBTZdcOk (coll);
165+ case 3 :
166+ return sgSelector.isCBTHadronOk (coll);
167+ case 4 :
168+ return sgSelector.isCBTHadronZdcOk (coll);
169+ default :
170+ return true ;
171+ }
172+ }
173+
156174 template <typename C>
157175 bool isGoodROFtime (C const & coll)
158176 {
@@ -324,15 +342,16 @@ struct TauEventTableProducer {
324342 FullUDTracks const & tracks)
325343 {
326344
327- int gapSide = collision.gapSide ();
328- int trueGapSide = sgSelector.trueGap (collision, cutSample.cutTrueGapSideFV0 , cutSample.cutTrueGapSideFT0A , cutSample.cutTrueGapSideFT0C , cutSample.cutTrueGapSideZDC );
329-
330- if (cutSample.useTrueGap )
331- gapSide = trueGapSide;
345+ if (!isGoodRCTflag (collision))
346+ return ;
332347
333348 if (!isGoodROFtime (collision))
334349 return ;
335350
351+ int gapSide = collision.gapSide ();
352+ int trueGapSide = sgSelector.trueGap (collision, cutSample.cutTrueGapSideFV0 , cutSample.cutTrueGapSideFT0A , cutSample.cutTrueGapSideFT0C , cutSample.cutTrueGapSideZDC );
353+ if (cutSample.useTrueGap )
354+ gapSide = trueGapSide;
336355 if (gapSide != cutSample.whichGapSide )
337356 return ;
338357
0 commit comments