cuSBF
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | List of all members
cusbf::detail::SequenceKmerInput< Config > Struct Template Reference

Device-side view of an encoded sequence for k-mer / s-mer counting. More...

Collaboration diagram for cusbf::detail::SequenceKmerInput< Config >:
[legend]

Public Member Functions

constexpr __host__ __device__ uint64_t kmerCount () const
 Number of k-mer windows in sequence.
 
constexpr __host__ __device__ uint64_t smerCount () const
 Number of s-mer windows in sequence.
 

Public Attributes

device_span< const charsequence
 Encoded sequence bytes (Config::symbolWidth per symbol).
 

Detailed Description

template<typename Config>
struct cusbf::detail::SequenceKmerInput< Config >

Device-side view of an encoded sequence for k-mer / s-mer counting.

Definition at line 22 of file sequence_kmer.cuh.

Member Function Documentation

◆ kmerCount()

template<typename Config >
constexpr __host__ __device__ uint64_t cusbf::detail::SequenceKmerInput< Config >::kmerCount ( ) const
inlineconstexpr

Number of k-mer windows in sequence.

Definition at line 27 of file sequence_kmer.cuh.

27 {
29 return symbols < Config::k ? 0 : (symbols - Config::k + 1);
30 }
consteval bool separatorPositionAlwaysEncodesInvalid(char *input, uint64_t separatorPosition, uint64_t index)
Recursively tests whether placing the separator byte at any position in an input of valid bytes alway...
Definition Alphabet.cuh:37
static constexpr uint64_t symbolWidth
Input bytes per symbol.
Definition config.cuh:49
static constexpr uint16_t k
K-mer length in symbols.
Definition config.cuh:39
device_span< const char > sequence
Encoded sequence bytes (Config::symbolWidth per symbol).
Here is the call graph for this function:

◆ smerCount()

template<typename Config >
constexpr __host__ __device__ uint64_t cusbf::detail::SequenceKmerInput< Config >::smerCount ( ) const
inlineconstexpr

Number of s-mer windows in sequence.

Definition at line 33 of file sequence_kmer.cuh.

33 {
35 return symbols < Config::s ? 0 : (symbols - Config::s + 1);
36 }
static constexpr uint16_t s
S-mer width (Bloom hash seed) in symbols.
Definition config.cuh:43
Here is the call graph for this function:

Member Data Documentation

◆ sequence

Encoded sequence bytes (Config::symbolWidth per symbol).

Definition at line 24 of file sequence_kmer.cuh.


The documentation for this struct was generated from the following file: