======================= Exchangeable components ======================= * :ref:`dev_guide_input` * :ref:`dev_guide_qa` * :ref:`dev_guide_estimation` * :ref:`dev_guide_search` * **Output component** .. image:: ../images/components/component_overview_output.png :alt: Output component overview .. _dev_guide_output: Output component ================ The *Output* component is responsible for postprocessing the approximation results to create structured and/or filtered output artifacts, e.g., proviing the "best" approximated circuit according to a target metric or providing the Pareto frontier. It can also be used to clean up or remove working directories. Functions ========= .. .. todo:: Add links to function documentations ``setup(gen_info: GeneralInformation): None`` --------------------------------------------- The ``setup`` method can be used to initialize this component by storing the ``GeneralInformation`` instance and creating output files and directories. Note that this method is called during CIRCA's start-up phase, and thus, no data structures of the ``GeneralInformation`` instance are final at this point. ``process(): None`` ------------------- The ``process`` method provides the main functionality of the *Output* component. It is the last component method that is called before the framework terminates, so none of the other components will be affected if files or directories are removed or internal data structures are changed. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ :ref:`Back to the Developer Guide `