Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:04:26

0001 #ifndef L1GCTCAND_H
0002 #define L1GCTCAND_H
0003 
0004 #include "DataFormats/L1CaloTrigger/interface/L1CaloRegionDetId.h"
0005 
0006 /// \class L1GctCand
0007 /// \brief ABC for GCT EM and jet candidates
0008 /// \author Jim Brooke
0009 /// \date July 2006
0010 ///
0011 
0012 class L1GctCand {
0013 public:
0014   L1GctCand();
0015 
0016   virtual ~L1GctCand();
0017 
0018   /// access origin of candidate
0019   virtual L1CaloRegionDetId regionId() const = 0;
0020 
0021   /// empty candidate  - true if object not initialized
0022   virtual bool empty() const = 0;
0023 
0024   /// \brief get the rank code (6 bits)
0025   ///
0026   /// Note that the precise meaning of the bits returned by this method
0027   /// (ie. the Et scale) may differ depending on the concrete type
0028   virtual unsigned rank() const = 0;
0029 
0030   /// get eta index (bit 3 is sign, 1 for -ve Z, 0 for +ve Z)
0031   virtual unsigned etaIndex() const = 0;
0032 
0033   /// get eta sign bit (1 for -ve Z, 0 for +ve Z)
0034   virtual unsigned etaSign() const = 0;
0035 
0036   /// get phi index (0-17)
0037   virtual unsigned phiIndex() const = 0;
0038 
0039 private:
0040   /// dummy data member to make derived classes perstistable
0041   bool dummy_;
0042 };
0043 
0044 #endif