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

Refactor 'Read' Class #39

Open
emcd opened this issue Apr 5, 2013 · 2 comments
Open

Refactor 'Read' Class #39

emcd opened this issue Apr 5, 2013 · 2 comments

Comments

@emcd
Copy link
Contributor

emcd commented Apr 5, 2013

While working on improvements to the Python wrapper, it occurred to me that we might want an 'IRead' class with inheritors, such as 'FASTARead' and 'FASTQRead'. This mimics the parser hierarchy and I think it may be appropriate for several reasons:
() The current interface is a fat interface - quality scores are unused in FASTA processing.
(
) We would be carrying some information on original format in the type of the read. (Currently, this information is not really tracked anywhere during processing.)

An even more radical idea, which I am not necessarily advocating at this point, would be to supply 'read' and 'write' methods for the read classes. This would relegate the reader/parser classes to more of a facilitator/manager role around the shared resources (such as input streams), and would do likewise for any writer/formatter classes. Just something to think about.... have not seriously considered either a particular design or any performance trade-offs associated with such a design yet.

@ctb
Copy link
Member

ctb commented Apr 6, 2013

I like your more radical idea. +1

Can't imagine there would be substantive performance trade-offs...

@ctb
Copy link
Member

ctb commented Aug 21, 2013

See #92 / threaded output writing.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants