Belle II Software release-09-00-07
HLTPrefilterModule.h
1/**************************************************************************
2 * basf2 (Belle II Analysis Software Framework) *
3 * Author: The Belle II Collaboration *
4 * *
5 * See git log for contributors and copyright holders. *
6 * This file is licensed under LGPL-3.0, see LICENSE.md. *
7 **************************************************************************/
8#pragma once
9
10/* HLT headers */
11#include <hlt/dbobjects/HLTPrefilterParameters.h>
12#include <hlt/softwaretrigger/core/utilities.h>
13#include <hlt/utilities/HLTPrefilter.h>
14
15/* BASF2 headers */
16#include <framework/core/Module.h>
17#include <framework/database/DBObjPtr.h>
18#include <framework/datastore/StoreObjPtr.h>
19
20/* C++ headers */
21#include <cstdint>
22#include <map>
23
24namespace Belle2 {
30 class EventMetaData;
31 class HLTPrefilterParameters;
32 class TRGSummary;
33
40 class HLTPrefilterModule final : public Module {
41
42 public:
45
47 virtual ~HLTPrefilterModule() final;
48
50 void initialize() final;
51
53 void beginRun() final;
54
60 void event() final;
61
62 private:
64 enum HLTPrefilterState { TimingCut = 0, CDCECLCut = 1 };
65
68
71
73 std::map<HLTPrefilterState, bool> m_decisions;
74
77
80
83
86
87 };
89}
90
Class for accessing objects in the database.
Definition: DBObjPtr.h:21
Prefilter module to suppress the injection background.
virtual ~HLTPrefilterModule() final
Default Destructor.
HLTPrefilterModule()
Module constructor.
void initialize() final
Module initializer.
void beginRun() final
Called when entering a new run.
StoreObjPtr< TRGSummary > m_trgSummary
Trigger summary Store ObjPtr.
StoreObjPtr< EventMetaData > m_eventInfo
Event Meta Data Store ObjPtr.
void event() final
Flag each event.
HLTPrefilterState
enumeration for HLTPrefilter state
HLTPrefilterState m_HLTPrefilterState
Instance for prefilter cut state.
DBObjPtr< HLTPrefilterParameters > m_hltPrefilterParameters
HLTprefilterParameters Database OjbPtr.
std::map< HLTPrefilterState, bool > m_decisions
Decision results.
HLTPrefilter::TimingCutState m_timingPrefilter
Helper instance for timing based prefilter.
HLTPrefilter::CDCECLCutState m_cdceclPrefilter
Helper instance for CDC-ECL occupancy based prefilter.
Helper for CDCECLCut state.
Definition: HLTPrefilter.h:99
Helper for TimingCut state.
Definition: HLTPrefilter.h:31
Base class for Modules.
Definition: Module.h:72
Type-safe access to single objects in the data store.
Definition: StoreObjPtr.h:96
Abstract base class for different kinds of events.