Coverage for qubalab/images/wrapped_image_server.py: 100%
13 statements
« prev ^ index » next coverage.py v7.6.10, created at 2025-01-31 11:24 +0000
« prev ^ index » next coverage.py v7.6.10, created at 2025-01-31 11:24 +0000
1from .image_server import ImageServer
2from .metadata.image_metadata import ImageMetadata
5class WrappedImageServer(ImageServer):
6 """
7 Abstract class for an ImageServer that wraps another ImageServer,
8 e.g. to transform the image in some way.
10 Closing this server will close the wrapped server.
11 The metadata of this server is equivalent to the metadata of the wrapped server.
12 """
14 def __init__(self, base_server: ImageServer, **kwargs):
15 """
16 :param base_server: the server to wrap
17 :param resize_method: the resampling method to use when resizing the image for downsampling. Bicubic by default
18 """
19 super().__init__(**kwargs)
20 self._base_server = base_server
22 @property
23 def base_server(self) -> ImageServer:
24 """
25 Get the wrapped server.
26 """
27 return self._base_server
29 def close(self):
30 self._base_server.close()
32 def _build_metadata(self) -> ImageMetadata:
33 return self._base_server.metadata