Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:33:24

0001 # Poor-man enum class with string conversion
0002 class _Enum:
0003     def __init__(self, **values):
0004         self._reverse = {}
0005         for key, value in values.items():
0006             setattr(self, key, value)
0007             if value in self._reverse:
0008                 raise Exception("Value %s is already used for a key %s, tried to re-add it for key %s" % (value, self._reverse[value], key))
0009             self._reverse[value] = key
0010 
0011     def toString(self, val):
0012         return self._reverse[val]
0013 
0014 SubDet = _Enum(
0015     BPix = 1,
0016     FPix = 2,
0017     TIB = 3,
0018     TID = 4,
0019     TOB = 5,
0020     TEC = 6
0021 )
0022 
0023 # Needs to be kept consistent with
0024 # DataFormats/TrackReco/interface/TrackBase.h
0025 Algo = _Enum(
0026     undefAlgorithm = 0, ctf = 1,
0027     duplicateMerge = 2, cosmics = 3,
0028     initialStep = 4,
0029     lowPtTripletStep = 5,
0030     pixelPairStep = 6,
0031     detachedTripletStep = 7,
0032     mixedTripletStep = 8,
0033     pixelLessStep = 9,
0034     tobTecStep = 10,
0035     jetCoreRegionalStep = 11,
0036     conversionStep = 12,
0037     muonSeededStepInOut = 13,
0038     muonSeededStepOutIn = 14,
0039     outInEcalSeededConv = 15, inOutEcalSeededConv = 16,
0040     nuclInter = 17,
0041     standAloneMuon = 18, globalMuon = 19, cosmicStandAloneMuon = 20, cosmicGlobalMuon = 21,
0042     # Phase1
0043     highPtTripletStep = 22, lowPtQuadStep = 23, detachedQuadStep = 24,
0044     displacedGeneralStep = 25, 
0045     displacedRegionalStep = 26,
0046     bTagGhostTracks = 27,
0047     beamhalo = 28,
0048     gsf = 29,
0049     # HLT algo name
0050     hltPixel = 30,
0051     # steps used by PF
0052     hltIter0 = 31,
0053     hltIter1 = 32,
0054     hltIter2 = 33,
0055     hltIter3 = 34,
0056     hltIter4 = 35,
0057     # steps used by all other objects @HLT
0058     hltIterX = 36,
0059     # steps used by HI muon regional iterative tracking
0060     hiRegitMuInitialStep = 37,
0061     hiRegitMuLowPtTripletStep = 38,
0062     hiRegitMuPixelPairStep = 39,
0063     hiRegitMuDetachedTripletStep = 40,
0064     hiRegitMuMixedTripletStep = 41,
0065     hiRegitMuPixelLessStep = 42,
0066     hiRegitMuTobTecStep = 43,
0067     hiRegitMuMuonSeededStepInOut = 44,
0068     hiRegitMuMuonSeededStepOutIn = 45,
0069     algoSize = 46
0070 )
0071 
0072 # Needs to kept consistent with
0073 # DataFormats/TrackReco/interface/TrajectoryStopReasons.h
0074 StopReason = _Enum(
0075   UNINITIALIZED = 0,
0076   MAX_HITS = 1,
0077   MAX_LOST_HITS = 2,
0078   MAX_CONSECUTIVE_LOST_HITS = 3,
0079   LOST_HIT_FRACTION = 4,
0080   MIN_PT = 5,
0081   CHARGE_SIGNIFICANCE = 6,
0082   LOOPER = 7,
0083   MAX_CCC_LOST_HITS = 8,
0084   NO_SEGMENTS_FOR_VALID_LAYERS = 9,
0085   SEED_EXTENSION = 10,
0086   SIZE = 12,
0087   NOT_STOPPED = 255
0088 )
0089 
0090 # Need to be kept consistent with
0091 # DataFormats/TrackReco/interface/SeedStopReason.h
0092 SeedStopReason = _Enum(
0093   UNINITIALIZED = 0,
0094   NOT_STOPPED = 1,
0095   SEED_CLEANING = 2,
0096   NO_TRAJECTORY = 3,
0097   SEED_REGION_REBUILD = 4,
0098   FINAL_CLEAN = 5,
0099   SMOOTHING_FAILED = 6,
0100   SIZE = 7
0101 )
0102 
0103 # to be kept is synch with enum HitSimType in TrackingNtuple.py
0104 HitSimType = _Enum(
0105     Signal = 0,
0106     ITPileup = 1,
0107     OOTPileup = 2,
0108     Noise = 3,
0109     Unknown = 99
0110 )
0111