-
Notifications
You must be signed in to change notification settings - Fork 25
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
Feature request: iterator #11
Comments
There's now an
The code is the same for bigWig intervals, except If that sort of interface works for you then I'll start writing the documentation. |
This looks great! I'm afraid I won't be able to test it directly in my own code until next week, but the API seems sensible enough. When you say base-level values, do you mean splitting the intervals into 1bp intervals? I personally wouldn't use it. |
Yes, that's exactly what I mean by base-level values. That's popular in the python wrapper (pyBigWig), but if no one currently has a use for it in C then I'll hold off on the implementation. Anyway, I'll try to get some documentation finished. This seems to work in my tests, so let me know when you have a chance to play around with it. If it works for your needs I'll merge it in and make a new release. |
Thanks a lot. At best, I can play with it on Friday in a week. I'll let you know how it goes! |
OK curiosity killed the cat, I just tested it on a separate branch, all unit tests succeeded: Thanks a lot! |
Great! I'll make a new release then (probably tomorrow). |
Hello,
I have developed a library to compute whole genome statistics from multiple BigWig files WiggleTools. To do this, it needs to be efficient with memory, and therefore uses iterators intensively.
WiggleTools uses the Kent source tree, but this entails quite a few dependencies that I would like to get rid of. I would be very keen to switch to libBigWig.
Would it be possible to create iterator functions within libBigWig?
Typically, an iterator could be created either as a whole genome iterator, or over a region of interest.
Instead of returning all results in a single bwOverlappingIntervals_t struct, it could return a sequence of bwOverlappingIntervals_t structs, each object covering a number of consecutive compressed blocks on disk. FWIW, my code currently looks like (using Kent functions):
Thanks in advance for considering my request,
Daniel
The text was updated successfully, but these errors were encountered: