Skip to content

Commit 79a3e58

Browse files
committed
Increasing coverage to the rest of the devices, excluding a few remaining
pseudoclocks. I have used an alternate file structure for the docs on the DummyIntermediateDevice as an example of another method of documenting.
1 parent 19e42fd commit 79a3e58

16 files changed

+520
-56
lines changed

docs/source/devices/IMAQdx.rst

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@ The "master" camera device from which all others derive.
1010
labscript_devices.IMAQdxCamera.labscript_devices
1111
labscript_devices.IMAQdxCamera.blacs_tabs
1212
labscript_devices.IMAQdxCamera.blacs_workers
13-
labscript_devices.IMAQdxCamera.register_classes
1413

1514
Installation
1615
~~~~~~~~~~~~
@@ -46,9 +45,3 @@ Detailed Documentation
4645
:undoc-members:
4746
:show-inheritance:
4847
:private-members:
49-
50-
.. automodule:: labscript_devices.IMAQdxCamera.register_classes
51-
:members:
52-
:undoc-members:
53-
:show-inheritance:
54-
:private-members:
Lines changed: 21 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,22 @@
11
Alazar Tech Board
2-
=================
2+
=================
3+
4+
A labscript device class for data acquisition boards made by Alazar Technologies Inc (ATS).
5+
6+
Installation
7+
~~~~~~~~~~~~
8+
9+
This device requires the atsapi.py wrapper. It should be installed into site-packages or
10+
kept in the local directory.
11+
12+
It also uses the tqdm progress bar, which is not a standard dependency for the labscript-suite.
13+
14+
Detailed Documentation
15+
~~~~~~~~~~~~~~~~~~~~~~
16+
17+
.. automodule:: labscript_devices.AlazarTechBoard
18+
:members:
19+
:undoc-members:
20+
:show-inheritance:
21+
:member-order: bysource
22+
:private-members:

docs/source/devices/andorsolis.rst

Lines changed: 42 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,43 @@
11
Andor Solis Cameras
2-
===================
2+
===================
3+
4+
A labscript device for controlling Andor scientific cameras via the Andor SDK3 interface.
5+
6+
Presently, this device is hard-coded for use with the iXon camera. Minor modifications can allow use with other Andor cameras, so long as they are compatible with the Andor SDK3 library.
7+
8+
.. autosummary::
9+
labscript_devices.AndorSolis.labscript_devices
10+
labscript_devices.AndorSolis.blacs_tabs
11+
labscript_devices.AndorSolis.blacs_workers
12+
13+
Installation
14+
~~~~~~~~~~~~
15+
16+
The Andor SDK is available from Andor as a paid product (typically purchased with the camera). It must be installed with the SDK directory added to the system path.
17+
18+
Detailed Documentation
19+
~~~~~~~~~~~~~~~~~~~~~~
20+
21+
.. automodule:: labscript_devices.AndorSolis
22+
:members:
23+
:undoc-members:
24+
:show-inheritance:
25+
:private-members:
26+
27+
.. automodule:: labscript_devices.AndorSolis.labscript_devices
28+
:members:
29+
:undoc-members:
30+
:show-inheritance:
31+
:private-members:
32+
33+
.. automodule:: labscript_devices.AndorSolis.blacs_tabs
34+
:members:
35+
:undoc-members:
36+
:show-inheritance:
37+
:private-members:
38+
39+
.. automodule:: labscript_devices.AndorSolis.blacs_workers
40+
:members:
41+
:undoc-members:
42+
:show-inheritance:
43+
:private-members:
Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,10 @@
11
Dummy Intermediate Device
2-
=========================
2+
=========================
3+
4+
.. automodule:: labscript_devices.DummyIntermediateDevice
5+
:members:
6+
:undoc-members:
7+
:show-inheritance:
8+
:member-order: bysource
9+
:private-members:
10+
Lines changed: 62 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,63 @@
11
Dummy Pseudoclock
2-
=================
2+
=================
3+
4+
This device represents a dummy labscript device for purposes of testing BLACS
5+
and labscript. The device is a PseudoclockDevice, and can be the sole device
6+
in a connection table or experiment.
7+
8+
.. autosummary::
9+
labscript_devices.DummyPseudoclock.labscript_devices
10+
labscript_devices.DummyPseudoclock.blacs_tabs
11+
labscript_devices.DummyPseudoclock.blacs_workers
12+
labscript_devices.DummyPseudoclock.runviewer_parsers
13+
14+
Usage
15+
~~~~~
16+
17+
.. code-block:: python
18+
19+
from labscript import *
20+
21+
from labscript_devices.DummyPseudoclock.labscript_devices import DummyPseudoclock
22+
from labscript_devices.DummyIntermediateDevice import DummyIntermediateDevice
23+
24+
DummyPseudoclock(name='dummy_clock',BLACS_connection='dummy')
25+
DummyIntermediateDevice(name='dummy_device',BLACS_connection='dummy2',
26+
parent_device=dummy_clock.clockline)
27+
28+
start()
29+
stop(1)
30+
31+
32+
Detailed Documentation
33+
~~~~~~~~~~~~~~~~~~~~~~
34+
35+
.. automodule:: labscript_devices.DummyPseudoclock
36+
:members:
37+
:undoc-members:
38+
:show-inheritance:
39+
:private-members:
40+
41+
.. automodule:: labscript_devices.DummyPseudoclock.labscript_devices
42+
:members:
43+
:undoc-members:
44+
:show-inheritance:
45+
:private-members:
46+
47+
.. automodule:: labscript_devices.DummyPseudoclock.blacs_tabs
48+
:members:
49+
:undoc-members:
50+
:show-inheritance:
51+
:private-members:
52+
53+
.. automodule:: labscript_devices.DummyPseudoclock.blacs_workers
54+
:members:
55+
:undoc-members:
56+
:show-inheritance:
57+
:private-members:
58+
59+
.. automodule:: labscript_devices.DummyPseudoclock.runviewer_parsers
60+
:members:
61+
:undoc-members:
62+
:show-inheritance:
63+
:private-members:
Lines changed: 76 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,77 @@
11
FlyCapture2 Cameras
2-
===================
2+
===================
3+
4+
This device allows control of FLIR (formerly Point Grey) scientific cameras via the `FlyCapture2 SDK <https://www.flir.com/products/flycapture-sdk/>`_ with the now deprecated PyCapture2 wrapper. In order to use this device, both the SDK and the python wrapper must be installed. Note that PyCapture2 only supports up to Python 3.6.
5+
6+
.. autosummary::
7+
labscript_devices.FlyCapture2Camera.labscript_devices
8+
labscript_devices.FlyCapture2Camera.blacs_tabs
9+
labscript_devices.FlyCapture2Camera.blacs_workers
10+
11+
Installation
12+
~~~~~~~~~~~~
13+
14+
First ensure that the FlyCapture2 SDK is installed.
15+
16+
The python wrapper is available via FLIR and is only released for Python up to 3.6. It must be installed separately to pointed to the correct conda environment during install.
17+
18+
19+
For GigE cameras, ensure that the network interface card (NIC) on the computer with the BLACS controlling the camera has enabled Jumbo Frames. That maximum allowed value (typically 9000) is preferable to avoid dropped frames.
20+
21+
Usage
22+
~~~~~
23+
24+
Like the :doc:`IMAQdxCamera <IMAQdx>` device, the bulk of camera configuration is performed using a dictionary of kwargs, where the key names and values mirror those provided by the FlyCapture2 SDK interface. Which parameters can/need to be set depend on the communication interface. Discovery of what parameters are available can be done in three ways:
25+
26+
1. Careful reading of the FlyCapture2 SDK docs.
27+
2. Mirroring the FlyCap Viewer parameter names and values.
28+
3. Connecting to the camera with a minimal configuration, viewing the current parameters dictionary, and copying the relevant values to the connection table (preferred).
29+
30+
Below is a generic configuration.
31+
32+
.. code-block:: python
33+
34+
from labscript import *
35+
36+
from labscript_devices.FlyCapture2Camera.labscript_devices import FlyCapture2Camera
37+
38+
FlyCapture2Camera('gigeCamera',parent_device=parent,connection=conn,
39+
serial_number=1234567, # set to the camera serial number
40+
minimum_recovery_time=36e-6, # the minimum exposure time depends on the camera model & configuration
41+
camera_attributs={},
42+
manual_camera_attributes={})
43+
44+
start()
45+
46+
gigeCamera.expose(t=0.5,'exposure1')
47+
48+
49+
stop(1)
50+
51+
52+
Detailed Documentation
53+
~~~~~~~~~~~~~~~~~~~~~~
54+
55+
.. automodule:: labscript_devices.FlyCapture2Camera
56+
:members:
57+
:undoc-members:
58+
:show-inheritance:
59+
:private-members:
60+
61+
.. automodule:: labscript_devices.FlyCapture2Camera.labscript_devices
62+
:members:
63+
:undoc-members:
64+
:show-inheritance:
65+
:private-members:
66+
67+
.. automodule:: labscript_devices.FlyCapture2Camera.blacs_tabs
68+
:members:
69+
:undoc-members:
70+
:show-inheritance:
71+
:private-members:
72+
73+
.. automodule:: labscript_devices.FlyCapture2Camera.blacs_workers
74+
:members:
75+
:undoc-members:
76+
:show-inheritance:
77+
:private-members:
Lines changed: 43 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,44 @@
11
Function Runner
2-
===============
2+
===============
3+
4+
A labscript device to run custom functions before, after, or during (not yet
5+
implemented) the experiment in software time.
6+
7+
.. autosummary::
8+
labscript_devices.FunctionRunner.labscript_devices
9+
labscript_devices.FunctionRunner.blacs_tabs
10+
labscript_devices.FunctionRunner.blacs_workers
11+
labscript_devices.FunctionRunner.utils
12+
13+
Detailed Documentation
14+
~~~~~~~~~~~~~~~~~~~~~~
15+
16+
.. automodule:: labscript_devices.FunctionRunner
17+
:members:
18+
:undoc-members:
19+
:show-inheritance:
20+
:private-members:
21+
22+
.. automodule:: labscript_devices.FunctionRunner.labscript_devices
23+
:members:
24+
:undoc-members:
25+
:show-inheritance:
26+
:private-members:
27+
28+
.. automodule:: labscript_devices.FunctionRunner.blacs_tabs
29+
:members:
30+
:undoc-members:
31+
:show-inheritance:
32+
:private-members:
33+
34+
.. automodule:: labscript_devices.FunctionRunner.blacs_workers
35+
:members:
36+
:undoc-members:
37+
:show-inheritance:
38+
:private-members:
39+
40+
.. automodule:: labscript_devices.FunctionRunner.utils
41+
:members:
42+
:undoc-members:
43+
:show-inheritance:
44+
:private-members:
Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,17 @@
11
Light Crafter DMD
2-
=================
2+
=================
3+
4+
This device allows for control of Light Crafter development module boards.
5+
It is currently hard-coded to work with a DLPC300 with a fixed DLP 0.3 WVGA
6+
resolution. Extenstion to other models involves subclassing and altering
7+
relevant class attributes.
8+
9+
Detailed Documentation
10+
~~~~~~~~~~~~~~~~~~~~~~
11+
12+
.. automodule:: labscript_devices.LightCrafterDMD
13+
:members:
14+
:undoc-members:
15+
:show-inheritance:
16+
:member-order: bysource
17+
:private-members:
Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,15 @@
11
Novatech DDS 9m
2-
===============
2+
===============
3+
4+
Labscript device for control of the Novatech DDS9m synthesizer.
5+
With minor modifications, it can also control the Novatech 409B DDS.
6+
7+
Detailed Documentation
8+
~~~~~~~~~~~~~~~~~~~~~~
9+
10+
.. automodule:: labscript_devices.NovaTechDDS9M
11+
:members:
12+
:undoc-members:
13+
:show-inheritance:
14+
:member-order: bysource
15+
:private-members:
Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,15 @@
1-
Phase Matrix Quick Synthesizer
2-
==============================
1+
QuickSyn FSW-0010 Synthesizer
2+
=============================
3+
4+
A labscript device that controlls the NI Quicksyn FSW-0010 Microwave Synthesizer
5+
(formerly PhaseMatrix).
6+
7+
Detailed Documentation
8+
~~~~~~~~~~~~~~~~~~~~~~
9+
10+
.. automodule:: labscript_devices.PhaseMatrixQuickSyn
11+
:members:
12+
:undoc-members:
13+
:show-inheritance:
14+
:member-order: bysource
15+
:private-members:

0 commit comments

Comments
 (0)