Developing applications ======================= mpylab separates the domain measurement workflow, device topology, and hardware access. An application can combine existing components or extend a specific layer. The main extension points are: * configure an existing measurement class through a new script; * derive a measurement class from ``Measure``; * add an instrument driver for an existing device base class; * provide a UI adapter or worker for an operator interface; * add interchangeable EUT monitoring or report components. Start with :doc:`architecture`. The :doc:`tutorial` then uses a virtual amplifier test to cover configuration, the DOT graph, autosave, testing, and subsequent UI integration. For immunity applications, :doc:`eut-monitoring` covers both configuration of existing measurement classes and development and safe integration of custom EUT monitors. .. toctree:: :maxdepth: 2 architecture tutorial measurement-classes device-behavior drivers multichannel-drivers eut-monitoring ui-workers quantities tool-modules testing path-corrections Core rules ---------- * Hardware access belongs in device drivers and workers, not in the UI thread. * Measurement values use SCUQ quantities with units and uncertainty. * DOT conditions receive values through an explicit context. * RF-off and device limits are safety functions, not UI details. * Long measurements must be resumable and their results traceable. * Test new workflows with virtual devices first.