There was a previous discussion about this here https://github.com/samtools/htsjdk/issues/537 . But I think since this thread the htsjdk-next-beta has been forsaken (?) and a GFF3Codec has been included in htsjdk.
Now a GTF codec would be highly similar (and simplier) to the existing GFF3 codec. What would be an acceptable strategy to implement the GTF? My ideas:
1) copy all the classes Gff3BaseData.java Gff3Constants.java etc... to GtfBaseData.java GtfConstants etc... ?
2) Keep only Gff3Feature.java but add a new parameter enum GTType {GFF3,GTF} to the constructors . new public Gff3Codec(final DecodeDepth decodeDepth, final Predicate<String> filterOutAttribute,GTType gttype ) {
3) Add an abstract base class for all the existing GFF3 classes. For example: abstract class AbstractGtXXCodec { and then public class Gff3Codec extends AbstractGtXXCodec and public class GtfCodec extends AbstractGtXXCodec
More a question than an issue.
I would like htsjdk to support the GTF format.
There was a previous discussion about this here https://github.com/samtools/htsjdk/issues/537 . But I think since this thread the
htsjdk-next-beta
has been forsaken (?) and a GFF3Codec has been included in htsjdk.Now a GTF codec would be highly similar (and simplier) to the existing GFF3 codec. What would be an acceptable strategy to implement the GTF? My ideas:
1) copy all the classes
Gff3BaseData.java Gff3Constants.java etc...
toGtfBaseData.java GtfConstants etc...
?2) Keep only Gff3Feature.java but add a new parameter
enum GTType {GFF3,GTF}
to the constructors .new public Gff3Codec(final DecodeDepth decodeDepth, final Predicate<String> filterOutAttribute,GTType gttype ) {
3) Add an abstract base class for all the existing GFF3 classes. For example:
abstract class AbstractGtXXCodec {
and thenpublic class Gff3Codec extends AbstractGtXXCodec
andpublic class GtfCodec extends AbstractGtXXCodec
4) another idea ?
P.