29 #include <TClonesArray.h>
31 #include "AliEMCALTriggerPatchInfo.h"
44 AliEmcalTriggerSelection::AliEmcalTriggerSelection() :
57 AliDebugStream(1) <<
"Trigger selection " << GetName() <<
": Make decision" << std::endl;
59 TIter patchIter(inputPatches);
60 AliEMCALTriggerPatchInfo *patch(NULL);
61 std::vector<AliEMCALTriggerPatchInfo *> selectedPatches;
62 AliDebugStream(1) <<
"Number of input patches: " << inputPatches->GetEntries() << std::endl;
63 while((patch = dynamic_cast<AliEMCALTriggerPatchInfo *>(patchIter()))){
65 selectedPatches.push_back(patch);
68 AliDebugStream(1) <<
"Number of patches fulfilling the trigger condition: " << selectedPatches.size() << std::endl;
70 AliEMCALTriggerPatchInfo *mainPatch(NULL), *testpatch(NULL);
71 for(std::vector<AliEMCALTriggerPatchInfo *>::iterator it = selectedPatches.begin(); it != selectedPatches.end(); ++it){
73 if(!mainPatch) mainPatch = testpatch;
Class for the selection of trigger patches in the EMCAL triggered event selection.
Object performing offline EMCAL trigger selection.
const AliEmcalTriggerSelectionCuts * fSelectionCuts
Cuts used for the trigger patch selection.
Container for trigger decision.
void SetSelectionCuts(const AliEmcalTriggerSelectionCuts *const cuts)
Set the selection cuts used in the trigger selection.
Bool_t IsSelected(const AliEMCALTriggerPatchInfo *const patch) const
Apply selection of the given trigger patch according to the selections described in the object...
void AddAcceptedPatch(AliEMCALTriggerPatchInfo *const acceptedPatch)
void SetMainPatch(const AliEMCALTriggerPatchInfo *const mainpatch)
Set the main (highest-energetic) trigger patch.
AliEmcalTriggerSelection()
Dummy constructor.
AliEmcalTriggerDecision * MakeDecison(const TClonesArray *const reconstructedPatches) const
Int_t CompareTriggerPatches(const AliEMCALTriggerPatchInfo *first, const AliEMCALTriggerPatchInfo *second) const
Compare two patches according to the energy measure specified in the cut object.