ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/grimes/L1Menu/interface/l1menu/ITriggerRate.h
Revision: 1.3
Committed: Wed Jul 24 11:48:54 2013 UTC (11 years, 9 months ago) by grimes
Content type: text/plain
Branch: MAIN
CVS Tags: HEAD
Changes since 1.2: +10 -0 lines
Log Message:
Big commit of lots of changes before migrating to Git.

File Contents

# User Rev Content
1 grimes 1.1 #ifndef l1menu_ITriggerRate_h
2     #define l1menu_ITriggerRate_h
3    
4     #include <vector>
5    
6 grimes 1.2 //
7     // Forward declarations
8     //
9     namespace l1menu
10     {
11     class ITrigger;
12     }
13    
14 grimes 1.1 namespace l1menu
15     {
16     /** @brief Interface to get information about the trigger rate. Read only.
17     *
18     * @author Mark Grimes (mark.grimes@bristol.ac.uk)
19     * @date 24/Jun/2013
20     */
21     class ITriggerRate
22     {
23     public:
24     virtual ~ITriggerRate() {}
25    
26 grimes 1.3 /** @brief The trigger that gives the rate, which can be queiried for thresholds etcetera
27     * N.B. This trigger is a copy of whatever was used to calculate the rate. Changing one will
28     * have no affect on the other.
29     */
30 grimes 1.1 virtual const l1menu::ITrigger& trigger() const = 0;
31    
32     /** @brief The fraction of events that this trigger passed, so before applying any scaling. */
33     virtual float fraction() const = 0;
34    
35     /** @brief The rate, so fraction multiplied by the scaling. */
36     virtual float rate() const = 0;
37 grimes 1.3
38     /** @brief The fraction of events that pass only this trigger, with no scaling. */
39     virtual float pureFraction() const = 0;
40    
41     /** @brief The pure rate, so pureFraction multiplied by the scaling. */
42     virtual float pureRate() const = 0;
43 grimes 1.1 };
44    
45     } // end of namespace l1menu
46    
47     #endif