/usr/lib/python2.7/dist-packages/fabio/pilatusimage.py is in python-fabio 0.3.0+dfsg-1build1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 | # coding: utf-8
#
# Project: X-ray image reader
# https://github.com/kif/fabio
#
#
# Copyright (C) European Synchrotron Radiation Facility, Grenoble, France
#
# Principal author: Jérôme Kieffer (Jerome.Kieffer@ESRF.eu)
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
"""
Authors:
........
* Henning O. Sorensen & Erik Knudsen:
Center for Fundamental Research: Metal Structures in Four Dimensions;
Risoe National Laboratory;
Frederiksborgvej 399;
DK-4000 Roskilde;
email:erik.knudsen@risoe.dk
* Jon Wright:
European Synchrotron Radiation Facility;
Grenoble (France)
"""
# Get ready for python3:
from __future__ import with_statement, print_function
# Base this on the tifimage (as Pilatus is tiff with a
# tiff header
from .tifimage import TifImage
class PilatusImage(TifImage):
""" Read in Pilatus format, also
pilatus images, including header info """
def _readheader(self, infile):
"""
Parser based approach
Gets all entries
"""
self.header = self.check_header()
# infile = open(infile)
hstr = infile.read(4096)
# well not very pretty - but seems to find start of
# header information
if (hstr.find(b'# ') == -1):
return self.header
hstr = hstr[hstr.index(b'# '):]
hstr = hstr[:hstr.index(b'\x00')]
hstr = hstr.split(b'#')
go_on = True
while go_on:
try:
hstr.remove(b'')
except Exception as e:
go_on = False
for line in hstr:
line = line[1:line.index(b'\r\n')]
if line.find(b':') > -1:
dump = line.split(b':')
self.header[dump[0]] = dump[1]
elif line.find(b'=') > -1:
dump = line.split(b'=')
self.header[dump[0]] = dump[1]
elif line.find(b' ') > -1:
i = line.find(b' ')
self.header[line[:i]] = line[i:]
elif line.find(b',') > -1:
dump = line.split(b',')
self.header[dump[0]] = dump[1]
return self.header
def _read(self, fname):
"""
inherited from tifimage
... a Pilatus image *is a* tif image
just with a header
"""
return tifimage.read(self, fname)
pilatusimage = PilatusImage
|