:orphan: TAPro ===== **From:** `Toptica Photonics `_ **Class:** :py:class:`herosdevices.hardware.toptica.dlcpro.TAPro` **Driver Quality Index:** beta .. admonition:: Requires the following packages `toptica_lasersdk `_ Driver for Toptica TAPro laser system. .. tabs:: .. tab:: Arguments Bold arguments are mandatory. For more information on the listed arguments refer to the class documentation: :py:class:`herosdevices.hardware.toptica.dlcpro.TAPro` If parameters appear in this list but not in the class definition, please recursively check the linked base classes for the definition of the parameter. .. list-table:: :widths: 50 50 50 100 :header-rows: 1 * - Argument - Type - Default Value - Description * - **address** - **** - - IP address of the laser driver. * - **frequency** - **** - - Frequency the laser is running on in Hz. Used for interfacing with atomiq. Can be an approximate value if you don't plan to use this feature. * - lock_option - - False - If the laser has the lock option installed. * - additional_execs - dict | None - None - A dictionary of additional execution commands. The keys are the names of the methods added to the class, the values are arguments for :py:class:`herosdevices.hardware.toptica.lasersdk.attach_laser_sdk_exec_method`. ``{laser_num}`` can be used in the ``command`` string as a placeholder for the laser number specified when initializing the laser source. * - power - float | None - None - Output power of the laser in W. When ``None`` (default), the ``amp_output_power`` PD is used * - laser_num - - 1 - Number of the laser in a single dlcpro. Relevant for the dual or quad laser DLC options. * - observables - dict | None - None - A set of attributes (like ``self.system_health``) that are emitted with the ``observable_data`` HEROS event. If None, the default observables as defined in ``self._default_observables`` (which are typically all defined query attributes) are used. .. tab:: Example JSON for BOSS The following JSON strings can be used to start a HERO device representation of :py:class:`TAPro ` using `BOSS `_. .. code-block:: json { "_id": "my_TAPro", "classname": "herosdevices.hardware.toptica.dlcpro.TAPro", "arguments": { "address": "192.168.1.24", "frequency": 444779044095485.0, "lock_option": false, "additional_execs": { "get_trace": { "command": "{laser_num}:recorder:data:get-data", "expected_args": { "index": "int", "length": "int" }, "return_type": "bytes" } }, "power": 1.5, "laser_num": 1, "observables": [ "system_health", "emission_status" ] } } :sup:`generated from signature` .. tab:: Inheritance .. inheritance-diagram:: herosdevices.hardware.toptica.dlcpro.TAPro