Coverage for /var/srv/projects/api.amasfac.comuna18.com/tmp/venv/lib/python3.9/site-packages/PIL/FitsStubImagePlugin.py: 39%
29 statements
« prev ^ index » next coverage.py v6.4.4, created at 2023-07-17 14:22 -0600
« prev ^ index » next coverage.py v6.4.4, created at 2023-07-17 14:22 -0600
1#
2# The Python Imaging Library
3# $Id$
4#
5# FITS stub adapter
6#
7# Copyright (c) 1998-2003 by Fredrik Lundh
8#
9# See the README file for information on usage and redistribution.
10#
12from . import FitsImagePlugin, Image, ImageFile
13from ._deprecate import deprecate
15_handler = None
18def register_handler(handler):
19 """
20 Install application-specific FITS image handler.
22 :param handler: Handler object.
23 """
24 global _handler
25 _handler = handler
27 deprecate(
28 "FitsStubImagePlugin",
29 10,
30 action="FITS images can now be read without "
31 "a handler through FitsImagePlugin instead",
32 )
34 # Override FitsImagePlugin with this handler
35 # for backwards compatibility
36 try:
37 Image.ID.remove(FITSStubImageFile.format)
38 except ValueError:
39 pass
41 Image.register_open(
42 FITSStubImageFile.format, FITSStubImageFile, FitsImagePlugin._accept
43 )
46class FITSStubImageFile(ImageFile.StubImageFile):
48 format = FitsImagePlugin.FitsImageFile.format
49 format_description = FitsImagePlugin.FitsImageFile.format_description
51 def _open(self):
52 offset = self.fp.tell()
54 im = FitsImagePlugin.FitsImageFile(self.fp)
55 self._size = im.size
56 self.mode = im.mode
57 self.tile = []
59 self.fp.seek(offset)
61 loader = self._load()
62 if loader:
63 loader.open(self)
65 def _load(self):
66 return _handler
69def _save(im, fp, filename):
70 raise OSError("FITS save handler not installed")
73# --------------------------------------------------------------------
74# Registry
76Image.register_save(FITSStubImageFile.format, _save)