:orphan:

PVCam Camera
============

**From:** `Teledyne Technologies <https://www.teledynevisionsolutions.com/products/pvcam-sdk-amp-driver/>`_

**Class:** :py:class:`herosdevices.hardware.teledyne.pvcam.PvcamCamera`


**Driver Quality Index:** beta


.. admonition:: Requires the following packages 

   `pyvcam <https://github.com/Photometrics/PyVCAM>`_

.. include:: /hardware/pvcam.rst
A class to interface with Teledyne PVCam Cameras.

It manages camera configuration, acquisition, and data streaming compatible with the atomiq camera template.

.. tab-set:: 


   .. tab-item:: Arguments
   
   
      Bold arguments are mandatory. For more information on the listed arguments refer to the class             documentation: :py:class:`herosdevices.hardware.teledyne.pvcam.PvcamCamera` 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
         * - **cam_id**
           - **<class 'str'>**
           - 
           - Serial number of the cam. Can be obtained for example from the ``PVCamTest`` program shipped with the vendor library. If you specify a wrong id, this driver will also log a list of available devices.
         * - **config_dict**
           - **<class 'dict'>**
           - 
           - Dict of configuration values like shown in the json example above.
         * - default_config
           - str | None
           - None
           - Default key in :code:`config_dict` to use.
         * - lib_path
           - str | None
           - None
           - Path to vendor library. Can also be set via the environmental variable ``PVCAM_SDK_PATH``
      

   .. tab-item:: Example JSON for BOSS
   
      The following JSON strings can be used to start a HERO device representation of             :py:class:`PvcamCamera <herosdevices.hardware.teledyne.pvcam.PvcamCamera>` using             `BOSS <https://boss-eb4966.gitlab.io/>`_.
      
      .. code-block:: json
      
         {
             "_id": "my-camera",
             "classname": "herosdevices.hardware.teledyne.PvcamCamera",
             "arguments": {
                 "cam_id": "pvcamUSB_0",
                 "default_config": "default",
                 "config_dict": {
                     "default": {
                         "roi": [
                             1500,
                             800,
                             700,
                             700
                         ],
                         "exp_mode": "Edge Trigger"
                     }
                 }
             }
         }
      
      :sup:`from examples/teledyne/pvcam.json` 
      
      
      .. code-block:: json
      
         {
             "_id": "my_PvcamCamera",
             "classname": "herosdevices.hardware.teledyne.pvcam.PvcamCamera",
             "arguments": {
                 "cam_id": "<class 'str'>",
                 "config_dict": "<class 'dict'>",
                 "default_config": null,
                 "lib_path": null
             }
         }
      
      :sup:`generated from signature`
   .. tab-item:: Inheritance
   
   
      .. inheritance-diagram:: herosdevices.hardware.teledyne.pvcam.PvcamCamera
      
