Class FMIndex
Defined in File FMIndex.h
Class Documentation
-
class FMIndex
the FM-index of a text: its transform with the counts for the rank every b places and the places of the suffixes at the multiples of mu
Public Functions
-
explicit FMIndex(std::string_view s, std::size_t b = 64, std::size_t mu = 32)
the index of s
- Pre:
b > 0, mu > 0, s.size() < 2^32
-
inline std::size_t size(void) const
the length n of the text
-
std::size_t rank(char c, std::size_t k) const
the occurrences of c in L[ 0 , k ), the $ excluded
- Pre:
k <= n + 1
-
std::pair<std::size_t, std::size_t> range(std::string_view P) const
the range [ first , last ) of the rows of M’ prefixed by P, empty if none, by backward search
- Pre:
P not empty
-
std::size_t count(std::string_view P) const
the number of the occurrences of P
- Pre:
P not empty
-
std::vector<std::size_t> locate(std::string_view P) const
the places of the occurrences of P, in increasing order
- Pre:
P not empty
-
std::string extract(std::size_t i, std::size_t j) const
s[ i , j )
- Pre:
i <= j <= n
-
std::size_t sizeInBits(void) const
the bits of the index: L, the counts, the marks with their directory, the samples and the arrays of the alphabet
-
explicit FMIndex(std::string_view s, std::size_t b = 64, std::size_t mu = 32)