v1.0.0-rc.36

This commit is contained in:
2025-05-05 19:32:22 +02:00
parent 759243d1bf
commit 040cf08386
333 changed files with 22724 additions and 15251 deletions
+37 -47
View File
@@ -4,7 +4,7 @@
#include <catch2/catch_all.hpp>
#include "../common/DiffractionExperiment.h"
#include "../writer/HDF5Writer.h"
#include "../writer/FileWriter.h"
#include "../reader/JFJochHDF5Reader.h"
TEST_CASE("HDF5DataType_Sign","[HDF5]") {
@@ -37,7 +37,7 @@ TEST_CASE("HDF5DataType_ElemType","[HDF5]") {
}
TEST_CASE("JFJochReader_MasterFile", "[HDF5][Full]") {
DiffractionExperiment x(DetectorGeometry(1));
DiffractionExperiment x(DetJF(1));
x.FilePrefix("test08").ImagesPerTrigger(950).OverwriteExistingFiles(true);
x.BeamX_pxl(100).BeamY_pxl(200).DetectorDistance_mm(150)
@@ -73,7 +73,7 @@ TEST_CASE("JFJochReader_MasterFile", "[HDF5][Full]") {
}
TEST_CASE("JFJochReader_PixelMask", "[HDF5][Full]") {
DiffractionExperiment x(DetectorGeometry(1));
DiffractionExperiment x(DetJF(1));
x.FilePrefix("test16").ImagesPerTrigger(950).OverwriteExistingFiles(true);
x.BeamX_pxl(100).BeamY_pxl(200).DetectorDistance_mm(150)
@@ -92,19 +92,9 @@ TEST_CASE("JFJochReader_PixelMask", "[HDF5][Full]") {
StartMessage start_message;
x.FillMessage(start_message);
start_message.pixel_mask["default"] = pixel_mask;
start_message.AddPixelMask(CompressedImage{
.data = (uint8_t *) pixel_mask.data(),
.size = pixel_mask.size() * sizeof(uint32_t),
.xpixel = (size_t) x.GetXPixelsNum(),
.ypixel = (size_t) x.GetYPixelsNum(),
.pixel_depth_bytes = 4,
.pixel_is_signed = false,
.algorithm = CompressionAlgorithm::NO_COMPRESSION,
.channel = "default"
});
HDF5Writer file_set(start_message);
FileWriter file_set(start_message);
DataMessage message{};
message.image.pixel_depth_bytes = x.GetByteDepthImage();
@@ -116,12 +106,12 @@ TEST_CASE("JFJochReader_PixelMask", "[HDF5][Full]") {
message.image.size = x.GetPixelsNum() * x.GetByteDepthImage();
message.number = 0;
REQUIRE_NOTHROW(file_set.Write(message));
REQUIRE_NOTHROW(file_set.WriteHDF5(message));
EndMessage end_message;
end_message.max_image_number = 1;
file_set.Write(end_message);
file_set.WriteHDF5(end_message);
file_set.Finalize();
}
@@ -147,10 +137,10 @@ TEST_CASE("JFJochReader_PixelMask", "[HDF5][Full]") {
}
TEST_CASE("JFJochReader_DataI16", "[HDF5][Full]") {
DiffractionExperiment x(DetectorGeometry(1));
DiffractionExperiment x(DetJF(1));
x.FilePrefix("test09").ImagesPerTrigger(4).OverwriteExistingFiles(true);
x.BitDepthImage(16).ImagesPerFile(1).HDF5MasterFormatVersion(FileWriterFileFormat::NXmxVDS).PixelSigned(true);
x.BitDepthImage(16).ImagesPerFile(1).SetFileWriterFormat(FileWriterFormat::NXmxVDS).PixelSigned(true);
x.Compression(CompressionAlgorithm::NO_COMPRESSION);
std::vector<int16_t> image(x.GetPixelsNum());
@@ -163,7 +153,7 @@ TEST_CASE("JFJochReader_DataI16", "[HDF5][Full]") {
{
StartMessage start_message;
x.FillMessage(start_message);
HDF5Writer file_set(start_message);
FileWriter file_set(start_message);
for (int i = 0; i < x.GetImageNum(); i++) {
std::vector<SpotToSave> spots;
@@ -182,12 +172,12 @@ TEST_CASE("JFJochReader_DataI16", "[HDF5][Full]") {
message.bkg_estimate = i * 345.6;
message.number = i;
REQUIRE_NOTHROW(file_set.Write(message));
REQUIRE_NOTHROW(file_set.WriteHDF5(message));
}
EndMessage end_message;
end_message.max_image_number = x.GetImageNum();
file_set.Write(end_message);
file_set.WriteHDF5(end_message);
file_set.Finalize();
}
{
@@ -226,10 +216,10 @@ TEST_CASE("JFJochReader_DataI16", "[HDF5][Full]") {
TEST_CASE("JFJochReader_DataI16_OldMasterFormat", "[HDF5][Full]") {
DiffractionExperiment x(DetectorGeometry(1));
DiffractionExperiment x(DetJF(1));
x.FilePrefix("test15").ImagesPerTrigger(4).OverwriteExistingFiles(true);
x.BitDepthImage(16).ImagesPerFile(1).HDF5MasterFormatVersion(FileWriterFileFormat::NXmxLegacy).PixelSigned(true);
x.BitDepthImage(16).ImagesPerFile(1).SetFileWriterFormat(FileWriterFormat::NXmxLegacy).PixelSigned(true);
x.Compression(CompressionAlgorithm::NO_COMPRESSION);
std::vector<int16_t> image(x.GetPixelsNum());
@@ -242,7 +232,7 @@ TEST_CASE("JFJochReader_DataI16_OldMasterFormat", "[HDF5][Full]") {
{
StartMessage start_message;
x.FillMessage(start_message);
HDF5Writer file_set(start_message);
FileWriter file_set(start_message);
for (int i = 0; i < x.GetImageNum(); i++) {
std::vector<SpotToSave> spots;
@@ -262,12 +252,12 @@ TEST_CASE("JFJochReader_DataI16_OldMasterFormat", "[HDF5][Full]") {
message.bkg_estimate = i * 345.6;
message.number = i;
REQUIRE_NOTHROW(file_set.Write(message));
REQUIRE_NOTHROW(file_set.WriteHDF5(message));
}
EndMessage end_message;
end_message.max_image_number = x.GetImageNum();
file_set.Write(end_message);
file_set.WriteHDF5(end_message);
file_set.Finalize();
}
{
@@ -310,10 +300,10 @@ TEST_CASE("JFJochReader_DataI16_OldMasterFormat", "[HDF5][Full]") {
}
TEST_CASE("JFJochReader_DataU16", "[HDF5][Full]") {
DiffractionExperiment x(DetectorGeometry(1));
DiffractionExperiment x(DetJF(1));
x.FilePrefix("test10").ImagesPerTrigger(4).OverwriteExistingFiles(true);
x.BitDepthImage(16).ImagesPerFile(1).HDF5MasterFormatVersion(FileWriterFileFormat::NXmxVDS).PixelSigned(false);
x.BitDepthImage(16).ImagesPerFile(1).SetFileWriterFormat(FileWriterFormat::NXmxVDS).PixelSigned(false);
x.Compression(CompressionAlgorithm::NO_COMPRESSION);
std::vector<uint16_t> image(x.GetPixelsNum());
@@ -325,7 +315,7 @@ TEST_CASE("JFJochReader_DataU16", "[HDF5][Full]") {
{
StartMessage start_message;
x.FillMessage(start_message);
HDF5Writer file_set(start_message);
FileWriter file_set(start_message);
for (int i = 0; i < x.GetImageNum(); i++) {
std::vector<SpotToSave> spots;
@@ -344,12 +334,12 @@ TEST_CASE("JFJochReader_DataU16", "[HDF5][Full]") {
message.bkg_estimate = i * 345.6;
message.number = i;
REQUIRE_NOTHROW(file_set.Write(message));
REQUIRE_NOTHROW(file_set.WriteHDF5(message));
}
EndMessage end_message;
end_message.max_image_number = x.GetImageNum();
file_set.Write(end_message);
file_set.WriteHDF5(end_message);
file_set.Finalize();
}
{
@@ -384,10 +374,10 @@ TEST_CASE("JFJochReader_DataU16", "[HDF5][Full]") {
}
TEST_CASE("JFJochReader_DataI32", "[HDF5][Full]") {
DiffractionExperiment x(DetectorGeometry(1));
DiffractionExperiment x(DetJF(1));
x.FilePrefix("test11").ImagesPerTrigger(4).OverwriteExistingFiles(true);
x.BitDepthImage(32).ImagesPerFile(1).HDF5MasterFormatVersion(FileWriterFileFormat::NXmxVDS).PixelSigned(true);
x.BitDepthImage(32).ImagesPerFile(1).SetFileWriterFormat(FileWriterFormat::NXmxVDS).PixelSigned(true);
x.Compression(CompressionAlgorithm::NO_COMPRESSION);
std::vector<uint32_t> image(x.GetPixelsNum());
@@ -399,7 +389,7 @@ TEST_CASE("JFJochReader_DataI32", "[HDF5][Full]") {
{
StartMessage start_message;
x.FillMessage(start_message);
HDF5Writer file_set(start_message);
FileWriter file_set(start_message);
for (int i = 0; i < x.GetImageNum(); i++) {
std::vector<SpotToSave> spots;
@@ -416,12 +406,12 @@ TEST_CASE("JFJochReader_DataI32", "[HDF5][Full]") {
message.spots = spots;
message.number = i;
REQUIRE_NOTHROW(file_set.Write(message));
REQUIRE_NOTHROW(file_set.WriteHDF5(message));
}
EndMessage end_message;
end_message.max_image_number = x.GetImageNum();
file_set.Write(end_message);
file_set.WriteHDF5(end_message);
file_set.Finalize();
}
{
@@ -454,10 +444,10 @@ TEST_CASE("JFJochReader_DataI32", "[HDF5][Full]") {
}
TEST_CASE("JFJochReader_DataU32", "[HDF5][Full]") {
DiffractionExperiment x(DetectorGeometry(1));
DiffractionExperiment x(DetJF(1));
x.FilePrefix("test12").ImagesPerTrigger(4).OverwriteExistingFiles(true);
x.BitDepthImage(32).ImagesPerFile(1).HDF5MasterFormatVersion(FileWriterFileFormat::NXmxVDS).PixelSigned(false);
x.BitDepthImage(32).ImagesPerFile(1).SetFileWriterFormat(FileWriterFormat::NXmxVDS).PixelSigned(false);
x.Compression(CompressionAlgorithm::NO_COMPRESSION);
std::vector<uint32_t> image(x.GetPixelsNum());
@@ -471,7 +461,7 @@ TEST_CASE("JFJochReader_DataU32", "[HDF5][Full]") {
{
StartMessage start_message;
x.FillMessage(start_message);
HDF5Writer file_set(start_message);
FileWriter file_set(start_message);
for (int i = 0; i < x.GetImageNum(); i++) {
std::vector<SpotToSave> spots;
@@ -488,12 +478,12 @@ TEST_CASE("JFJochReader_DataU32", "[HDF5][Full]") {
message.spots = spots;
message.number = i;
REQUIRE_NOTHROW(file_set.Write(message));
REQUIRE_NOTHROW(file_set.WriteHDF5(message));
}
EndMessage end_message;
end_message.max_image_number = x.GetImageNum();
file_set.Write(end_message);
file_set.WriteHDF5(end_message);
file_set.Finalize();
}
{
@@ -528,10 +518,10 @@ TEST_CASE("JFJochReader_DataU32", "[HDF5][Full]") {
}
TEST_CASE("JFJochReader_ROI", "[HDF5][Full]") {
DiffractionExperiment x(DetectorGeometry(1));
DiffractionExperiment x(DetJF(1));
x.FilePrefix("test25").ImagesPerTrigger(4).OverwriteExistingFiles(true);
x.BitDepthImage(16).ImagesPerFile(1).HDF5MasterFormatVersion(FileWriterFileFormat::NXmxVDS).PixelSigned(false);
x.BitDepthImage(16).ImagesPerFile(1).SetFileWriterFormat(FileWriterFormat::NXmxVDS).PixelSigned(false);
x.Compression(CompressionAlgorithm::NO_COMPRESSION);
x.ROI().SetROI(ROIDefinition{
@@ -545,7 +535,7 @@ TEST_CASE("JFJochReader_ROI", "[HDF5][Full]") {
{
StartMessage start_message;
x.FillMessage(start_message);
HDF5Writer file_set(start_message);
FileWriter file_set(start_message);
for (int i = 0; i < x.GetImageNum(); i++) {
std::vector<SpotToSave> spots;
@@ -573,12 +563,12 @@ TEST_CASE("JFJochReader_ROI", "[HDF5][Full]") {
.max_count = 67 - i,
.pixels = (uint64_t) 95 + i
};
REQUIRE_NOTHROW(file_set.Write(message));
REQUIRE_NOTHROW(file_set.WriteHDF5(message));
}
EndMessage end_message;
end_message.max_image_number = x.GetImageNum();
file_set.Write(end_message);
file_set.WriteHDF5(end_message);
file_set.Finalize();
}
{