Template Function noLZSS::factorize_file_stream_multiple_dna_w_rc

Function Documentation

template<class Sink>
size_t noLZSS::factorize_file_stream_multiple_dna_w_rc(const std::string &path, Sink &&sink, size_t start_pos = 0)

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

Factorizes DNA text from a file with reverse complement awareness using streaming.

This template function reads DNA text from a file containing multiple sequences and provides low-level access to the factorization process through a sink callable.

Template version that accepts a sink for processing factors without storing in memory. Reads DNA text from a file and processes it efficiently with reverse complement handling.

See also

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

Note

Uses cache-efficient file reading for large files

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

  • Sink – Callable type that accepts Factor objects

Parameters:
  • path – Path to input file containing DNA text with multiple sequences

  • sink – Callable that receives each computed factor

  • start_pos – Starting position for factorization (default: 0)

  • filepath – Path to the input file

  • sentinel_positions – Positions where sentinels were inserted

  • sink – Callable that receives each computed factor

  • start_pos – Starting position for factor positions (default 0)

Returns:

Number of factors emitted

Returns:

Total number of factors emitted