Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:02:19

0001 #ifndef L1TObjects_L1GctChannelMask_h
0002 #define L1TObjects_L1GctChannelMask_h
0003 
0004 #include "CondFormats/Serialization/interface/Serializable.h"
0005 
0006 #include <ostream>
0007 
0008 class L1GctChannelMask {
0009 public:
0010   /// default constructor sets all masks to false
0011   L1GctChannelMask();
0012   ~L1GctChannelMask() {}
0013 
0014   /// mask EM candidates from an RCT crate
0015   void maskEmCrate(unsigned crate);
0016 
0017   /// mask a region
0018   void maskRegion(unsigned ieta, unsigned iphi);
0019 
0020   /// mask eta range from total Et sum
0021   void maskTotalEt(unsigned ieta);
0022 
0023   /// mask eta range from missing Et sum
0024   void maskMissingEt(unsigned ieta);
0025 
0026   /// mask eta range from total Ht sum
0027   void maskTotalHt(unsigned ieta);
0028 
0029   /// mask eta range from missing Ht sum
0030   void maskMissingHt(unsigned ieta);
0031 
0032   /// get EM masks for an RCT crate
0033   bool emCrateMask(unsigned crate) const;
0034 
0035   /// get region masks
0036   bool regionMask(unsigned ieta, unsigned iphi) const;
0037 
0038   // get total Et masks
0039   bool totalEtMask(unsigned ieta) const;
0040 
0041   // get missing Et masks
0042   bool missingEtMask(unsigned ieta) const;
0043 
0044   // get total Ht masks
0045   bool totalHtMask(unsigned ieta) const;
0046 
0047   // get missing Ht masks
0048   bool missingHtMask(unsigned ieta) const;
0049 
0050 private:
0051   bool emCrateMask_[18];     // mask EM from RCT crate[n]
0052   bool regionMask_[22][18];  // mask region[ieta][iphi]
0053   bool tetMask_[22];
0054   bool metMask_[22];
0055   bool htMask_[22];
0056   bool mhtMask_[22];
0057 
0058   COND_SERIALIZABLE;
0059 };
0060 
0061 std::ostream& operator<<(std::ostream& os, const L1GctChannelMask obj);
0062 
0063 #endif