 |
Belle II Software
release-05-02-19
|
12 #include <framework/datastore/StoreObjPtr.h>
13 #include <mdst/dataobjects/SoftwareTriggerResult.h>
14 #include <framework/core/Module.h>
15 #include <framework/dataobjects/EventMetaData.h>
19 #include <boost/variant.hpp>
20 #include <boost/optional.hpp>
31 class TriggerSkimModule :
public Module {
40 virtual void event()
override;
44 bool checkTrigger(
const std::string& name,
unsigned int prescale = 1, uint32_t* counter =
nullptr)
const;
48 std::vector<boost::variant<std::string, std::tuple<std::string, unsigned int>>>
m_triggerLines;
std::string m_logicMode
do we want each or any trigger line?
virtual void event() override
Event function.
std::vector< uint32_t > m_prescaleCounters
if we don't use random prescale we need counters
virtual void initialize() override
Initialize.
Abstract base class for different kinds of events.
Type-safe access to single objects in the data store.
TriggerSkimModule()
Constructor: Sets the description, the properties and the parameters of the module.
int m_expectedResult
Result we want for each or any trigger line.
bool checkTrigger(const std::string &name, unsigned int prescale=1, uint32_t *counter=nullptr) const
Check a single trigger line for the expected result.
boost::optional< int > m_resultOnMissing
value to return if there's no SoftwareTriggerResult
StoreObjPtr< SoftwareTriggerResult > m_trigResults
Required input for trigger results.
std::vector< boost::variant< std::string, std::tuple< std::string, unsigned int > > > m_triggerLines
List of triggerlines we're interested in.
StoreObjPtr< EventMetaData > m_eventMetaDataPtr
EventMetaData is used to report warning/error messages.
bool m_useRandomNumbersForPreScale
and do we want random prescale or counters ?