func Slide1(sequence []byte, K int, start int, end int, result chan int)
Store in channel "result" all kmers of "sequence" by sliding a window of length K from "start" to "end"-1.
func Slide2(sequence []byte, K int, start int, end int, result chan int)
Store in channel "result" all kmers of "sequence" and its reverse complement by sliding a window of length K from "start" to "end"-1.
type Counter struct {
K int
Freq []int
}
Counter is used to counter ALL kmers.
func NewCounter(K int) *Counter
func (c *Counter) Count1(sequence []byte)
counting all kmers in the main strand
func (c *Counter) Count2(sequence []byte)
counting all kmers on both strands
type KmerCounter struct {
K int
Freq map[int]int
}
KmerCounter is used to counter only kmers in Freq in reads.
func NewKmerCounter(K int, freq map[int]int) *KmerCounter
func (c *KmerCounter) Count1(sequence []byte)
count number of k-mers in the main strand
func (c *KmerCounter) Count2(sequence []byte)
count number of k-mers in on both strands