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

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# 

11 

12from . import FitsImagePlugin, Image, ImageFile 

13from ._deprecate import deprecate 

14 

15_handler = None 

16 

17 

18def register_handler(handler): 

19 """ 

20 Install application-specific FITS image handler. 

21 

22 :param handler: Handler object. 

23 """ 

24 global _handler 

25 _handler = handler 

26 

27 deprecate( 

28 "FitsStubImagePlugin", 

29 10, 

30 action="FITS images can now be read without " 

31 "a handler through FitsImagePlugin instead", 

32 ) 

33 

34 # Override FitsImagePlugin with this handler 

35 # for backwards compatibility 

36 try: 

37 Image.ID.remove(FITSStubImageFile.format) 

38 except ValueError: 

39 pass 

40 

41 Image.register_open( 

42 FITSStubImageFile.format, FITSStubImageFile, FitsImagePlugin._accept 

43 ) 

44 

45 

46class FITSStubImageFile(ImageFile.StubImageFile): 

47 

48 format = FitsImagePlugin.FitsImageFile.format 

49 format_description = FitsImagePlugin.FitsImageFile.format_description 

50 

51 def _open(self): 

52 offset = self.fp.tell() 

53 

54 im = FitsImagePlugin.FitsImageFile(self.fp) 

55 self._size = im.size 

56 self.mode = im.mode 

57 self.tile = [] 

58 

59 self.fp.seek(offset) 

60 

61 loader = self._load() 

62 if loader: 

63 loader.open(self) 

64 

65 def _load(self): 

66 return _handler 

67 

68 

69def _save(im, fp, filename): 

70 raise OSError("FITS save handler not installed") 

71 

72 

73# -------------------------------------------------------------------- 

74# Registry 

75 

76Image.register_save(FITSStubImageFile.format, _save)