diff --git a/docs/source/extensions/example_extension/03_marshaling_data.py b/docs/source/extensions/example_extension/03_marshaling_data.py index cca86fd6..6769874f 100644 --- a/docs/source/extensions/example_extension/03_marshaling_data.py +++ b/docs/source/extensions/example_extension/03_marshaling_data.py @@ -49,7 +49,11 @@ class ExampleRenameView(View): # Format our returned object using MicroscopeIdentifySchema schema = MicroscopeIdentifySchema() # Expect a request parameter called "name", which is a string. Pass to argument "args". - args = {"name": fields.String(required=True, metadata={"example": "My Example Microscope"})} + args = { + "name": fields.String( + required=True, metadata={"example": "My Example Microscope"} + ) + } def post(self, args): # Look for our "name" parameter in the request arguments diff --git a/docs/source/extensions/example_extension/04_properties.py b/docs/source/extensions/example_extension/04_properties.py index 7d7a4cc9..1250b084 100644 --- a/docs/source/extensions/example_extension/04_properties.py +++ b/docs/source/extensions/example_extension/04_properties.py @@ -53,7 +53,11 @@ class ExampleIdentifyView(PropertyView): # We can use a single schema as the input and output will be formatted identically # Eg. We always expect a "name" string argument, and always return a "name" string attribute class ExampleRenameView(PropertyView): - schema = {"name": fields.String(required=True, metadata={"example": "My Example Microscope"})} + schema = { + "name": fields.String( + required=True, metadata={"example": "My Example Microscope"} + ) + } def get(self): """ diff --git a/docs/source/extensions/example_extension/05_actions.py b/docs/source/extensions/example_extension/05_actions.py index ca5d6980..e1551efd 100644 --- a/docs/source/extensions/example_extension/05_actions.py +++ b/docs/source/extensions/example_extension/05_actions.py @@ -56,7 +56,11 @@ class ExampleIdentifyView(PropertyView): # We can use a single schema as the input and output will be formatted identically # Eg. We always expect a "name" string argument, and always return a "name" string attribute class ExampleRenameView(PropertyView): - schema = {"name": fields.String(required=True, metadata={"example": "My Example Microscope"})} + schema = { + "name": fields.String( + required=True, metadata={"example": "My Example Microscope"} + ) + } def get(self): """ diff --git a/docs/source/extensions/example_extension/06_tasks_locks.py b/docs/source/extensions/example_extension/06_tasks_locks.py index 6c23e8ab..25fb803f 100644 --- a/docs/source/extensions/example_extension/06_tasks_locks.py +++ b/docs/source/extensions/example_extension/06_tasks_locks.py @@ -69,7 +69,8 @@ class TimelapseAPIView(ActionView): required=True, metadata={"example": 5, "description": "Number of images"} ), "t_between": fields.Number( - load_default=1, metadata={"example": 1, "description": "Time (seconds) between images"} + load_default=1, + metadata={"example": 1, "description": "Time (seconds) between images"}, ), } diff --git a/docs/source/extensions/example_extension/07_ev_gui.py b/docs/source/extensions/example_extension/07_ev_gui.py index 12b2ce09..3f5f3196 100644 --- a/docs/source/extensions/example_extension/07_ev_gui.py +++ b/docs/source/extensions/example_extension/07_ev_gui.py @@ -102,7 +102,8 @@ class TimelapseAPIView(ActionView): required=True, metadata={"example": 5, "description": "Number of images"} ), "t_between": fields.Number( - load_default=1, metadata={"example": 1, "description": "Time (seconds) between images"} + load_default=1, + metadata={"example": 1, "description": "Time (seconds) between images"}, ), } diff --git a/openflexure_microscope/api/default_extensions/autofocus.py b/openflexure_microscope/api/default_extensions/autofocus.py index f7eeb394..045a7878 100644 --- a/openflexure_microscope/api/default_extensions/autofocus.py +++ b/openflexure_microscope/api/default_extensions/autofocus.py @@ -352,7 +352,7 @@ class AutofocusExtension(BaseExtension): metadata={ "description": "An ascending list of relative z positions", "example": [int(x) for x in np.linspace(-300, 300, 7)], - } + }, ) } ) @@ -412,7 +412,9 @@ class AutofocusExtension(BaseExtension): @extension_action( args={ - "dz": fields.Int(required=True, metadata={"description": "The relative Z move to make"}) + "dz": fields.Int( + required=True, metadata={"description": "The relative Z move to make"} + ) } ) def move_and_measure( @@ -579,7 +581,9 @@ class AutofocusExtension(BaseExtension): ), "initial_move_up": fields.Bool( load_default=True, - metadata={"description": "Set to Flase to disable the initial move upwards"}, + metadata={ + "description": "Set to Flase to disable the initial move upwards" + }, ), "backlash": fields.Int( load_default=25, diff --git a/openflexure_microscope/api/default_extensions/camera_stage_mapping.py b/openflexure_microscope/api/default_extensions/camera_stage_mapping.py index 53b3789d..532b431f 100644 --- a/openflexure_microscope/api/default_extensions/camera_stage_mapping.py +++ b/openflexure_microscope/api/default_extensions/camera_stage_mapping.py @@ -279,7 +279,11 @@ class CSMExtension(BaseExtension): class Calibrate1DView(ActionView): - args = {"direction": fields.List(fields.Float(), required=True, metadata={"example": [1, 0, 0]})} + args = { + "direction": fields.List( + fields.Float(), required=True, metadata={"example": [1, 0, 0]} + ) + } def post(self, args): """Calibrate one axis of the microscope stage against the camera.""" @@ -298,10 +302,18 @@ class CalibrateXYView(ActionView): class MoveInImageCoordinatesView(ActionView): args = { "x": fields.Float( - metadata={"description": "The number of pixels to move in X", "example": 100,}, required=True, + metadata={ + "description": "The number of pixels to move in X", + "example": 100, + }, + required=True, ), "y": fields.Float( - metadata={"description": "The number of pixels to move in Y", "example": 100,}, required=True, + metadata={ + "description": "The number of pixels to move in Y", + "example": 100, + }, + required=True, ), } @@ -316,10 +328,18 @@ class MoveInImageCoordinatesView(ActionView): class ClosedLoopMoveInImageCoordinatesView(ActionView): args = { "x": fields.Float( - metadata={"description": "The number of pixels to move in X", "example": 100,}, required=True, + metadata={ + "description": "The number of pixels to move in X", + "example": 100, + }, + required=True, ), "y": fields.Float( - metadata={"description": "The number of pixels to move in Y", "example": 100,}, required=True, + metadata={ + "description": "The number of pixels to move in Y", + "example": 100, + }, + required=True, ), } @@ -336,13 +356,24 @@ class ClosedLoopMoveInImageCoordinatesView(ActionView): class TestClosedLoopSpiralScanView(ActionView): args = { "x_step": fields.Float( - metadata={"description": "The number of pixels to move in X", "example": 100,}, required=True, + metadata={ + "description": "The number of pixels to move in X", + "example": 100, + }, + required=True, ), "y_step": fields.Float( - metadata={"description": "The number of pixels to move in Y", "example": 100,}, required=True, + metadata={ + "description": "The number of pixels to move in Y", + "example": 100, + }, + required=True, ), "N": fields.Int( - metadata={"description": "The number of rings in the spiral scan", "example": 100,}, + metadata={ + "description": "The number of rings in the spiral scan", + "example": 100, + }, required=True, ), } diff --git a/openflexure_microscope/api/default_extensions/picamera_autocalibrate/extension.py b/openflexure_microscope/api/default_extensions/picamera_autocalibrate/extension.py index 642c5a60..0049a83d 100644 --- a/openflexure_microscope/api/default_extensions/picamera_autocalibrate/extension.py +++ b/openflexure_microscope/api/default_extensions/picamera_autocalibrate/extension.py @@ -195,10 +195,11 @@ class AutoExposureFromRawView(ActionView): }, ), "max_iterations": fields.Int( - load_default=20,metadata={ + load_default=20, + metadata={ "description": ( "The number of adjustments to the camera's settings to make before giving up." - ), + ) }, ), "tolerance": fields.Float( @@ -220,9 +221,7 @@ class AutoExposureFromRawView(ActionView): class AutoWhiteBalanceFromRawView(ActionView): - args = { - "percentile": percentile_field, - } + args = {"percentile": percentile_field} def post(self, args): with find_picamera() as (picamera, _, _): @@ -235,7 +234,7 @@ class GetRawChannelPercentilesView(ActionView): metadata={ "description": "A float between 0 and 100 setting the centile to calculate", "example": 99.9, - }, + } ) } schema = fields.List(fields.Integer) diff --git a/openflexure_microscope/api/default_extensions/scan.py b/openflexure_microscope/api/default_extensions/scan.py index 794230ac..d3f83a50 100644 --- a/openflexure_microscope/api/default_extensions/scan.py +++ b/openflexure_microscope/api/default_extensions/scan.py @@ -578,7 +578,9 @@ class ScanExtension(BaseExtension): class TileScanArgs(FullCaptureArgs): - namemode = fields.String(load_default="coordinates", metadata={"example": "coordinates"}) + namemode = fields.String( + load_default="coordinates", metadata={"example": "coordinates"} + ) grid = fields.List( fields.Integer(validate=marshmallow.validate.Range(min=1)), load_default=[3, 3, 3], @@ -588,7 +590,9 @@ class TileScanArgs(FullCaptureArgs): autofocus_dz = fields.Integer(load_default=50) fast_autofocus = fields.Boolean(load_default=False) stride_size = fields.List( - fields.Integer, load_default=[2000, 1500, 100], metadata={"example":[2000, 1500, 100]} + fields.Integer, + load_default=[2000, 1500, 100], + metadata={"example": [2000, 1500, 100]}, ) detect_empty_fields_and_skip_autofocus = fields.Boolean(load_default=False) diff --git a/openflexure_microscope/api/dev_extensions/tools.py b/openflexure_microscope/api/dev_extensions/tools.py index a19cdc71..954b67e1 100644 --- a/openflexure_microscope/api/dev_extensions/tools.py +++ b/openflexure_microscope/api/dev_extensions/tools.py @@ -24,7 +24,11 @@ class RaiseException(ActionView): class SleepFor(ActionView): schema = {"TimeAsleep": fields.Float()} - args = {"time": fields.Float(metadata={"description": "Time to sleep, in seconds", "example": 0.5})} + args = { + "time": fields.Float( + metadata={"description": "Time to sleep, in seconds", "example": 0.5} + ) + } def post(self, args): sleep_time: int = args.get("time", 0) diff --git a/openflexure_microscope/api/v2/views/actions/camera.py b/openflexure_microscope/api/v2/views/actions/camera.py index c73cbac1..c649d601 100644 --- a/openflexure_microscope/api/v2/views/actions/camera.py +++ b/openflexure_microscope/api/v2/views/actions/camera.py @@ -10,22 +10,27 @@ from openflexure_microscope.api.v2.views.captures import CaptureSchema class CaptureResizeSchema(Schema): - width = fields.Integer(metadata={"example":640}, required=True) + width = fields.Integer(metadata={"example": 640}, required=True) height = fields.Integer(metadata={"example": 480}, required=True) class BasicCaptureArgs(Schema): use_video_port = fields.Boolean(load_default=False) bayer = fields.Boolean( - load_default=False, metadata={"description": "Include raw bayer data in capture"} + load_default=False, + metadata={"description": "Include raw bayer data in capture"}, ) resize = fields.Nested(CaptureResizeSchema(), required=False) class FullCaptureArgs(BasicCaptureArgs): filename = fields.String(metadata={"example": "MyFileName"}) - temporary = fields.Boolean(load_default=False, metadata={"description": "Delete capture on shutdown"}) - annotations = fields.Dict(load_default={}, metadata={"example": {"Client": "SwaggerUI"}}) + temporary = fields.Boolean( + load_default=False, metadata={"description": "Delete capture on shutdown"} + ) + annotations = fields.Dict( + load_default={}, metadata={"example": {"Client": "SwaggerUI"}} + ) tags = fields.List(fields.String, load_default=[], metadata={"example": ["docs"]}) @@ -113,7 +118,11 @@ class GPUPreviewStartAPI(ActionView): in the format ``[x, y, width, height]``. """ - args = {"window": fields.List(fields.Integer, load_default=[], metadata={"example": [0, 0, 640, 480]})} + args = { + "window": fields.List( + fields.Integer, load_default=[], metadata={"example": [0, 0, 640, 480]} + ) + } def post(self, args): """ diff --git a/openflexure_microscope/api/v2/views/actions/stage.py b/openflexure_microscope/api/v2/views/actions/stage.py index d5e79ba1..d13774ab 100644 --- a/openflexure_microscope/api/v2/views/actions/stage.py +++ b/openflexure_microscope/api/v2/views/actions/stage.py @@ -7,7 +7,8 @@ from labthings.views import ActionView class MoveStageAPI(ActionView): args = { "absolute": fields.Boolean( - load_default=False, metadata={"description": "Move to an absolute position", "example": False} + load_default=False, + metadata={"description": "Move to an absolute position", "example": False}, ), "x": fields.Int(load_default=None, metadata={"example": 100}, allow_none=False), "y": fields.Int(load_default=None, metadata={"example": 100}, allow_none=False), diff --git a/openflexure_microscope/api/v2/views/stage.py b/openflexure_microscope/api/v2/views/stage.py index 66bd8f4f..bcfec3a9 100644 --- a/openflexure_microscope/api/v2/views/stage.py +++ b/openflexure_microscope/api/v2/views/stage.py @@ -9,7 +9,10 @@ class StageTypeProperty(PropertyView): schema = fields.String( load_default=None, validate=validate.OneOf(["SangaStage", "SangaDeltaStage"]), - metadata={"description": "The translation stage geometry", "example": "SangaStage",}, + metadata={ + "description": "The translation stage geometry", + "example": "SangaStage", + }, allow_none=False, )