@@ -74,9 +74,6 @@ struct alice3decaypreselector {
7474 Configurable<float > nSigmaTOF{" nSigmaTOF" , 4 .0f , " Nsigma for TOF PID (if enabled)" };
7575 Configurable<float > nSigmaRICH{" nSigmaRICH" , 4 .0f , " Nsigma for RICH PID (if enabled)" };
7676
77- // Define o2 fitter, 2-prong, active memory (no need to redefine per event)
78- o2::vertexing::DCAFitterN<2 > fitter;
79-
8077 // for bit-packed maps
8178 std::vector<uint32_t > selectionMap;
8279
@@ -104,7 +101,17 @@ struct alice3decaypreselector {
104101
105102 void init (InitContext&)
106103 {
107- // future dev if needed
104+ auto h = histos.add <TH1>(" TracksProcessed" , " TracksProcessed" , o2::framework::HistType::kTH1D , {{10 , 0 , 10 }});
105+ h->GetXaxis ()->SetBinLabel (1 , " TotalTracks" );
106+ h->GetXaxis ()->SetBinLabel (2 , " InnerTOFPiRejected" );
107+ h->GetXaxis ()->SetBinLabel (3 , " InnerTOFKaRejected" );
108+ h->GetXaxis ()->SetBinLabel (4 , " InnerTOFPrRejected" );
109+ h->GetXaxis ()->SetBinLabel (5 , " OuterTOFPiRejected " );
110+ h->GetXaxis ()->SetBinLabel (6 , " OuterTOFKaRejected" );
111+ h->GetXaxis ()->SetBinLabel (7 , " OuterTOFPrRejected" );
112+ h->GetXaxis ()->SetBinLabel (8 , " RICHPiRejected" );
113+ h->GetXaxis ()->SetBinLabel (9 , " RICHKaRejected" );
114+ h->GetXaxis ()->SetBinLabel (10 , " RICHPrRejected" );
108115 }
109116
110117 // go declarative: use partitions instead of "if", then just toggle bits to allow for mask selection later
@@ -129,37 +136,56 @@ struct alice3decaypreselector {
129136 // / This process function ensures that all V0s are built. It will simply tag everything as true.
130137 void processInitialize (aod::Tracks const & tracks)
131138 {
139+ histos.fill (HIST (" TracksProcessed" ), 0.5 , tracks.size ());
132140 initializeMasks (tracks.size ());
133141 }
134142 // *+-+*+-+*+-+*+-+*+-+*+-+*+-+*+-+*+-+*+-+*
135143 void processFilterInnerTOF (tofTracks const &)
136144 {
137- for (auto const & track : pInnerTOFPi)
145+ for (auto const & track : pInnerTOFPi) {
138146 bitoff (selectionMap[track.globalIndex ()], kInnerTOFPion );
139- for (auto const & track : pInnerTOFKa)
147+ histos.fill (HIST (" TracksProcessed" ), 1.5 );
148+ }
149+ for (auto const & track : pInnerTOFKa) {
140150 bitoff (selectionMap[track.globalIndex ()], kInnerTOFKaon );
141- for (auto const & track : pInnerTOFPr)
151+ histos.fill (HIST (" TracksProcessed" ), 2.5 );
152+ }
153+ for (auto const & track : pInnerTOFPr) {
142154 bitoff (selectionMap[track.globalIndex ()], kInnerTOFProton );
155+ histos.fill (HIST (" TracksProcessed" ), 3.5 );
156+ }
143157 }
144158 // *+-+*+-+*+-+*+-+*+-+*+-+*+-+*+-+*+-+*+-+*
145159 void processFilterOuterTOF (tofTracks const &)
146160 {
147- for (auto const & track : pOuterTOFPi)
161+ for (auto const & track : pOuterTOFPi) {
148162 bitoff (selectionMap[track.globalIndex ()], kOuterTOFPion );
149- for (auto const & track : pOuterTOFKa)
163+ histos.fill (HIST (" TracksProcessed" ), 4.5 );
164+ }
165+ for (auto const & track : pOuterTOFKa) {
150166 bitoff (selectionMap[track.globalIndex ()], kOuterTOFKaon );
151- for (auto const & track : pOuterTOFPr)
167+ histos.fill (HIST (" TracksProcessed" ), 5.5 );
168+ }
169+ for (auto const & track : pOuterTOFPr) {
152170 bitoff (selectionMap[track.globalIndex ()], kOuterTOFProton );
171+ histos.fill (HIST (" TracksProcessed" ), 6.5 );
172+ }
153173 }
154174 // *+-+*+-+*+-+*+-+*+-+*+-+*+-+*+-+*+-+*+-+*
155175 void processFilterRICH (richTracks const &)
156176 {
157- for (auto const & track : pRICHPi)
177+ for (auto const & track : pRICHPi) {
158178 bitoff (selectionMap[track.globalIndex ()], kRICHPion );
159- for (auto const & track : pRICHKa)
179+ histos.fill (HIST (" TracksProcessed" ), 7.5 );
180+ }
181+ for (auto const & track : pRICHKa) {
160182 bitoff (selectionMap[track.globalIndex ()], kRICHKaon );
161- for (auto const & track : pRICHPr)
183+ histos.fill (HIST (" TracksProcessed" ), 8.5 );
184+ }
185+ for (auto const & track : pRICHPr) {
162186 bitoff (selectionMap[track.globalIndex ()], kRICHProton );
187+ histos.fill (HIST (" TracksProcessed" ), 9.5 );
188+ }
163189 }
164190 // *+-+*+-+*+-+*+-+*+-+*+-+*+-+*+-+*+-+*+-+*
165191 void processFilterOnMonteCarloTruth (labeledTracks const & tracks, aod::McParticles const &)
0 commit comments