Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2026-04-09 07:48:49

0001 #!/usr/bin/env python
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