Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 09:57:34

0001 /***********************************************************************************\
0002 * (c) Copyright 1998-2019 CERN for the benefit of the LHCb and ATLAS collaborations *
0003 *                                                                                   *
0004 * This software is distributed under the terms of the Apache version 2 licence,     *
0005 * copied verbatim in the file "LICENSE".                                            *
0006 *                                                                                   *
0007 * In applying this licence, CERN does not waive the privileges and immunities       *
0008 * granted to it by virtue of its status as an Intergovernmental Organization        *
0009 * or submit itself to any jurisdiction.                                             *
0010 \***********************************************************************************/
0011 
0012 #include "GaudiAlg/GaudiAlgorithm.h"
0013 #include <Gaudi/Property.h>
0014 
0015 class GAUDI_API Prescaler : public GaudiAlgorithm {
0016 
0017 public:
0018   /**
0019    ** Constructor(s)
0020    **/
0021   Prescaler( std::string name, ISvcLocator* pSvcLocator );
0022 
0023   /*****************************
0024    ** Public Function Members **
0025    *****************************/
0026 
0027   StatusCode initialize() override;
0028   StatusCode execute() override;
0029   StatusCode finalize() override;
0030 
0031 private:
0032   /**
0033    ** Percentage of events that should be passed
0034    **/
0035   Gaudi::CheckedProperty<double> m_percentPass{ this, "PercentPass", 100.0,
0036                                                 "percentage of events that should be passed" };
0037 
0038   /**
0039    ** Number of events passed
0040    **/
0041   int m_pass = 0;
0042 
0043   /**
0044    ** Number of events seen
0045    **/
0046   int m_seen = 0;
0047 };