qiskit-metal icon indicating copy to clipboard operation
qiskit-metal copied to clipboard

Make QRenderers usable without a QDesign

Open marcolincs opened this issue 3 years ago • 2 comments

Currently renderer objects are created when a design object is created and they are 'registered' inside the design object. image it also requires the design to be passed to it, creating a loop.

However both branches of that loop need to be broken (made optional). Indeed we cannot assume a design object (or a GUI object) will be always used for a renderer. Use-modes for analysis/simulation might not require them at all. For example: the user might load a design to the simulator from a gds file and just want to operate on the simulator from the metal package.

Different ways to solve this, open to suggestions:

  • Suggestion 1. if we want to keep the renderer objects centralized (objects instantiated once and re-used), then we need to create them outside the design, in some other globally accessible place, could introduce the concept of "app" or "desktop" wrapping it all.
  • Suggestion 2. if we are ok decentralizing, then a new renderer object can be created whenever needed (for example, once each analysis class instance)

I vote for option 2 if operational conflicts can be handled. option 1 otherwise, but managing it more like an independent service.

marcolincs avatar Jul 02 '21 22:07 marcolincs

This works, if we have agreed to a scenario to import gds files.

priti-ashvin-shah-ibm avatar Feb 01 '23 18:02 priti-ashvin-shah-ibm

It is much further down the time line.

priti-ashvin-shah-ibm avatar Feb 01 '23 20:02 priti-ashvin-shah-ibm