PyPI load technology

edited November 17 in Python scripting

Hi Matthias,

I was looking through the documentation, https://www.klayout.org/klayout-pypi/, and I don't see any mention of technologies. I am wondering if it is possible to load technology files and libraries. I found that tech = pya.Technology().load() is available. However, I can't get it to work:

 tech = pya.Technology().load('/Users/lukasc/Documents/GitHub/SiEPIC_EBeam_PDK/klayout/EBeam/EBeam.lyt')
 print(tech)
 print(tech.name)
 ly = pya.Layout()
 ly.technology_name = tech.name
 print(ly.technology())
 print(tech.technology_names())

generates the following:

 <klayout.dbcore.Technology object at 0x1075e0940>
 EBeam
 None
 ['']

thank you

Comments

  • Got it working!

     tech = pya.Technology().create_technology('EBeam')
     tech = tech.load('/Users/lukasc/Documents/GitHub/SiEPIC_EBeam_PDK/klayout/EBeam/EBeam.lyt')
    

    The create_technology seems to register the technology in the system.

    Could you add this to the documentation?

    thank you
    Lukas

  • Hi Lukas,

    sure ... I mean the problem is that while "load" populates the Technology, it does not register it. Only "create_technology" does so. A plain Technology object is provided as a way to read and write Technology files, not to establish a technology in the system.

    Matthias

Sign In or Register to comment.