File indexing completed on 2026-04-09 07:48:49
0001
0002 """
0003 PDGCodeEnum.py
0004 =======================
0005
0006 ::
0007
0008 ~/opticks/ana/PDGCodeEnum.py
0009
0010 """
0011
0012 from collections import OrderedDict as odict
0013
0014 class PDGCodeEnum(object):
0015 def __init__(self):
0016 code2name = odict()
0017 code2name[11] = "e-"
0018 code2name[13] = "mu-"
0019 code2name[-11] = "e+"
0020 code2name[-13] = "mu+"
0021 code2name[22] = "gamma"
0022 code2name[20022] = "photon"
0023 self.code2name = code2name
0024
0025 def __call__(self, icode):
0026 return self.code2name.get(icode, "INVALID CODE")
0027
0028 def __repr__(self):
0029 return "\n".join(["%2d : %s " % (int(kv[0]), kv[1]) for kv in self.code2name.items()])
0030
0031
0032 if __name__ == '__main__':
0033 pce = PDGCodeEnum()
0034 print(pce)
0035
0036