DiffractionExperiment: Storage cell number can be adjusted from the frontend

This commit is contained in:
2023-05-05 13:42:04 +02:00
parent 866d70f41c
commit 70bdcfd99d
8 changed files with 152 additions and 135 deletions

View File

@@ -817,7 +817,7 @@ TEST_CASE("DiffractionExperiment_LoadDetectorSettings", "[DiffractionExperiment]
JFJochProtoBuf::DetectorSettings settings;
settings.set_frame_time_us(600);
settings.set_count_time_us(400);
settings.set_use_storage_cells(true);
settings.set_storage_cell_count(8);
settings.set_use_internal_packet_generator(true);
settings.set_collect_raw_data(true);
settings.set_pedestal_g0_frames(5000);
@@ -828,7 +828,7 @@ TEST_CASE("DiffractionExperiment_LoadDetectorSettings", "[DiffractionExperiment]
REQUIRE(x.GetFrameTime().count() == 600);
REQUIRE(x.GetFrameCountTime().count() == 400);
REQUIRE(x.IsUsingInternalPacketGen());
REQUIRE(x.GetStorageCellNumber() == 16);
REQUIRE(x.GetStorageCellNumber() == 8);
REQUIRE(x.GetDetectorMode() == DetectorMode::Raw);
REQUIRE(x.GetPedestalG0Frames() == 5000);
REQUIRE(x.GetPedestalG1Frames() == 100);
@@ -842,7 +842,7 @@ TEST_CASE("DiffractionExperiment_LoadDetectorSettings_invalid", "[DiffractionExp
JFJochProtoBuf::DetectorSettings settings;
settings.set_frame_time_us(600);
settings.set_count_time_us(800);
settings.set_use_storage_cells(true);
settings.set_storage_cell_count(16);
settings.set_use_internal_packet_generator(true);
settings.set_collect_raw_data(true);
settings.set_pedestal_g0_frames(5000);
@@ -866,7 +866,7 @@ TEST_CASE("DiffractionExperiment_LoadDetectorSettings_inferred", "[DiffractionEx
JFJochProtoBuf::DetectorSettings settings;
settings.set_frame_time_us(600);
settings.set_storage_cell_count(1);
REQUIRE_NOTHROW(x.LoadDetectorSettings(settings));
REQUIRE(x.GetFrameTime().count() == 600);
@@ -898,6 +898,7 @@ TEST_CASE("DiffractionExperiment_ConversionOnCPU","[DiffractionExperiment]") {
// Loading detector settings without explicit option should reset to standard behavior
JFJochProtoBuf::DetectorSettings settings;
settings.set_frame_time_us(600);
settings.set_storage_cell_count(1);
x.LoadDetectorSettings(settings);
REQUIRE(x.GetConversionOnFPGA());
REQUIRE(!x.GetConversionOnCPU());