LDMX Software
|
Flags events that pass the tracker veto by applying specific selection criteria. More...
#include <TrackerVetoProcessor.h>
Public Member Functions | |
TrackerVetoProcessor (const std::string &name, framework::Process &process) | |
Class constructor. | |
virtual | ~TrackerVetoProcessor ()=default |
Class destructor. | |
void | configure (framework::config::Parameters ¶meters) override |
Configure the processor using the given user-specified parameters. | |
void | produce (framework::Event &event) override |
Process an event and apply tracker veto selection criteria. | |
![]() | |
Producer (const std::string &name, Process &process) | |
Class constructor. | |
virtual void | beforeNewRun (ldmx::RunHeader &header) |
Handle allowing producers to modify run headers before the run begins. | |
![]() | |
EventProcessor (const std::string &name, Process &process) | |
Class constructor. | |
virtual | ~EventProcessor () |
Class destructor. | |
virtual void | onNewRun (const ldmx::RunHeader &runHeader) |
Callback for the EventProcessor to take any necessary action when the run being processed changes. | |
virtual void | onFileOpen (EventFile &eventFile) |
Callback for the EventProcessor to take any necessary action when a new event input ROOT file is opened. | |
virtual void | onFileClose (EventFile &eventFile) |
Callback for the EventProcessor to take any necessary action when a event input ROOT file is closed. | |
virtual void | onProcessStart () |
Callback for the EventProcessor to take any necessary action when the processing of events starts, such as creating histograms. | |
virtual void | onProcessEnd () |
Callback for the EventProcessor to take any necessary action when the processing of events finishes, such as calculating job-summary quantities. | |
template<class T > | |
const T & | getCondition (const std::string &condition_name) |
Access a conditions object for the current event. | |
TDirectory * | getHistoDirectory () |
Access/create a directory in the histogram file for this event processor to create histograms and analysis tuples. | |
void | setStorageHint (framework::StorageControl::Hint hint) |
Mark the current event as having the given storage control hint from this module. | |
void | setStorageHint (framework::StorageControl::Hint hint, const std::string &purposeString) |
Mark the current event as having the given storage control hint from this module and the given purpose string. | |
int | getLogFrequency () const |
Get the current logging frequency from the process. | |
int | getRunNumber () const |
Get the run number from the process. | |
std::string | getName () const |
Get the processor name. | |
void | createHistograms (const std::vector< framework::config::Parameters > &histos) |
Internal function which is used to create histograms passed from the python configuration @parma histos vector of Parameters that configure histograms to create. | |
Private Attributes | |
float | max_d0_ |
Maximum allowed transverse impact parameter (d0) for tracks. | |
float | max_z0_ |
Maximum allowed longitudinal impact parameter (z0) for tracks. | |
float | max_chi2_per_ndf_ |
Max chi2/ndf required for tracks. | |
float | min_tagger_momentum_ |
Minimum required momentum for tagger tracks. | |
int | min_recoil_n_ |
Minimum number of recoil tracks required. | |
int | max_recoil_n_ |
Maximum number of recoil tracks allowed. | |
int | min_tagger_hits_ |
Min number of hits for tagger tracks required. | |
int | min_recoil_hits_ |
Min number of hits for recoil tracks required. | |
std::string | tagger_track_collection_name_ |
The name of the tagger track collection. | |
std::string | recoil_track_collection_name_ |
The name of the recoil track collection. | |
std::string | input_tagger_pass_name_ |
The pass name of the input tagger collections. | |
std::string | input_recoil_pass_name_ |
The pass name of the input recoil collections. | |
bool | inverse_skim_ {false} |
Boolean flag to invert the selection criteria for skimming purposes. | |
std::string | output_collection_ |
Additional Inherited Members | |
![]() | |
static void | declare (const std::string &classname, int classtype, EventProcessorMaker *) |
Internal function which is part of the PluginFactory machinery. | |
![]() | |
static const int | CLASSTYPE {1} |
Constant used to track EventProcessor types by the PluginFactory. | |
![]() | |
void | abortEvent () |
Abort the event immediately. | |
![]() | |
HistogramHelper | histograms_ |
Interface class for making and filling histograms. | |
NtupleManager & | ntuple_ {NtupleManager::getInstance()} |
Manager for any ntuples. | |
logging::logger | theLog_ |
The logger for this EventProcessor. | |
Flags events that pass the tracker veto by applying specific selection criteria.
This processor evaluates tracker events based on recoil and tagger track properties, applying configurable selection criteria to determine whether an event should be flagged.
Definition at line 26 of file TrackerVetoProcessor.h.
|
inline |
Class constructor.
name | Name of the processor. |
process | Reference to the framework process. |
Definition at line 33 of file TrackerVetoProcessor.h.
|
overridevirtual |
Configure the processor using the given user-specified parameters.
This function allows the user to set parameters such as track collection names, selection thresholds, and filtering options.
parameters | Set of parameters used to configure this processor. |
Reimplemented from framework::EventProcessor.
Definition at line 11 of file TrackerVetoProcessor.cxx.
References input_recoil_pass_name_, input_tagger_pass_name_, inverse_skim_, max_chi2_per_ndf_, max_d0_, max_recoil_n_, max_z0_, min_recoil_hits_, min_recoil_n_, min_tagger_hits_, min_tagger_momentum_, recoil_track_collection_name_, and tagger_track_collection_name_.
|
overridevirtual |
Process an event and apply tracker veto selection criteria.
This function checks the properties of tracks in the event and determines whether it passes or fails the tracker veto conditions.
event | The event to run the checks on. |
Implements framework::Producer.
Definition at line 32 of file TrackerVetoProcessor.cxx.
References framework::hint_shouldDrop, framework::hint_shouldKeep, input_recoil_pass_name_, inverse_skim_, max_chi2_per_ndf_, max_d0_, max_recoil_n_, max_z0_, min_recoil_hits_, min_recoil_n_, min_tagger_hits_, min_tagger_momentum_, recoil_track_collection_name_, ldmx::TrackerVetoResult::setRecoilVetoResult(), framework::EventProcessor::setStorageHint(), ldmx::TrackerVetoResult::setTaggerVetoResult(), ldmx::TrackerVetoResult::setVetoResult(), and tagger_track_collection_name_.
|
private |
The pass name of the input recoil collections.
Definition at line 96 of file TrackerVetoProcessor.h.
Referenced by configure(), and produce().
|
private |
The pass name of the input tagger collections.
Definition at line 93 of file TrackerVetoProcessor.h.
Referenced by configure().
|
private |
Boolean flag to invert the selection criteria for skimming purposes.
Definition at line 99 of file TrackerVetoProcessor.h.
Referenced by configure(), and produce().
|
private |
Max chi2/ndf required for tracks.
Definition at line 69 of file TrackerVetoProcessor.h.
Referenced by configure(), and produce().
|
private |
Maximum allowed transverse impact parameter (d0) for tracks.
Definition at line 63 of file TrackerVetoProcessor.h.
Referenced by configure(), and produce().
|
private |
Maximum number of recoil tracks allowed.
Definition at line 78 of file TrackerVetoProcessor.h.
Referenced by configure(), and produce().
|
private |
Maximum allowed longitudinal impact parameter (z0) for tracks.
Definition at line 66 of file TrackerVetoProcessor.h.
Referenced by configure(), and produce().
|
private |
Min number of hits for recoil tracks required.
Definition at line 84 of file TrackerVetoProcessor.h.
Referenced by configure(), and produce().
|
private |
Minimum number of recoil tracks required.
Definition at line 75 of file TrackerVetoProcessor.h.
Referenced by configure(), and produce().
|
private |
Min number of hits for tagger tracks required.
Definition at line 81 of file TrackerVetoProcessor.h.
Referenced by configure(), and produce().
|
private |
Minimum required momentum for tagger tracks.
Definition at line 72 of file TrackerVetoProcessor.h.
Referenced by configure(), and produce().
|
private |
Definition at line 102 of file TrackerVetoProcessor.h.
|
private |
The name of the recoil track collection.
Definition at line 90 of file TrackerVetoProcessor.h.
Referenced by configure(), and produce().
|
private |
The name of the tagger track collection.
Definition at line 87 of file TrackerVetoProcessor.h.
Referenced by configure(), and produce().