Rewrite LibXISF to get rid of Qt

This commit is contained in:
2023-03-05 16:53:27 +01:00
parent fad3e31bf8
commit b24bc8ecdd
186 changed files with 78840 additions and 768 deletions
+24 -9
View File
@@ -1,10 +1,25 @@
#include <iostream>
#include <random>
#include <QElapsedTimer>
#include <chrono>
#include "libxisf.h"
using namespace LibXISF;
class Timer
{
std::chrono::high_resolution_clock clock;
std::chrono::high_resolution_clock::time_point startTime;
public:
void start()
{
startTime = clock.now();
}
uint64_t elapsed()
{
return std::chrono::duration_cast<std::chrono::milliseconds>(clock.now() - startTime).count();
}
};
template<typename T>
void benchmarkType(float avg, float stdDev)
{
@@ -20,14 +35,14 @@ void benchmarkType(float avg, float stdDev)
ptr[i] = normalDist(gen);
}
QElapsedTimer timer;
Timer timer;
double baseSize;
{
timer.start();
XISFWriter writer;
writer.writeImage(image);
QByteArray xisfImage;
ByteArray xisfImage;
writer.save(xisfImage);
baseSize = xisfImage.size();
std::cout << "No compression \tElapsed time: " << timer.elapsed() << " " << "ms\tSpeed: "
@@ -38,7 +53,7 @@ void benchmarkType(float avg, float stdDev)
timer.start();
XISFWriter writer;
writer.writeImage(image);
QByteArray xisfImage;
ByteArray xisfImage;
writer.save(xisfImage);
std::cout << "Zlib compression \tElapsed time: " << timer.elapsed() << " " << "ms\tSpeed: "
<< size/1024.0/1.024/timer.elapsed() << "MiB/s\tRatio: " << baseSize/xisfImage.size() << std::endl;
@@ -48,7 +63,7 @@ void benchmarkType(float avg, float stdDev)
timer.start();
XISFWriter writer;
writer.writeImage(image);
QByteArray xisfImage;
ByteArray xisfImage;
writer.save(xisfImage);
std::cout << "LZ4 compression \tElapsed time: " << timer.elapsed() << " " << "ms\tSpeed: "
<< size/1024.0/1.024/timer.elapsed() << "MiB/s\tRatio: " << baseSize/xisfImage.size() << std::endl;
@@ -58,7 +73,7 @@ void benchmarkType(float avg, float stdDev)
timer.start();
XISFWriter writer;
writer.writeImage(image);
QByteArray xisfImage;
ByteArray xisfImage;
writer.save(xisfImage);
std::cout << "LZ4HC compression \tElapsed time: " << timer.elapsed() << " " << "ms\tSpeed: "
<< size/1024.0/1.024/timer.elapsed() << "MiB/s\tRatio: " << baseSize/xisfImage.size() << std::endl;
@@ -69,7 +84,7 @@ void benchmarkType(float avg, float stdDev)
timer.start();
XISFWriter writer;
writer.writeImage(image);
QByteArray xisfImage;
ByteArray xisfImage;
writer.save(xisfImage);
std::cout << "Zlib compression SH \tElapsed time: " << timer.elapsed() << " " << "ms\tSpeed: "
<< size/1024.0/1.024/timer.elapsed() << "MiB/s\tRatio: " << baseSize/xisfImage.size() << std::endl;
@@ -79,7 +94,7 @@ void benchmarkType(float avg, float stdDev)
timer.start();
XISFWriter writer;
writer.writeImage(image);
QByteArray xisfImage;
ByteArray xisfImage;
writer.save(xisfImage);
std::cout << "LZ4 compression SH \tElapsed time: " << timer.elapsed() << " " << "ms\tSpeed: "
<< size/1024.0/1.024/timer.elapsed() << "MiB/s\tRatio: " << baseSize/xisfImage.size() << std::endl;
@@ -89,7 +104,7 @@ void benchmarkType(float avg, float stdDev)
timer.start();
XISFWriter writer;
writer.writeImage(image);
QByteArray xisfImage;
ByteArray xisfImage;
writer.save(xisfImage);
std::cout << "LZ4HC compression SH\tElapsed time: " << timer.elapsed() << " " << "ms\tSpeed: "
<< size/1024.0/1.024/timer.elapsed() << "MiB/s\tRatio: " << baseSize/xisfImage.size() << std::endl;