Back to home page

sPhenix code displayed by LXR

 
 

    


File indexing completed on 2025-08-06 08:17:54

0001 /*!
0002  * \file MvtxPixelMask.h
0003  * \brief Holds pixel ids for hot pixels
0004  * \author Tanner Mengel <tmengel@bnl.gov>
0005  * \version $Version: 2.0.1 $
0006  * \date $Date: 05/23/2025.
0007  */
0008 
0009 #ifndef MVTX_MVTXPIXELMASK_H
0010 #define MVTX_MVTXPIXELMASK_H
0011 
0012 #include "MvtxPixelDefs.h"
0013 
0014 #include <vector>
0015 
0016 class MvtxRawHit;
0017 
0018 class MvtxPixelMask
0019 {
0020  public:
0021   MvtxPixelMask() = default;
0022   ~MvtxPixelMask() { clear(); }
0023 
0024   typedef std::vector<MvtxPixelDefs::pixelkey> hot_pixel_map_t;
0025 
0026   void load_from_CDB();
0027 
0028   void add_pixel(MvtxPixelDefs::pixelkey key);
0029   void remove_pixel(MvtxPixelDefs::pixelkey key);
0030 
0031   void clear();
0032 
0033   bool is_masked(MvtxRawHit* hit) const;
0034 
0035   const hot_pixel_map_t &get_hot_pixel_map() const { return m_hot_pixel_map; }
0036 
0037  private:
0038   hot_pixel_map_t m_hot_pixel_map{};
0039 };
0040 
0041 #endif  // MVTX_MVTXPIXELMASK_H