Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Reading edf files, without all restrictions of the "Klora" convention. #318

Merged
merged 3 commits into from
Jun 13, 2019

Conversation

boesecke
Copy link
Contributor

@boesecke boesecke commented Jun 7, 2019

Reading edf files, without assuming all restrictions of the "Klora" convention. It prepares the possibility of using a general header (see http://wikiserv.esrf.fr/bliss/index.php/ESRF_Data_Format). The following bug has been removed: A header end pattern that is split across read buffers is recognized. A test has been added (EdfBlockBoundaryCases in test_edfimage1.py). Apart from the bug-fix there no additional features have been added. All existing edf-files should be readable as before, probably with updated messages.

general header at the start of an edffile in future version. This
feature is specified in the original EXPG specification.
Currently, no additional features are included, only the internal
order of parsing headers has been adapted.
The search of the header end pattern has been improved.
All existing unittests should pass as before.
@boesecke boesecke mentioned this pull request Jun 7, 2019
#+++++++++++++++++++++++++++++
# PB38k20190607: ATTENTION, weird!:
# little_endian^=LowByteFirst, big_endian^=HighByteFirst
# Why should _data_swap_needed depend on bpp?
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi Peter,
The code is not the right place for discussing implementation details. Please use the pull-request facility for this in order to keep the code clean an tidy.

About this topic, little- & big-endian differ only if the datatype has a length longer then 1

fabio/edfimage.py Outdated Show resolved Hide resolved
fabio/edfimage.py Outdated Show resolved Hide resolved
fabio/edfimage.py Show resolved Hide resolved
- global variable ROOT removed

edfimage.py:
- get_data_rank etc. defined as static function of class EdfFrame
- function description strings updated with comment strings and latter removed
- _parseheader (parseheader) renamed to _create_header. It better describes it.
- _read_header_block returns a namedtuple
- There are some comments left in the code. Most of them should be removed
  in the final version. Concerning byteswapping, there was already an issue
  opened for updating it (Byteswap in all cases where bpp>1 ... silx-kit#310). When
  this is solved the internal comment should be removed.
@kif
Copy link
Member

kif commented Jun 13, 2019

The failure on py3.4 is indeed linked to the release of lxml which was released Jun 10, 2019

@kif
Copy link
Member

kif commented Jun 13, 2019

We are still testing python3.4 under windows. python 3.4 makes sense on debian8 but not on windows computer where people are rather likely to use python 3.6 or 3.7. I think it is time to upgrade our appveyor policy (to be consistent with silx).

@kif kif merged commit a8b958e into silx-kit:master Jun 13, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants