It looks like you're new here. If you want to get involved, click one of these buttons!
Hi, Matthias!
I had script that does some layout processing in batch mode. It's run fine in hidden views mode: klayout <layout> -z -r <script>, but failed in headless mode:  klayout <layout> -zz -r <script>.
In both cases layout is accessed trough:
cell_view = pya.CellView.active() layout = cell_view.layout() ... layout post-processing
I added debug prints for cell_view and layout and script returns None for layout in headless mode.
Layout class documentation is too brief for headless mode, so it'll be good idea to expand it to use cases similar to above. If headless mode doesn't not create GUI objects, may be Layout class should provide access to collection of opened layouts instead of CellView?
Comments
@EugeneZelenko In headless mode there is no user interface, hence there are not UI-related objects like MainWindow and LayoutView.
On Linux I solve the problem by running klayout in a virtual XServer environment using
For the future I am preparing a Qt-less release which also features a stripped-down version of
LayoutViewfor Python modules. This is not the same as headless mode, but this is a way to batch layout view features without needing a display or even Qt. See here for details: https://github.com/KLayout/klayout/issues/1082Matthias
Hi, Matthias!
Thank you for explanations!