Back to home page

Project CMSSW displayed by LXR

 
 

    


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 }  // namespace triggerExpression
0028 
0029 #endif  // HLTrigger_HLTcore_TriggerExpressionPrescaler_h