Public Types | Public Member Functions | List of all members
util::SeqEncoder< INT_SIZE > Class Template Reference
+ Inheritance diagram for util::SeqEncoder< INT_SIZE >:
+ Collaboration diagram for util::SeqEncoder< INT_SIZE >:

Public Types

using UT = std::conditional_t< INT_SIZE==4, uint32_t, uint64_t >
 

Public Member Functions

void Add (const UT *src, unsigned cnt)
 
bool GetDictSerialized (std::string *dest)
 
- Public Member Functions inherited from util::SeqEncoderBase
const std::vector< strings::ByteRange > & compressed_blocks () const
 
void ClearCompressedData ()
 
void DisableSeqDictionary ()
 
uint32 Cost () const
 
void Flush ()
 

Additional Inherited Members

- Protected Types inherited from util::SeqEncoderBase
enum  State { PRE_DICT, LIT_DICT, NO_LIT_DICT }
 dictionary. In any case lit_data_ and len_ contain binary blobs and len codes to decode them.
 
using SymbId = LiteralDictBase::SymbId
 
- Protected Member Functions inherited from util::SeqEncoderBase
void AnalyzePreDict ()
 
bool LearnSeqDict (strings::ByteRange entry)
 
void CompressFlitSequences (bool final)
 
void CompressRawLit (bool final)
 
void AddCompressedBuf (const BlockHeader &bh)
 
void AnalyzeSequenceDict ()
 
bool PrepareForSymbAvailability (uint32_t cnt)
 
void BacktrackToRaw ()
 
void AddEncodedSymbols (SymbId *src, uint32_t cnt)
 
- Protected Attributes inherited from util::SeqEncoderBase
base::PODArray< uint8 > lit_data_
 
base::PODArray< uint8 > prev_block_
 
base::PODArray< uint32 > len_code_
 
std::vector< std::unique_ptr< uint8_t[]> > compressed_bufs_
 
std::vector< strings::ByteRange > compressed_blocks_
 
bool disable_seq_dict_ = false
 
uint32_t literal_size_
 
enum util::SeqEncoderBase::State state_ = PRE_DICT
 
google::dense_hash_map< strings::ByteRange, EntryValseq_map_
 
base::PODArray< uint32_t > duplicate_seq_
 
SequenceArray dict_seq_
 
google::dense_hash_map< strings::ByteRange, uint32 > dict_seq_map_
 
base::PODArray< uint8 > compress_data_
 
base::PODArray< uint8 > tmp_space_
 
base::PODArray< SymbId > tmp_symb_
 
std::unique_ptr< ZstdCntxzstd_cntx_
 
std::unique_ptr< uint8_t[]> zstd_dict_
 
size_t zstd_dict_size_ = 0
 
size_t added_lit_cnt_ = 0
 
size_t dict_ref_bytes_ = 0
 
double dict_nominal_ratio_ = 0
 

Detailed Description

template<size_t INT_SIZE>
class util::SeqEncoder< INT_SIZE >

Definition at line 225 of file set_encoder.h.


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