Please describe the use case that requires this feature.
Currently the EventPreprocessor, #2928 (and the older DL2EventPreprocessor) drop events that do not pass the QualityQuery, which is the normal use case. However when debugging, it is often useful to have a second mode: where all events are kept, but new boolean columns are added for each quality criterion. This makes it then easy to study which events are affected by specific cuts.
Describe the solution you'd like
Add an option to EventPreprocessor like quality_selection_mode that can be drop or mark. drop gives the standard behavior of dropping events that do not pass, while mark keeps all events but adds a boolean column for each criterion to the output.
Please describe the use case that requires this feature.
Currently the
EventPreprocessor, #2928 (and the olderDL2EventPreprocessor) drop events that do not pass theQualityQuery, which is the normal use case. However when debugging, it is often useful to have a second mode: where all events are kept, but new boolean columns are added for each quality criterion. This makes it then easy to study which events are affected by specific cuts.Describe the solution you'd like
Add an option to
EventPreprocessorlikequality_selection_modethat can bedropormark.dropgives the standard behavior of dropping events that do not pass, whilemarkkeeps all events but adds a boolean column for each criterion to the output.