– The TU Dortmund Compression Framework
tdc::lcpcomp::ScanDec Class Reference

Runs a number of scans of the factors. More...

#include <ScanDec.hpp>

Inheritance diagram for tdc::lcpcomp::ScanDec:

Public Member Functions

void decode_lazy ()
void decode_eagerly ()
 ScanDec (ScanDec &&other)
 ScanDec (Env &&env, len_t size)
void decode_literal (uliteral_t c)
void decode_factor (const len_t source_position, const len_t factor_length)
- Public Member Functions inherited from tdc::Algorithm
virtual ~Algorithm ()=default
 Algorithm (Algorithm const &)=default
 Algorithm (Algorithm &&)=default
Algorithmoperator= (Algorithm const &)=default
Algorithmoperator= (Algorithm &&)=default
 Algorithm (Env &&env)
 Instantiates an algorithm in the specified environment. More...
Envenv ()
 Provides access to the environment that the algorithm works in. More...
const Envenv () const

Static Public Member Functions

static Meta meta ()

Detailed Description

Runs a number of scans of the factors.

Finishes the process of decoding started by It allocates an array for all not-yet decoded positions such that it can store in that positions all positions still waiting of that position to get decompressed.

In each scan, it tries to decode all factors. Factors that got fully decoded are dropped.

The not-yet decoded positions are marked in a bit vector with rank-support such that we can map from text position to positions in the array.

Definition at line 146 of file ScanDec.hpp.

Constructor & Destructor Documentation

◆ ScanDec() [1/2]

tdc::lcpcomp::ScanDec::ScanDec ( ScanDec &&  other)

Definition at line 203 of file ScanDec.hpp.

◆ ScanDec() [2/2]

tdc::lcpcomp::ScanDec::ScanDec ( Env &&  env,
len_t  size 

Definition at line 210 of file ScanDec.hpp.

Member Function Documentation

◆ decode_eagerly()

void tdc::lcpcomp::ScanDec::decode_eagerly ( )

Definition at line 163 of file ScanDec.hpp.

◆ decode_factor()

void tdc::lcpcomp::ScanDec::decode_factor ( const len_t  source_position,
const len_t  factor_length 

Definition at line 222 of file ScanDec.hpp.

◆ decode_lazy()

void tdc::lcpcomp::ScanDec::decode_lazy ( )

Definition at line 154 of file ScanDec.hpp.

◆ decode_literal()

void tdc::lcpcomp::ScanDec::decode_literal ( uliteral_t  c)

Definition at line 217 of file ScanDec.hpp.

◆ meta()

static Meta tdc::lcpcomp::ScanDec::meta ( )

Definition at line 148 of file ScanDec.hpp.

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