2
# The Python Imaging Library
7
# Copyright (c) 1996-2003 by Fredrik Lundh
9
# See the README file for information on usage and redistribution.
12
import Image, ImageFile
17
# Install application-specific GRIB image handler.
19
# @param handler Handler object.
21
def register_handler(handler):
25
# --------------------------------------------------------------------
29
return prefix[0:4] == "GRIB" and prefix[7] == chr(1)
31
class GribStubImageFile(ImageFile.StubImageFile):
34
format_description = "GRIB"
38
offset = self.fp.tell()
40
if not _accept(self.fp.read(8)):
41
raise SyntaxError("Not a GRIB file")
56
def _save(im, fp, filename):
57
if _handler is None or not hasattr("_handler", "save"):
58
raise IOError("GRIB save handler not installed")
59
_handler.save(im, fp, filename)
62
# --------------------------------------------------------------------
65
Image.register_open(GribStubImageFile.format, GribStubImageFile, _accept)
66
Image.register_save(GribStubImageFile.format, _save)
68
Image.register_extension(GribStubImageFile.format, ".grib")