1 #ifndef __KVFAZIATRIGGER_H
2 #define __KVFAZIATRIGGER_H
5 #include "KVNameValueList.h"
6 #include <unordered_map>
29 uint16_t fTriggerPattern;
30 mutable std::unordered_map<std::string, TriggerPattern> fTriggerPatterns = {
35 std::unordered_map<std::string, uint16_t> fTriggerNameToBitPattern;
36 mutable std::map<TriggerPattern, uint16_t> fTriggerEnumToBitPattern;
46 fTriggerNameToBitPattern[
name.Data()] =
value;
47 fTriggerEnumToBitPattern[fTriggerPatterns[
name.Data()]] =
value;
53 return fTriggerPattern & fTriggerEnumToBitPattern[tp];
#define ClassDefOverride(name, id)
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void value
Base class for KaliVeda framework.
The trigger pattern for each FAZIA event.
bool IsTrigger(const std::string &tp) const
void AddTriggerPattern(const TString &name, uint16_t value)
bool IsTrigger(TriggerPattern tp) const
@ Mult2
M>=2 multiplicity trigger.
@ Mult1
Minimum bias M>=1 multiplicity trigger.
@ Mult1Downscale100
Downscaled (1/100) minimum bias M>=1 multiplicity trigger.
std::vector< std::string > GetTriggerPatterns() const
Returns the names of all trigger patterns which are known and set for the trigger.
void Print(Option_t *="") const override
Print defined trigger bit patterns with their meanings.
void SetTriggerPattern(uint16_t tp)