16namespace alib {
namespace bitbuffer {
namespace ac_v1 {
21void ArrayCompressor::Statistics::Print(
AString& result,
const String& headline,
bool printTotals)
27 Ticks::Duration tWrite;
28 Ticks::Duration tRead;
31 size_t winnerSizes= 0;
34 result <<
"-------------------------------------------------------------------\n";
36 fmt.
Format( result,
A_WCHAR(
"#Algo \u2205writeTime \u2205readTime \u2205 Size \u2205 Sz-Won wins\n" ));
37 result <<
"-------------------------------------------------------------------\n";
42 fmt.
Format( sizeWhenWon,
"{:f5.1}%",
50 fmt.
Format( avgReadTime,
"{:>11,}",
57 "{:13} {:>8,} {:>11} {:f5.1}% {:>6} {:f3.0}% ({:4})\n"
58 , ToBitwiseEnumeration<Algorithm>( algoNo )
81 "Error in ArrayCompressor::ExecutionStats: "
82 "#algo wins do not sum up to #compressions: ",
86 result <<
" -----------------------------------------------------------\n";
88 fmt.
Format( result,
" Totals:{:>7,} {:>11,} {:f5.1}% {:f5.1}%\n"
static constexpr int NumberOfAlgorithms
The number of algorithms implemented.
#define ALIB_WARNINGS_RESTORE
#define ALIB_LOCK_RECURSIVE_WITH(lock)
#define ALIB_ASSERT_ERROR(cond,...)
#define ALIB_WARNINGS_ALLOW_UNSAFE_BUFFER_USAGE
NLocalString< 128 > NString128
Type alias name for TLocalString<nchar,128>.
int ctdReads[NumberOfAlgorithms]
The number of measured decompression runs of each algorithm.
Ticks::Duration writeTimes[NumberOfAlgorithms]
The overall compression time of each algorithm.
size_t sumCompressed[NumberOfAlgorithms]
For each algorithm, the sum of resulting bytes of all compressions performed.
size_t sumUncompressed
The overall given array data to compress.
Ticks::Duration readTimes[NumberOfAlgorithms]
The overall decompression time of each algorithm.
size_t sumCompressedWon[NumberOfAlgorithms]
int ctdWins[NumberOfAlgorithms]
size_t sumUnCompressedWon[NumberOfAlgorithms]
int ctdCompressions
The number of executed compressions.