File indexing completed on 2024-04-06 12:18:24
0001 #ifndef HLTrigger_HLTcore_TriggerExpressionPrescaler_h
0002 #define HLTrigger_HLTcore_TriggerExpressionPrescaler_h
0003
0004 #include "HLTrigger/HLTcore/interface/TriggerExpressionOperators.h"
0005
0006 namespace triggerExpression {
0007
0008 class Prescaler : public UnaryOperator {
0009 public:
0010 Prescaler(Evaluator* arg, unsigned int prescale) : UnaryOperator(arg), m_prescale(prescale), m_counter() {}
0011
0012 bool operator()(const Data& data) const override;
0013
0014 void init(const Data& data) override;
0015
0016 void dump(std::ostream& out, bool const ignoreMasks = false) const override {
0017 out << '(';
0018 m_arg->dump(out, ignoreMasks);
0019 out << " / " << m_prescale << ')';
0020 }
0021
0022 private:
0023 unsigned int m_prescale;
0024 mutable unsigned int m_counter;
0025 };
0026
0027 }
0028
0029 #endif