From 2e2e877d75b60ac721a9641cb21806dba4dd5f44 Mon Sep 17 00:00:00 2001 From: Richard Bowman Date: Fri, 29 Nov 2024 12:19:05 +0000 Subject: [PATCH] JPEGBlob class definition Static type checking is easier if JPEGBlob is declared as a class, rather than being created with a function. --- .../things/camera/__init__.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/openflexure_microscope_server/things/camera/__init__.py b/src/openflexure_microscope_server/things/camera/__init__.py index 4af5cceb..156af6ca 100644 --- a/src/openflexure_microscope_server/things/camera/__init__.py +++ b/src/openflexure_microscope_server/things/camera/__init__.py @@ -7,7 +7,7 @@ See repository root for licensing information. """ from __future__ import annotations import logging -from typing import Literal, Protocol, TypeAlias, runtime_checkable +from typing import Literal, Protocol, runtime_checkable from labthings_fastapi.thing import Thing from labthings_fastapi.decorators import thing_action @@ -16,11 +16,12 @@ from labthings_fastapi.dependencies.blocking_portal import BlockingPortal from labthings_fastapi.dependencies.thing import direct_thing_client_dependency from labthings_fastapi.dependencies.raw_thing import raw_thing_dependency from labthings_fastapi.outputs.mjpeg_stream import MJPEGStreamDescriptor -from labthings_fastapi.outputs.blob import blob_type +from labthings_fastapi.outputs.blob import Blob from labthings_fastapi.types.numpy import NDArray -JPEGBlob: TypeAlias = blob_type("image/jpeg") +class JPEGBlob(Blob): + media_type: str = "image/jpeg" @runtime_checkable class CameraProtocol(Protocol):