FrameTransformation: Split packing and compression

This commit is contained in:
2023-05-01 21:27:08 +02:00
parent dce186f9f9
commit 9d5be2a4e9
7 changed files with 44 additions and 63 deletions

View File

@@ -21,11 +21,11 @@ std::string CheckCompression(const DiffractionExperiment &x, size_t nimages, con
auto start_time = std::chrono::system_clock::now();
for (int i = 0; i < nimages; i++) {
transformation.SetOutput(output.data() + i * x.GetMaxCompressedSize());
for (int j = 0; j < x.GetModulesNum(); j++ ) {
transformation.ProcessModule(image.data() + (j + i * x.GetModulesNum()) * RAW_MODULE_SIZE, j, 0);
}
compressed_size += transformation.PackStandardOutput();
transformation.Pack();
compressed_size += transformation.SaveCompressedImage(output.data() + i * x.GetMaxCompressedSize());
}
auto end_time = std::chrono::system_clock::now();
@@ -47,11 +47,11 @@ std::string CheckDecompression(const DiffractionExperiment &x, size_t nimages, c
std::vector<size_t> compressed_size(nimages);
for (int i = 0; i < nimages; i++) {
transformation.SetOutput(output[i].data());
for (int j = 0; j < x.GetModulesNum(); j++ ) {
transformation.ProcessModule(image.data() + (j + i * x.GetModulesNum()) * RAW_MODULE_SIZE, j, 0);
}
compressed_size[i] = transformation.PackStandardOutput();
transformation.Pack();
compressed_size[i] = transformation.SaveCompressedImage(output[i].data());
output[i].resize(compressed_size[i]);
}