CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_4_4_5_patch3/src/HLTrigger/HLTcore/interface/TriggerExpressionPrescaler.h

Go to the documentation of this file.
00001 #ifndef HLTrigger_HLTfilters_TriggerExpressionPrescaler_h
00002 #define HLTrigger_HLTfilters_TriggerExpressionPrescaler_h
00003 
00004 #include "HLTrigger/HLTcore/interface/TriggerExpressionOperators.h"
00005 #include "HLTrigger/HLTcore/interface/TriggerExpressionData.h"
00006 
00007 namespace triggerExpression {
00008 
00009 class Prescaler : public UnaryOperator {
00010 public:
00011   Prescaler(Evaluator * arg, unsigned int prescale) :
00012     UnaryOperator(arg),
00013     m_prescale(prescale),
00014     m_counter()
00015   { }
00016 
00017   bool operator()(const Data & data) const;
00018 
00019   void init(const Data & data);
00020   
00021   void dump(std::ostream & out) const {
00022     out << "(" << (*m_arg) << " / " << m_prescale << ")";
00023   }
00024 
00025 private:
00026   unsigned int m_prescale;
00027   mutable unsigned int m_counter;
00028 };
00029 
00030 } // namespace triggerExpression
00031 
00032 #endif // HLTrigger_HLTfilters_TriggerExpressionPrescaler_h