Template Function noLZSS::factorize_stream_multiple_dna_w_rc

Function Documentation

template<class Sink>
size_t noLZSS::factorize_stream_multiple_dna_w_rc(std::string_view text, Sink &&sink)

Factorizes a DNA text string with reverse complement awareness for multiple sequences using the noLZSS algorithm.

Advanced factorization function for DNA text with reverse complement awareness for multiple sequences.

This is a template function that provides the core factorization functionality for in-memory DNA text with multiple sequences, considering both forward and reverse complement matches. It builds a compressed suffix tree and applies the noLZSS algorithm to find all factors.

This template function provides low-level access to the factorization process for multiple DNA sequences, allowing custom handling of factors through a sink callable.

See also

factorize_multiple_dna_w_rc() for the non-template version that returns a vector

Note

This function copies the input string for suffix tree construction

Note

For large inputs, consider using factorize_file_stream_multiple_dna_w_rc() instead

Template Parameters:
  • Sink – Callable type that accepts Factor objects

  • Sink – Callable type that accepts Factor objects

Parameters:
  • text – Input DNA text string with multiple sequences and sentinels

  • sink – Callable that receives each computed factor

  • text – Input DNA text string with multiple sequences and sentinels

  • sink – Callable that receives each computed factor

Returns:

Number of factors emitted

Returns:

Number of factors emitted