Arvados-DCO-1.1-Signed-off-by: Tom Clegg <tom@tomclegg.ca>
tilelib := &tileLibrary{taglib: taglib, includeNoCalls: cmd.includeNoCalls, skipOOO: cmd.skipOOO}
if cmd.outputTiles {
+ cmd.encoder.Encode(LibraryEntry{TagSet: taglib.Tags()})
tilelib.encoder = cmd.encoder
}
go func() {
}
return nil
}
+
+func (taglib *tagLibrary) Tags() [][]byte {
+ out := make([][]byte, len(taglib.tagmap))
+ untwobit := []byte{'a', 'c', 'g', 't'}
+ for key, info := range taglib.tagmap {
+ seq := make([]byte, taglib.keylen)
+ for i := len(seq) - 1; i >= 0; i-- {
+ seq[i] = untwobit[int(key)&3]
+ key = key >> 2
+ }
+ out[int(info.id)] = seq
+ }
+ return out
+}