Back to home page

sPhenix code displayed by LXR

 
 

    


File indexing completed on 2025-08-05 08:18:05

0001 #ifndef G4INTT_INTTDEADMAP_H
0002 #define G4INTT_INTTDEADMAP_H
0003 
0004 #include <g4detectors/PHG4CellDefs.h>
0005 
0006 #include <phool/PHObject.h>
0007 
0008 #include <iostream>  // for cout, ostream
0009 #include <set>
0010 
0011 class InttDeadMap : public PHObject
0012 {
0013  public:
0014   typedef std::set<PHG4CellDefs::keytype> Map;
0015 
0016   ~InttDeadMap() override = default;
0017 
0018   int isValid() const override;
0019   void identify(std::ostream &os = std::cout) const override;
0020 
0021   void addDeadChannelIntt(const int layer,
0022                           const int ladder_phi, const int ladder_z,
0023                           const int strip_z, const int strip_phi);
0024   virtual void addDeadChannel(PHG4CellDefs::keytype) { return; }
0025 
0026   virtual bool isDeadChannel(PHG4CellDefs::keytype) const { return false; }
0027   bool isDeadChannelIntt(const int layer,
0028                          const int ladder_phi, const int ladder_z,
0029                          const int strip_z, const int strip_phi) const;
0030 
0031   //! return all towers
0032   virtual const Map &getDeadChannels(void) const;
0033   virtual Map &getDeadChannels(void);
0034 
0035   virtual unsigned int size() const { return 0; }
0036 
0037   static PHG4CellDefs::keytype getInttKey(int layer,
0038                                           int ladder_phi, int ladder_z,
0039                                           int strip_z, int strip_phi);
0040 
0041   static int getWildCardID() { return s_wildCardID; }
0042 
0043  protected:
0044   InttDeadMap() = default;
0045 
0046  private:
0047   static int s_wildCardID;
0048 
0049   ClassDefOverride(InttDeadMap, 1)
0050 };
0051 
0052 #endif /* G4INTT_INTTDEADMAP_H */