A processor for mapping categorized data to TMUXData objects. More...
#include <TMUXDataMappingProcessor.h>
Public Member Functions | |
| TMUXDataMappingProcessor () | |
| Constructor. | |
| ~TMUXDataMappingProcessor () override | |
| Destructor. | |
| void | Init (TEventCollection *col) override |
| Initializes the processor with the provided event collection. | |
| void | Process () override |
| Processes the categorized data and maps it to TMUXData. | |
| int | ProcessDetectorData (const TObjArray *det_array, TMUXData *mux) |
| Processes data for a single detector. | |
Private Member Functions | |
| TMUXDataMappingProcessor (const TMUXDataMappingProcessor &)=delete | |
| ClassDefOverride (TMUXDataMappingProcessor, 2) | |
| ROOT macro for class definition. | |
| TMUXDataMappingProcessor & | operator= (const TMUXDataMappingProcessor &)=delete |
Private Attributes | |
| TCategorizedData ** | fCategorizedData |
| ! Pointer to the categorized data collection. | |
| TString | fCategorizedDataName |
| Name of the input categorized data collection. | |
| Int_t | fCatID |
| Category ID used for filtering input data. | |
| TClonesArray * | fOutData |
| ! Pointer to the output TMUXData array. | |
| TString | fOutputColName |
| Name of the output TMUXData collection. | |
A processor for mapping categorized data to TMUXData objects.
This class processes categorized input data (TCategorizedData) and maps it to output objects (TMUXData), which are stored in a TClonesArray. The mapping is controlled by a specified category ID (fCatID) and involves extracting and transforming raw detector values.
Definition at line 47 of file TMUXDataMappingProcessor.h.
| art::crib::TMUXDataMappingProcessor::TMUXDataMappingProcessor | ( | ) |
Constructor.
The constructor initializes the processor by setting up input/output collection names and default parameter values. These values can be overridden via the steering file or configuration options.
Definition at line 29 of file TMUXDataMappingProcessor.cc.
|
override |
Destructor.
The destructor ensures that dynamically allocated memory for fOutData is properly released to prevent memory leaks.
Definition at line 44 of file TMUXDataMappingProcessor.cc.
|
privatedelete |
|
private |
ROOT macro for class definition.
|
override |
Initializes the processor with the provided event collection.
| col | Pointer to the TEventCollection containing input and output collections. |
During initialization, the processor retrieves the input categorized data collection from the provided event collection and validates its type. It also initializes the output data array (fOutData) as a TClonesArray of TMUXData objects.
If the required input collection or parameters are invalid, an error state is set, and processing will not proceed.
Definition at line 59 of file TMUXDataMappingProcessor.cc.
|
privatedelete |
|
override |
Processes the categorized data and maps it to TMUXData.
Processes the categorized data and maps it to TMUXData objects. For each detector, the method extracts relevant data and creates a TMUXData object in the output array.
If the input collection is not initialized or the specified category is not found, appropriate warnings are logged, and the method exits early.
Definition at line 93 of file TMUXDataMappingProcessor.cc.
| int art::crib::TMUXDataMappingProcessor::ProcessDetectorData | ( | const TObjArray * | det_array, |
| TMUXData * | mux ) |
Processes data for a single detector.
| det_array | Pointer to the array of raw data for the detector. |
| mux | Pointer to the TMUXData object where mapped values will be stored. |
Processes data for a single detector and maps it to a TMUXData object. This method extracts energy, position, and timing data from the raw detector arrays and assigns them to the corresponding fields in mux.
Special handling is applied to timing data to aggregate multiple values.
Definition at line 126 of file TMUXDataMappingProcessor.cc.
|
private |
! Pointer to the categorized data collection.
Definition at line 83 of file TMUXDataMappingProcessor.h.
|
private |
Name of the input categorized data collection.
Definition at line 80 of file TMUXDataMappingProcessor.h.
|
private |
Category ID used for filtering input data.
Definition at line 86 of file TMUXDataMappingProcessor.h.
|
private |
! Pointer to the output TMUXData array.
Definition at line 84 of file TMUXDataMappingProcessor.h.
|
private |
Name of the output TMUXData collection.
Definition at line 81 of file TMUXDataMappingProcessor.h.