1 #ifndef SubDetId_hxx_seen 2 #define SubDetId_hxx_seen 4 #include "BasicTypes.hxx" 10 const static unsigned long DetMask[28];
13 static unsigned long MakeMask(
int msb,
int lsb) {
return (((1<<(((msb)-(lsb))+1))-1)<<(lsb));}
16 static int NumberOfSetBits(
unsigned long v);
65 static bool GetDetectorArrayUsed(
unsigned long BitField, SubDetId_h dets[],
int nDet);
70 static int GetTPC(
unsigned long BitField);
static bool TrackUsesOnlyDet(unsigned long BitFIeld, SubDetId::SubDetEnum det)
Check whether a track only uses a specified subdetector or detector system.
static bool IsFGDDetector(SubDetId::SubDetEnum det)
Check if a detector enumeration refers to a FGD or not.
static bool HasPECALDetector(unsigned long BitField)
Check if a detector bit field has a P0D ECAL or not.
static int GetNSegmentsInDet(unsigned long BitFIeld, SubDetId::SubDetEnum det)
static bool IsP0DDetector(SubDetId::SubDetEnum det)
Check if a detector enumeration refers to a SMRDP0D or not.
static void SetDetectorSystemFields(unsigned long &BitField)
static bool GetDetectorUsed(unsigned long BitField, SubDetId::SubDetEnum det)
Method to see if a certain subdetector or subdetector system is used.
static bool IsPECALDetector(SubDetId::SubDetEnum det)
Check if a detector enumeration refers to a P0D ECAL or not.
static bool HasSMRDDetector(unsigned long BitField)
Check if a detector bit field has a SMRD or not.
static void SetDetectorUsed(unsigned long &BitField, SubDetId::SubDetEnum det)
Method to set a certain subdetector or subdetector system to used used.
static bool IsTPCDetector(SubDetId::SubDetEnum det)
Check if a detector enumeration refers to a TPC or not.
static bool IsECALDetector(SubDetId::SubDetEnum det)
Check if a detector enumeration refers to a ECAL or not.
SubDetEnum
Enumeration of all detector systems and subdetectors.
static SubDetId::SubDetEnum GetSubdetectorEnum(unsigned long BitField)
Get the single subdetector that this track is from.
static bool IsTECALDetector(SubDetId::SubDetEnum det)
Check if a detector enumeration refers to a Tracker ECAL or not.
static bool HasTECALDetector(unsigned long BitField)
Check if a detector bit field has a Tracker ECAL or not.
static int GetTPC(unsigned long BitField)
static bool IsSMRDDetector(SubDetId::SubDetEnum det)
Check if a detector enumeration refers to a SMRD or not.