From f223415f943f29338d9e3f5f99297be2ebf8d701 Mon Sep 17 00:00:00 2001 From: Dhanya Thattil Date: Fri, 29 May 2020 16:26:57 +0200 Subject: [PATCH 01/13] fix for testing --- .../src/slsDetectorServer_funcs.c | 8 +- .../tests/test-CmdProxy-eiger.cpp | 8 ++ slsDetectorSoftware/tests/test-CmdProxy.cpp | 113 +++++++++++++----- 3 files changed, 95 insertions(+), 34 deletions(-) diff --git a/slsDetectorServers/slsDetectorServer/src/slsDetectorServer_funcs.c b/slsDetectorServers/slsDetectorServer/src/slsDetectorServer_funcs.c index 6e0ca600f..9702eab60 100644 --- a/slsDetectorServers/slsDetectorServer/src/slsDetectorServer_funcs.c +++ b/slsDetectorServers/slsDetectorServer/src/slsDetectorServer_funcs.c @@ -2591,8 +2591,8 @@ int get_period_left(int file_des) { memset(mess, 0, sizeof(mess)); int64_t retval = -1; -#if !defined(JUNGFRAUD) && !defined(GOTTHARDD) && !defined(CHIPTESTBOARDD) && \ - !defined(MOENCHD) && !defined(MYTHEN3D) && !defined(GOTTHARD2D) +#if !defined(JUNGFRAUD) && !defined(GOTTHARDD) /* && !defined(CHIPTESTBOARDD) \ + && !defined(MOENCHD) && !defined(MYTHEN3D) && !defined(GOTTHARD2D)*/ functionNotImplemented(); #else // get only @@ -2607,8 +2607,8 @@ int get_delay_after_trigger_left(int file_des) { memset(mess, 0, sizeof(mess)); int64_t retval = -1; -#if !defined(JUNGFRAUD) && !defined(GOTTHARDD) && !defined(CHIPTESTBOARDD) && \ - !defined(MOENCHD) && !defined(MYTHEN3D) && !defined(GOTTHARD2D) +#if !defined(JUNGFRAUD) && !defined(GOTTHARDD) /* && !defined(CHIPTESTBOARDD) \ + && !defined(MOENCHD) && !defined(MYTHEN3D) && !defined(GOTTHARD2D)*/ functionNotImplemented(); #else // get only diff --git a/slsDetectorSoftware/tests/test-CmdProxy-eiger.cpp b/slsDetectorSoftware/tests/test-CmdProxy-eiger.cpp index 808621404..3ea66c65c 100644 --- a/slsDetectorSoftware/tests/test-CmdProxy-eiger.cpp +++ b/slsDetectorSoftware/tests/test-CmdProxy-eiger.cpp @@ -4,6 +4,7 @@ #include "sls_detector_defs.h" #include #include +#include #include "test-CmdProxy-global.h" #include "tests/globals.h" @@ -242,8 +243,14 @@ TEST_CASE("trigger", "[.cmd][.new]") { det.getTimingMode().tsquash("inconsistent timing mode in test"); auto prev_frames = det.getNumberOfFrames().tsquash("inconsistent #frames in test"); + auto prev_exptime = + det.getExptime().tsquash("inconsistent exptime in test"); + auto prev_period = + det.getPeriod().tsquash("inconsistent period in test"); det.setTimingMode(defs::TRIGGER_EXPOSURE); det.setNumberOfFrames(1); + det.setExptime(std::chrono::milliseconds(1)); + det.setPeriod(std::chrono::milliseconds(1)); auto startingfnum = det.getStartingFrameNumber().tsquash( "inconsistent frame nr in test"); det.startDetector(); @@ -252,6 +259,7 @@ TEST_CASE("trigger", "[.cmd][.new]") { proxy.Call("trigger", {}, -1, PUT, oss); REQUIRE(oss.str() == "trigger successful\n"); } + std::this_thread::sleep_for(std::chrono::seconds(2)); auto currentfnum = det.getStartingFrameNumber().tsquash( "inconsistent frame nr in test"); REQUIRE(startingfnum + 1 == currentfnum); diff --git a/slsDetectorSoftware/tests/test-CmdProxy.cpp b/slsDetectorSoftware/tests/test-CmdProxy.cpp index 495f917b7..9615b434d 100644 --- a/slsDetectorSoftware/tests/test-CmdProxy.cpp +++ b/slsDetectorSoftware/tests/test-CmdProxy.cpp @@ -2,6 +2,7 @@ #include "Detector.h" #include "catch.hpp" #include "sls_detector_defs.h" + #include #include #include @@ -116,7 +117,7 @@ TEST_CASE("type", "[.cmd][.new]") { proxy.Call("type", {}, -1, GET, oss); auto ans = oss.str().erase(0, strlen("type ")); REQUIRE(ans == sls::ToString(dt) + '\n'); - REQUIRE(dt == test::type); + // REQUIRE(dt == test::type); } TEST_CASE("detsize", "[.cmd][.new]") { @@ -193,7 +194,7 @@ TEST_CASE("settings", "[.cmd][.new]") { TEST_CASE("trimbits", "[.cmd][.new]") { Detector det; CmdProxy proxy(&det); - REQUIRE_NOTHROW(proxy.Call("trimbits", {}, -1, GET)); + REQUIRE_THROWS(proxy.Call("trimbits", {}, -1, GET)); } TEST_CASE("trimval", "[.cmd][.new]") { @@ -219,7 +220,7 @@ TEST_CASE("trimval", "[.cmd][.new]") { REQUIRE(oss.str() == "trimval 0\n"); } REQUIRE_THROWS(proxy.Call("trimval", {"64"}, -1, PUT)); - REQUIRE_THROWS(proxy.Call("trimval", {"-1"}, -1, PUT)); + REQUIRE_THROWS(proxy.Call("trimval", {"-2"}, -1, PUT)); for (int i = 0; i != det.size(); ++i) { if (prev_val[i] != -1) { det.setAllTrimbits(prev_val[i], {i}); @@ -285,13 +286,24 @@ TEST_CASE("triggers", "[.cmd][.new]") { TEST_CASE("exptime", "[.cmd][.new]") { Detector det; CmdProxy proxy(&det); - auto prev_val = det.getExptime(); + auto det_type = det.getDetectorType().squash(); + std::chrono::nanoseconds prev_val; + if (det_type != defs::MYTHEN3) { + prev_val = det.getExptime().tsquash("inconsistent exptime to test"); + } else { + auto t = + det.getExptimeForAllGates().tsquash("inconsistent exptime to test"); + if (t[0] != t[1] || t[1] != t[2]) { + throw sls::RuntimeError("inconsistent exptime for all gates"); + } + prev_val = t[0]; + } { std::ostringstream oss; proxy.Call("exptime", {"0.05"}, -1, PUT, oss); REQUIRE(oss.str() == "exptime 0.05\n"); } - { + if (det_type != defs::MYTHEN3) { std::ostringstream oss; proxy.Call("exptime", {}, -1, GET, oss); REQUIRE(oss.str() == "exptime 50ms\n"); @@ -306,9 +318,7 @@ TEST_CASE("exptime", "[.cmd][.new]") { proxy.Call("exptime", {"0"}, -1, PUT, oss); REQUIRE(oss.str() == "exptime 0\n"); } - for (int i = 0; i != det.size(); ++i) { - det.setExptime(prev_val[i], {i}); - } + det.setExptime(-1, prev_val); } TEST_CASE("period", "[.cmd][.new]") { @@ -394,10 +404,17 @@ TEST_CASE("delayl", "[.cmd][.new]") { Detector det; CmdProxy proxy(&det); auto det_type = det.getDetectorType().squash(); - if (det_type == defs::EIGER) { + switch (det_type) { + case defs::EIGER: + case defs::CHIPTESTBOARD: + case defs::MOENCH: + case defs::GOTTHARD2: + case defs::MYTHEN3: REQUIRE_THROWS(proxy.Call("delayl", {}, -1, GET)); - } else { + break; + default: REQUIRE_NOTHROW(proxy.Call("delayl", {}, -1, GET)); + break; } } @@ -405,10 +422,17 @@ TEST_CASE("periodl", "[.cmd][.new]") { Detector det; CmdProxy proxy(&det); auto det_type = det.getDetectorType().squash(); - if (det_type == defs::EIGER) { + switch (det_type) { + case defs::EIGER: + case defs::CHIPTESTBOARD: + case defs::MOENCH: + case defs::GOTTHARD2: + case defs::MYTHEN3: REQUIRE_THROWS(proxy.Call("periodl", {}, -1, GET)); - } else { + break; + default: REQUIRE_NOTHROW(proxy.Call("periodl", {}, -1, GET)); + break; } } @@ -654,6 +678,8 @@ TEST_CASE("clkphase", "[.cmd][.new]") { std::string s_deg_val = "15"; if (det_type == defs::MYTHEN3) { s_deg_val = "14"; + } else if (det_type == defs::GOTTHARD2) { + s_deg_val = "23"; } { std::ostringstream oss1, oss2; @@ -886,7 +912,7 @@ TEST_CASE("extsig", "[.cmd][.new]") { oss1); REQUIRE(oss1.str() == "extsig 0 trigger_in_rising_edge\n"); proxy.Call("extsig", {"0"}, -1, GET, oss2); - REQUIRE(oss2.str() == "extsig trigger_in_rising_edge\n"); + REQUIRE(oss2.str() == "extsig 0 trigger_in_rising_edge\n"); } { std::ostringstream oss1, oss2; @@ -916,7 +942,7 @@ TEST_CASE("extsig", "[.cmd][.new]") { oss1); REQUIRE(oss1.str() == "extsig 0 trigger_in_rising_edge\n"); proxy.Call("extsig", {"0"}, -1, GET, oss2); - REQUIRE(oss2.str() == "extsig trigger_in_rising_edge\n"); + REQUIRE(oss2.str() == "extsig 0 trigger_in_rising_edge\n"); } { std::ostringstream oss1, oss2; @@ -931,7 +957,7 @@ TEST_CASE("extsig", "[.cmd][.new]") { proxy.Call("extsig", {"1", "inversion_off"}, -1, PUT, oss1); REQUIRE(oss1.str() == "extsig 1 inversion_off\n"); proxy.Call("extsig", {"1"}, -1, GET, oss2); - REQUIRE(oss2.str() == "extsig inversion_off\n"); + REQUIRE(oss2.str() == "extsig 1 inversion_off\n"); } { std::ostringstream oss1, oss2; @@ -997,8 +1023,19 @@ TEST_CASE("start", "[.cmd][.new]") { CmdProxy proxy(&det); // PUT only command REQUIRE_THROWS(proxy.Call("start", {}, -1, GET)); - auto prev_val = det.getExptime(); - det.setExptime(std::chrono::seconds(2)); + auto det_type = det.getDetectorType().squash(); + std::chrono::nanoseconds prev_val; + if (det_type != defs::MYTHEN3) { + prev_val = det.getExptime().tsquash("inconsistent exptime to test"); + } else { + auto t = + det.getExptimeForAllGates().tsquash("inconsistent exptime to test"); + if (t[0] != t[1] || t[1] != t[2]) { + throw sls::RuntimeError("inconsistent exptime for all gates"); + } + prev_val = t[0]; + } + det.setExptime(-1, std::chrono::seconds(2)); { std::ostringstream oss; proxy.Call("start", {}, -1, PUT, oss); @@ -1010,9 +1047,7 @@ TEST_CASE("start", "[.cmd][.new]") { REQUIRE(oss.str() == "status running\n"); } det.stopDetector(); - for (int i = 0; i != det.size(); ++i) { - det.setExptime(prev_val[i], {i}); - } + det.setExptime(-1, prev_val); } TEST_CASE("stop", "[.cmd][.new]") { @@ -1020,8 +1055,19 @@ TEST_CASE("stop", "[.cmd][.new]") { CmdProxy proxy(&det); // PUT only command REQUIRE_THROWS(proxy.Call("stop", {}, -1, GET)); - auto prev_val = det.getExptime(); - det.setExptime(std::chrono::seconds(2)); + auto det_type = det.getDetectorType().squash(); + std::chrono::nanoseconds prev_val; + if (det_type != defs::MYTHEN3) { + prev_val = det.getExptime().tsquash("inconsistent exptime to test"); + } else { + auto t = + det.getExptimeForAllGates().tsquash("inconsistent exptime to test"); + if (t[0] != t[1] || t[1] != t[2]) { + throw sls::RuntimeError("inconsistent exptime for all gates"); + } + prev_val = t[0]; + } + det.setExptime(-1, std::chrono::seconds(2)); det.startDetector(); { std::ostringstream oss; @@ -1038,16 +1084,25 @@ TEST_CASE("stop", "[.cmd][.new]") { proxy.Call("status", {}, -1, GET, oss); REQUIRE(oss.str() == "status idle\n"); } - for (int i = 0; i != det.size(); ++i) { - det.setExptime(prev_val[i], {i}); - } + det.setExptime(-1, prev_val); } TEST_CASE("status", "[.cmd][.new]") { Detector det; CmdProxy proxy(&det); - auto prev_val = det.getExptime(); - det.setExptime(std::chrono::seconds(2)); + auto det_type = det.getDetectorType().squash(); + std::chrono::nanoseconds prev_val; + if (det_type != defs::MYTHEN3) { + prev_val = det.getExptime().tsquash("inconsistent exptime to test"); + } else { + auto t = + det.getExptimeForAllGates().tsquash("inconsistent exptime to test"); + if (t[0] != t[1] || t[1] != t[2]) { + throw sls::RuntimeError("inconsistent exptime for all gates"); + } + prev_val = t[0]; + } + det.setExptime(-1, std::chrono::seconds(2)); det.startDetector(); { std::ostringstream oss; @@ -1060,9 +1115,7 @@ TEST_CASE("status", "[.cmd][.new]") { proxy.Call("status", {}, -1, GET, oss); REQUIRE(oss.str() == "status idle\n"); } - for (int i = 0; i != det.size(); ++i) { - det.setExptime(prev_val[i], {i}); - } + det.setExptime(-1, prev_val); } TEST_CASE("startingfnum", "[.cmd][.new]") { From 294612b03c7b6525ab578a70c7273017ed993c25 Mon Sep 17 00:00:00 2001 From: Dhanya Thattil Date: Fri, 29 May 2020 17:04:10 +0200 Subject: [PATCH 02/13] WIP --- .../tests/test-CmdProxy-jungfrau.cpp | 31 ++++++++++++++ slsDetectorSoftware/tests/test-CmdProxy.cpp | 42 +++++++++++++++++++ 2 files changed, 73 insertions(+) diff --git a/slsDetectorSoftware/tests/test-CmdProxy-jungfrau.cpp b/slsDetectorSoftware/tests/test-CmdProxy-jungfrau.cpp index 7c74cd0b2..bd45b1086 100644 --- a/slsDetectorSoftware/tests/test-CmdProxy-jungfrau.cpp +++ b/slsDetectorSoftware/tests/test-CmdProxy-jungfrau.cpp @@ -94,6 +94,37 @@ TEST_CASE("Setting and reading back Jungfrau dacs", "[.cmd][.dacs][.new]") { } } +/* Network Configuration (Detector<->Receiver) */ + +TEST_CASE("selinterface", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::JUNGFRAU) { + auto prev_val = det.getSelectedUDPInterface().tsquash( + "inconsistent selected interface to test"); + { + std::ostringstream oss; + proxy.Call("selinterface", {"1"}, -1, PUT, oss); + REQUIRE(oss.str() == "selinterface 1\n"); + } + { + std::ostringstream oss; + proxy.Call("selinterface", {"0"}, -1, PUT, oss); + REQUIRE(oss.str() == "selinterface 0\n"); + } + { + std::ostringstream oss; + proxy.Call("selinterface", {}, -1, GET, oss); + REQUIRE(oss.str() == "selinterface 0\n"); + } + det.selectUDPInterface(prev_val); + REQUIRE_THROWS(proxy.Call("selinterface", {"2"}, -1, PUT)); + } else { + REQUIRE_THROWS(proxy.Call("selinterface", {}, -1, GET)); + } +} + TEST_CASE("nframes", "[.cmd]") { Detector det; CmdProxy proxy(&det); diff --git a/slsDetectorSoftware/tests/test-CmdProxy.cpp b/slsDetectorSoftware/tests/test-CmdProxy.cpp index 9615b434d..50e1cf093 100644 --- a/slsDetectorSoftware/tests/test-CmdProxy.cpp +++ b/slsDetectorSoftware/tests/test-CmdProxy.cpp @@ -1183,6 +1183,48 @@ TEST_CASE("numinterfaces", "[.cmd][.new]") { REQUIRE_THROWS(proxy.Call("numinterfaces", {"0"}, -1, PUT)); } +TEST_CASE("udp_srcip", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto prev_val = det.getSourceUDPIP(); + REQUIRE_THROWS(proxy.Call("udp_srcip", {"0.0.0.0"}, -1, PUT)); + { + std::ostringstream oss; + proxy.Call("udp_srcip", {"129.129.205.12"}, -1, PUT, oss); + REQUIRE(oss.str() == "udp_srcip 129.129.205.12\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setSourceUDPIP(prev_val[i], {i}); + } +} + +TEST_CASE("udp_dstip", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + REQUIRE_THROWS(proxy.Call("udp_dstip", {"0.0.0.0"}, -1, PUT)); +} + +TEST_CASE("udp_srcmac", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto prev_val = det.getSourceUDPMAC(); + REQUIRE_THROWS(proxy.Call("udp_srcmac", {"00:00:00:00:00:00"}, -1, PUT)); + { + std::ostringstream oss; + proxy.Call("udp_srcmac", {"00:50:c2:42:34:12"}, -1, PUT, oss); + REQUIRE(oss.str() == "udp_srcmac 00:50:c2:42:34:12\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setSourceUDPMAC(prev_val[i], {i}); + } +} + +TEST_CASE("udp_dstmac", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + REQUIRE_THROWS(proxy.Call("udp_dstmac", {"00:00:00:00:00:00"}, -1, PUT)); +} + /* Advanced */ TEST_CASE("initialchecks", "[.cmd]") { From 2ef8f2f04613afb63a05542fc0f6f35b2553e276 Mon Sep 17 00:00:00 2001 From: Dhanya Thattil Date: Fri, 29 May 2020 19:36:41 +0200 Subject: [PATCH 03/13] WIP --- .../tests/test-CmdProxy-eiger.cpp | 32 +- .../tests/test-CmdProxy-rx.cpp | 14 +- slsDetectorSoftware/tests/test-CmdProxy.cpp | 282 ++++++++++++++---- 3 files changed, 233 insertions(+), 95 deletions(-) diff --git a/slsDetectorSoftware/tests/test-CmdProxy-eiger.cpp b/slsDetectorSoftware/tests/test-CmdProxy-eiger.cpp index 3ea66c65c..a8bc8869c 100644 --- a/slsDetectorSoftware/tests/test-CmdProxy-eiger.cpp +++ b/slsDetectorSoftware/tests/test-CmdProxy-eiger.cpp @@ -271,45 +271,29 @@ TEST_CASE("trigger", "[.cmd][.new]") { /* Network Configuration (Detector<->Receiver) */ -TEST_CASE("Eiger transmission delay", "[.cmd]") { +TEST_CASE("txndelay_frame", "[.cmd][.new]") { Detector det; CmdProxy proxy(&det); auto det_type = det.getDetectorType().squash(); - auto frame = det.getTransmissionDelayFrame(); - auto left = det.getTransmissionDelayLeft(); - auto right = det.getTransmissionDelayRight(); if (det_type == defs::EIGER) { - SECTION("txndelay_frame") { + auto prev_val = det.getTransmissionDelayFrame(); + { std::ostringstream oss1, oss2; proxy.Call("txndelay_frame", {"5000"}, -1, PUT, oss1); REQUIRE(oss1.str() == "txndelay_frame 5000\n"); proxy.Call("txndelay_frame", {}, -1, GET, oss2); REQUIRE(oss2.str() == "txndelay_frame 5000\n"); } - SECTION("txndelay_left") { - std::ostringstream oss1, oss2; - proxy.Call("txndelay_left", {"5000"}, -1, PUT, oss1); - REQUIRE(oss1.str() == "txndelay_left 5000\n"); - proxy.Call("txndelay_left", {}, -1, GET, oss2); - REQUIRE(oss2.str() == "txndelay_left 5000\n"); - } - SECTION("txndelay_right") { - std::ostringstream oss1, oss2; - proxy.Call("txndelay_right", {"5000"}, -1, PUT, oss1); - REQUIRE(oss1.str() == "txndelay_right 5000\n"); - proxy.Call("txndelay_right", {}, -1, GET, oss2); - REQUIRE(oss2.str() == "txndelay_right 5000\n"); - } - - // Reset to previous values for (int i = 0; i != det.size(); ++i) { - det.setTransmissionDelayFrame(frame[i]); - det.setTransmissionDelayLeft(left[i]); - det.setTransmissionDelayRight(right[i]); + det.setTransmissionDelayFrame(prev_val[i]); } + } else { + REQUIRE_THROWS(proxy.Call("txndelay_frame", {}, -1, GET)); } } +/* Eiger Specific */ + TEST_CASE("dr", "[.cmd]") { Detector det; CmdProxy proxy(&det); diff --git a/slsDetectorSoftware/tests/test-CmdProxy-rx.cpp b/slsDetectorSoftware/tests/test-CmdProxy-rx.cpp index 2d4f13aa6..95c2ab9f8 100644 --- a/slsDetectorSoftware/tests/test-CmdProxy-rx.cpp +++ b/slsDetectorSoftware/tests/test-CmdProxy-rx.cpp @@ -374,7 +374,7 @@ TEST_CASE("rx_lastclient", "[.cmd][.rx][.new]") { /* File */ -TEST_CASE("fformat", "[.cmd]") { +TEST_CASE("fformat", "[.cmd][.new]") { Detector det; CmdProxy proxy(&det); auto prev_val = det.getFileFormat(); @@ -393,7 +393,7 @@ TEST_CASE("fformat", "[.cmd]") { } } -TEST_CASE("fpath", "[.cmd]") { +TEST_CASE("fpath", "[.cmd][.new]") { Detector det; CmdProxy proxy(&det); auto prev_val = det.getFilePath(); @@ -412,7 +412,7 @@ TEST_CASE("fpath", "[.cmd]") { } } -TEST_CASE("fname", "[.cmd]") { +TEST_CASE("fname", "[.cmd][.new]") { Detector det; CmdProxy proxy(&det); auto prev_val = det.getFileNamePrefix(); @@ -436,7 +436,7 @@ TEST_CASE("fname", "[.cmd]") { } } -TEST_CASE("findex", "[.cmd]") { +TEST_CASE("findex", "[.cmd][.new]") { Detector det; CmdProxy proxy(&det); auto prev_val = det.getAcquisitionIndex(); @@ -460,7 +460,7 @@ TEST_CASE("findex", "[.cmd]") { } } -TEST_CASE("fwrite", "[.cmd]") { +TEST_CASE("fwrite", "[.cmd][.new]") { Detector det; CmdProxy proxy(&det); auto prev_val = det.getFileWrite(); @@ -484,7 +484,7 @@ TEST_CASE("fwrite", "[.cmd]") { } } -TEST_CASE("fmaster", "[.cmd]") { +TEST_CASE("fmaster", "[.cmd][.new]") { Detector det; CmdProxy proxy(&det); auto prev_val = det.getMasterFileWrite(); @@ -508,7 +508,7 @@ TEST_CASE("fmaster", "[.cmd]") { } } -TEST_CASE("foverwrite", "[.cmd]") { +TEST_CASE("foverwrite", "[.cmd][.new]") { Detector det; CmdProxy proxy(&det); auto prev_val = det.getFileOverWrite(); diff --git a/slsDetectorSoftware/tests/test-CmdProxy.cpp b/slsDetectorSoftware/tests/test-CmdProxy.cpp index 50e1cf093..700cb41b3 100644 --- a/slsDetectorSoftware/tests/test-CmdProxy.cpp +++ b/slsDetectorSoftware/tests/test-CmdProxy.cpp @@ -1225,6 +1225,224 @@ TEST_CASE("udp_dstmac", "[.cmd][.new]") { REQUIRE_THROWS(proxy.Call("udp_dstmac", {"00:00:00:00:00:00"}, -1, PUT)); } +TEST_CASE("udp_dstport", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto prev_val = det.getDestinationUDPPort(); + { + std::ostringstream oss; + proxy.Call("udp_dstport", {"50084"}, -1, PUT, oss); + REQUIRE(oss.str() == "udp_dstport 50084\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setDestinationUDPPort(prev_val[i], {i}); + } +} + +TEST_CASE("udp_srcip2", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto prev_val = det.getSourceUDPIP2(); + REQUIRE_THROWS(proxy.Call("udp_srcip2", {"0.0.0.0"}, -1, PUT)); + { + std::ostringstream oss; + proxy.Call("udp_srcip2", {"129.129.205.12"}, -1, PUT, oss); + REQUIRE(oss.str() == "udp_srcip2 129.129.205.12\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setSourceUDPIP2(prev_val[i], {i}); + } +} + +TEST_CASE("udp_dstip2", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + REQUIRE_THROWS(proxy.Call("udp_dstip2", {"0.0.0.0"}, -1, PUT)); +} + +TEST_CASE("udp_srcmac2", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto prev_val = det.getSourceUDPMAC2(); + REQUIRE_THROWS(proxy.Call("udp_srcmac2", {"00:00:00:00:00:00"}, -1, PUT)); + { + std::ostringstream oss; + proxy.Call("udp_srcmac2", {"00:50:c2:42:34:12"}, -1, PUT, oss); + REQUIRE(oss.str() == "udp_srcmac2 00:50:c2:42:34:12\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setSourceUDPMAC2(prev_val[i], {i}); + } +} + +TEST_CASE("udp_dstmac2", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + REQUIRE_THROWS(proxy.Call("udp_dstmac2", {"00:00:00:00:00:00"}, -1, PUT)); +} + +TEST_CASE("udp_dstport2", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto prev_val = det.getDestinationUDPPort2(); + { + std::ostringstream oss; + proxy.Call("udp_dstport2", {"50084"}, -1, PUT, oss); + REQUIRE(oss.str() == "udp_dstport2 50084\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setDestinationUDPPort2(prev_val[i], {i}); + } +} + +TEST_CASE("flowcontrol10g", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + + if (det_type == defs::EIGER || det_type == defs::JUNGFRAU) { + auto prev_val = det.getTenGigaFlowControl(); + { + std::ostringstream oss; + proxy.Call("flowcontrol10g", {"1"}, -1, PUT, oss); + REQUIRE(oss.str() == "flowcontrol10g 1\n"); + } + { + std::ostringstream oss; + proxy.Call("flowcontrol10g", {"0"}, -1, PUT, oss); + REQUIRE(oss.str() == "flowcontrol10g 0\n"); + } + { + std::ostringstream oss; + proxy.Call("flowcontrol10g", {}, -1, GET, oss); + REQUIRE(oss.str() == "flowcontrol10g 0\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setTenGigaFlowControl(prev_val[i], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("flowcontrol10g", {}, -1, GET)); + } +} + +TEST_CASE("txndelay_left", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::EIGER || det_type == defs::JUNGFRAU) { + auto prev_val = det.getTransmissionDelayLeft(); + auto val = 5000; + if (det_type == defs::JUNGFRAU) { + val = 5; + } + std::string sval = std::to_string(val); + { + std::ostringstream oss1, oss2; + proxy.Call("txndelay_left", {sval}, -1, PUT, oss1); + REQUIRE(oss1.str() == "txndelay_left " + sval + "\n"); + proxy.Call("txndelay_left", {}, -1, GET, oss2); + REQUIRE(oss2.str() == "txndelay_left " + sval + "\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setTransmissionDelayLeft(prev_val[i]); + } + } else { + REQUIRE_THROWS(proxy.Call("txndelay_left", {}, -1, GET)); + } +} + +TEST_CASE("txndelay_right", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::EIGER || det_type == defs::JUNGFRAU) { + auto prev_val = det.getTransmissionDelayRight(); + auto val = 5000; + if (det_type == defs::JUNGFRAU) { + val = 5; + } + std::string sval = std::to_string(val); + { + std::ostringstream oss1, oss2; + proxy.Call("txndelay_right", {sval}, -1, PUT, oss1); + REQUIRE(oss1.str() == "txndelay_right " + sval + "\n"); + proxy.Call("txndelay_right", {}, -1, GET, oss2); + REQUIRE(oss2.str() == "txndelay_right " + sval + "\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setTransmissionDelayRight(prev_val[i]); + } + } else { + REQUIRE_THROWS(proxy.Call("txndelay_right", {}, -1, GET)); + } +} + +/* ZMQ Streaming Parameters (Receiver<->Client) */ + +TEST_CASE("zmqport", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + + int socketsperdetector = 1; + auto det_type = det.getDetectorType().squash(); + int prev = 1; + if (det_type == defs::EIGER) { + socketsperdetector *= 2; + } else if (det_type == defs::JUNGFRAU) { + prev = det.getNumberofUDPInterfaces().squash(); + det.setNumberofUDPInterfaces(2); + socketsperdetector *= 2; + } + int port = 3500; + auto port_str = std::to_string(port); + { + std::ostringstream oss; + proxy.Call("zmqport", {port_str}, -1, PUT, oss); + REQUIRE(oss.str() == "zmqport " + port_str + '\n'); + } + for (int i = 0; i != det.size(); ++i) { + std::ostringstream oss; + proxy.Call("zmqport", {}, i, GET, oss); + REQUIRE(oss.str() == "zmqport " + + std::to_string(port + i * socketsperdetector) + + '\n'); + } + + port = 1954; + port_str = std::to_string(port); + { + std::ostringstream oss; + proxy.Call("zmqport", {port_str}, -1, PUT, oss); + REQUIRE(oss.str() == "zmqport " + port_str + '\n'); + } + for (int i = 0; i != det.size(); ++i) { + std::ostringstream oss; + proxy.Call("zmqport", {}, i, GET, oss); + REQUIRE(oss.str() == "zmqport " + + std::to_string(port + i * socketsperdetector) + + '\n'); + } + if (det_type == defs::JUNGFRAU) { + det.setNumberofUDPInterfaces(prev); + } +} + +TEST_CASE("zmqip", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + std::ostringstream oss1, oss2; + auto zmqip = det.getClientZmqIp(); + proxy.Call("zmqip", {}, 0, GET, oss1); + REQUIRE(oss1.str() == "zmqip " + zmqip[0].str() + '\n'); + + proxy.Call("zmqip", {zmqip[0].str()}, 0, PUT, oss2); + REQUIRE(oss2.str() == "zmqip " + zmqip[0].str() + '\n'); + + for (int i = 0; i != det.size(); ++i) { + det.setRxZmqIP(zmqip[i], {i}); + } +} + /* Advanced */ TEST_CASE("initialchecks", "[.cmd]") { @@ -2711,70 +2929,6 @@ TEST_CASE("user", "[.cmd]") { // oss)); s = oss.str(); REQUIRE_NOTHROW(multiSlsDetectorClient(s, PUT)); // } -TEST_CASE("zmqip", "[.cmd]") { - Detector det; - CmdProxy proxy(&det); - std::ostringstream oss1, oss2; - auto zmqip = det.getClientZmqIp(); - proxy.Call("zmqip", {}, 0, GET, oss1); - REQUIRE(oss1.str() == "zmqip " + zmqip[0].str() + '\n'); - - proxy.Call("zmqip", {zmqip[0].str()}, 0, PUT, oss2); - REQUIRE(oss2.str() == "zmqip " + zmqip[0].str() + '\n'); - - for (int i = 0; i != det.size(); ++i) { - det.setRxZmqIP(zmqip[i], {i}); - } -} - -TEST_CASE("zmqport", "[.cmd]") { - Detector det; - CmdProxy proxy(&det); - - int socketsperdetector = 1; - auto det_type = det.getDetectorType().squash(); - int prev = 1; - if (det_type == defs::EIGER) { - socketsperdetector *= 2; - } else if (det_type == defs::JUNGFRAU) { - prev = det.getNumberofUDPInterfaces().squash(); - det.setNumberofUDPInterfaces(2); - socketsperdetector *= 2; - } - int port = 3500; - auto port_str = std::to_string(port); - { - std::ostringstream oss; - proxy.Call("zmqport", {port_str}, -1, PUT, oss); - REQUIRE(oss.str() == "zmqport " + port_str + '\n'); - } - for (int i = 0; i != det.size(); ++i) { - std::ostringstream oss; - proxy.Call("zmqport", {}, i, GET, oss); - REQUIRE(oss.str() == "zmqport " + - std::to_string(port + i * socketsperdetector) + - '\n'); - } - - port = 1954; - port_str = std::to_string(port); - { - std::ostringstream oss; - proxy.Call("zmqport", {port_str}, -1, PUT, oss); - REQUIRE(oss.str() == "zmqport " + port_str + '\n'); - } - for (int i = 0; i != det.size(); ++i) { - std::ostringstream oss; - proxy.Call("zmqport", {}, i, GET, oss); - REQUIRE(oss.str() == "zmqport " + - std::to_string(port + i * socketsperdetector) + - '\n'); - } - if (det_type == defs::JUNGFRAU) { - det.setNumberofUDPInterfaces(prev); - } -} - // TEST_CASE("txndelay", "[.cmd][.eiger][.jungfrau]") { // if (test::type == defs::EIGER) { // { From f07e722d26dd6c45603556b21ecb184aadb216c0 Mon Sep 17 00:00:00 2001 From: Dhanya Thattil Date: Tue, 2 Jun 2020 11:56:50 +0200 Subject: [PATCH 04/13] read/write reg moved to stop server, tests --- slsDetectorSoftware/src/Module.cpp | 8 +- .../tests/test-CmdProxy-eiger.cpp | 37 ++++-- slsDetectorSoftware/tests/test-CmdProxy.cpp | 124 +++++++++--------- 3 files changed, 97 insertions(+), 72 deletions(-) diff --git a/slsDetectorSoftware/src/Module.cpp b/slsDetectorSoftware/src/Module.cpp index 4940ed213..20978c33e 100644 --- a/slsDetectorSoftware/src/Module.cpp +++ b/slsDetectorSoftware/src/Module.cpp @@ -1386,11 +1386,15 @@ bool Module::getInterruptSubframe() { uint32_t Module::writeRegister(uint32_t addr, uint32_t val) { uint32_t args[]{addr, val}; - return sendToDetector(F_WRITE_REGISTER, args); + uint32_t retval = -1; + sendToDetectorStop(F_WRITE_REGISTER, args, retval); + return retval; } uint32_t Module::readRegister(uint32_t addr) { - return sendToDetector(F_READ_REGISTER, addr); + uint32_t retval = -1; + sendToDetectorStop(F_READ_REGISTER, addr, retval); + return retval; } uint32_t Module::setBit(uint32_t addr, int n) { diff --git a/slsDetectorSoftware/tests/test-CmdProxy-eiger.cpp b/slsDetectorSoftware/tests/test-CmdProxy-eiger.cpp index a8bc8869c..49449d2ce 100644 --- a/slsDetectorSoftware/tests/test-CmdProxy-eiger.cpp +++ b/slsDetectorSoftware/tests/test-CmdProxy-eiger.cpp @@ -271,24 +271,45 @@ TEST_CASE("trigger", "[.cmd][.new]") { /* Network Configuration (Detector<->Receiver) */ -TEST_CASE("txndelay_frame", "[.cmd][.new]") { +TEST_CASE("txndelay_left", "[.cmd][.new]") { Detector det; CmdProxy proxy(&det); auto det_type = det.getDetectorType().squash(); if (det_type == defs::EIGER) { - auto prev_val = det.getTransmissionDelayFrame(); + auto prev_val = det.getTransmissionDelayLeft(); { std::ostringstream oss1, oss2; - proxy.Call("txndelay_frame", {"5000"}, -1, PUT, oss1); - REQUIRE(oss1.str() == "txndelay_frame 5000\n"); - proxy.Call("txndelay_frame", {}, -1, GET, oss2); - REQUIRE(oss2.str() == "txndelay_frame 5000\n"); + proxy.Call("txndelay_left", {"5000"}, -1, PUT, oss1); + REQUIRE(oss1.str() == "txndelay_left 5000\n"); + proxy.Call("txndelay_left", {}, -1, GET, oss2); + REQUIRE(oss2.str() == "txndelay_left 5000\n"); } for (int i = 0; i != det.size(); ++i) { - det.setTransmissionDelayFrame(prev_val[i]); + det.setTransmissionDelayLeft(prev_val[i]); } } else { - REQUIRE_THROWS(proxy.Call("txndelay_frame", {}, -1, GET)); + REQUIRE_THROWS(proxy.Call("txndelay_left", {}, -1, GET)); + } +} + +TEST_CASE("txndelay_right", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::EIGER) { + auto prev_val = det.getTransmissionDelayRight(); + { + std::ostringstream oss1, oss2; + proxy.Call("txndelay_right", {"5000"}, -1, PUT, oss1); + REQUIRE(oss1.str() == "txndelay_right 5000\n"); + proxy.Call("txndelay_right", {}, -1, GET, oss2); + REQUIRE(oss2.str() == "txndelay_right 5000\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setTransmissionDelayRight(prev_val[i]); + } + } else { + REQUIRE_THROWS(proxy.Call("txndelay_right", {}, -1, GET)); } } diff --git a/slsDetectorSoftware/tests/test-CmdProxy.cpp b/slsDetectorSoftware/tests/test-CmdProxy.cpp index 700cb41b3..03c0f964a 100644 --- a/slsDetectorSoftware/tests/test-CmdProxy.cpp +++ b/slsDetectorSoftware/tests/test-CmdProxy.cpp @@ -1242,56 +1242,82 @@ TEST_CASE("udp_dstport", "[.cmd][.new]") { TEST_CASE("udp_srcip2", "[.cmd][.new]") { Detector det; CmdProxy proxy(&det); - auto prev_val = det.getSourceUDPIP2(); - REQUIRE_THROWS(proxy.Call("udp_srcip2", {"0.0.0.0"}, -1, PUT)); - { - std::ostringstream oss; - proxy.Call("udp_srcip2", {"129.129.205.12"}, -1, PUT, oss); - REQUIRE(oss.str() == "udp_srcip2 129.129.205.12\n"); - } - for (int i = 0; i != det.size(); ++i) { - det.setSourceUDPIP2(prev_val[i], {i}); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::JUNGFRAU || det_type == defs::GOTTHARD2) { + auto prev_val = det.getSourceUDPIP2(); + REQUIRE_THROWS(proxy.Call("udp_srcip2", {"0.0.0.0"}, -1, PUT)); + { + std::ostringstream oss; + proxy.Call("udp_srcip2", {"129.129.205.12"}, -1, PUT, oss); + REQUIRE(oss.str() == "udp_srcip2 129.129.205.12\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setSourceUDPIP2(prev_val[i], {i}); + } } } TEST_CASE("udp_dstip2", "[.cmd][.new]") { Detector det; CmdProxy proxy(&det); - REQUIRE_THROWS(proxy.Call("udp_dstip2", {"0.0.0.0"}, -1, PUT)); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::JUNGFRAU || det_type == defs::GOTTHARD2) { + REQUIRE_THROWS(proxy.Call("udp_dstip2", {"0.0.0.0"}, -1, PUT)); + } else { + REQUIRE_THROWS(proxy.Call("udp_dstip2", {}, -1, GET)); + } } TEST_CASE("udp_srcmac2", "[.cmd][.new]") { Detector det; CmdProxy proxy(&det); - auto prev_val = det.getSourceUDPMAC2(); - REQUIRE_THROWS(proxy.Call("udp_srcmac2", {"00:00:00:00:00:00"}, -1, PUT)); - { - std::ostringstream oss; - proxy.Call("udp_srcmac2", {"00:50:c2:42:34:12"}, -1, PUT, oss); - REQUIRE(oss.str() == "udp_srcmac2 00:50:c2:42:34:12\n"); - } - for (int i = 0; i != det.size(); ++i) { - det.setSourceUDPMAC2(prev_val[i], {i}); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::JUNGFRAU || det_type == defs::GOTTHARD2) { + auto prev_val = det.getSourceUDPMAC2(); + REQUIRE_THROWS( + proxy.Call("udp_srcmac2", {"00:00:00:00:00:00"}, -1, PUT)); + { + std::ostringstream oss; + proxy.Call("udp_srcmac2", {"00:50:c2:42:34:12"}, -1, PUT, oss); + REQUIRE(oss.str() == "udp_srcmac2 00:50:c2:42:34:12\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setSourceUDPMAC2(prev_val[i], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("udp_srcmac2", {}, -1, GET)); } } TEST_CASE("udp_dstmac2", "[.cmd][.new]") { Detector det; CmdProxy proxy(&det); - REQUIRE_THROWS(proxy.Call("udp_dstmac2", {"00:00:00:00:00:00"}, -1, PUT)); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::JUNGFRAU || det_type == defs::GOTTHARD2) { + REQUIRE_THROWS( + proxy.Call("udp_dstmac2", {"00:00:00:00:00:00"}, -1, PUT)); + } else { + REQUIRE_THROWS(proxy.Call("udp_dstmac2", {}, -1, GET)); + } } TEST_CASE("udp_dstport2", "[.cmd][.new]") { Detector det; CmdProxy proxy(&det); - auto prev_val = det.getDestinationUDPPort2(); - { - std::ostringstream oss; - proxy.Call("udp_dstport2", {"50084"}, -1, PUT, oss); - REQUIRE(oss.str() == "udp_dstport2 50084\n"); - } - for (int i = 0; i != det.size(); ++i) { - det.setDestinationUDPPort2(prev_val[i], {i}); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::JUNGFRAU || det_type == defs::GOTTHARD2 || + det_type == defs::EIGER) { + auto prev_val = det.getDestinationUDPPort2(); + { + std::ostringstream oss; + proxy.Call("udp_dstport2", {"50084"}, -1, PUT, oss); + REQUIRE(oss.str() == "udp_dstport2 50084\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setDestinationUDPPort2(prev_val[i], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("udp_dstport2", {}, -1, GET)); } } @@ -1325,12 +1351,12 @@ TEST_CASE("flowcontrol10g", "[.cmd][.new]") { } } -TEST_CASE("txndelay_left", "[.cmd][.new]") { +TEST_CASE("txndelay_frame", "[.cmd][.new]") { Detector det; CmdProxy proxy(&det); auto det_type = det.getDetectorType().squash(); if (det_type == defs::EIGER || det_type == defs::JUNGFRAU) { - auto prev_val = det.getTransmissionDelayLeft(); + auto prev_val = det.getTransmissionDelayFrame(); auto val = 5000; if (det_type == defs::JUNGFRAU) { val = 5; @@ -1338,42 +1364,16 @@ TEST_CASE("txndelay_left", "[.cmd][.new]") { std::string sval = std::to_string(val); { std::ostringstream oss1, oss2; - proxy.Call("txndelay_left", {sval}, -1, PUT, oss1); - REQUIRE(oss1.str() == "txndelay_left " + sval + "\n"); - proxy.Call("txndelay_left", {}, -1, GET, oss2); - REQUIRE(oss2.str() == "txndelay_left " + sval + "\n"); + proxy.Call("txndelay_frame", {sval}, -1, PUT, oss1); + REQUIRE(oss1.str() == "txndelay_frame " + sval + "\n"); + proxy.Call("txndelay_frame", {}, -1, GET, oss2); + REQUIRE(oss2.str() == "txndelay_frame " + sval + "\n"); } for (int i = 0; i != det.size(); ++i) { - det.setTransmissionDelayLeft(prev_val[i]); + det.setTransmissionDelayFrame(prev_val[i]); } } else { - REQUIRE_THROWS(proxy.Call("txndelay_left", {}, -1, GET)); - } -} - -TEST_CASE("txndelay_right", "[.cmd][.new]") { - Detector det; - CmdProxy proxy(&det); - auto det_type = det.getDetectorType().squash(); - if (det_type == defs::EIGER || det_type == defs::JUNGFRAU) { - auto prev_val = det.getTransmissionDelayRight(); - auto val = 5000; - if (det_type == defs::JUNGFRAU) { - val = 5; - } - std::string sval = std::to_string(val); - { - std::ostringstream oss1, oss2; - proxy.Call("txndelay_right", {sval}, -1, PUT, oss1); - REQUIRE(oss1.str() == "txndelay_right " + sval + "\n"); - proxy.Call("txndelay_right", {}, -1, GET, oss2); - REQUIRE(oss2.str() == "txndelay_right " + sval + "\n"); - } - for (int i = 0; i != det.size(); ++i) { - det.setTransmissionDelayRight(prev_val[i]); - } - } else { - REQUIRE_THROWS(proxy.Call("txndelay_right", {}, -1, GET)); + REQUIRE_THROWS(proxy.Call("txndelay_frame", {}, -1, GET)); } } From 4053594c4d92a26da41fc9da7e829f26cf047748 Mon Sep 17 00:00:00 2001 From: Dhanya Thattil Date: Wed, 3 Jun 2020 14:40:51 +0200 Subject: [PATCH 05/13] WIP --- settingsdir/eiger/standard/4500eV/noise.sn000 | Bin 0 -> 1048648 bytes .../slsDetectorFunctionList.c | 11 +- .../src/slsDetectorServer_funcs.c | 2 +- slsDetectorSoftware/include/Detector.h | 20 +- slsDetectorSoftware/src/CmdProxy.cpp | 72 +- slsDetectorSoftware/src/CmdProxy.h | 4 +- slsDetectorSoftware/src/Detector.cpp | 16 +- .../tests/test-CmdProxy-eiger.cpp | 584 +++++++--- .../tests/test-CmdProxy-jungfrau.cpp | 231 ++-- slsDetectorSoftware/tests/test-CmdProxy.cpp | 1022 +++-------------- 10 files changed, 871 insertions(+), 1091 deletions(-) create mode 100755 settingsdir/eiger/standard/4500eV/noise.sn000 diff --git a/settingsdir/eiger/standard/4500eV/noise.sn000 b/settingsdir/eiger/standard/4500eV/noise.sn000 new file mode 100755 index 0000000000000000000000000000000000000000..4f333106f7ec9670b9a76f78e0c5f86f316c0e60 GIT binary patch literal 1048648 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 XA1v6u3$*H2jdT6dCkGeL{0{#IKS4&} literal 0 HcmV?d00001 diff --git a/slsDetectorServers/eigerDetectorServer/slsDetectorFunctionList.c b/slsDetectorServers/eigerDetectorServer/slsDetectorFunctionList.c index fae9b0e4d..fab4d6a62 100644 --- a/slsDetectorServers/eigerDetectorServer/slsDetectorFunctionList.c +++ b/slsDetectorServers/eigerDetectorServer/slsDetectorFunctionList.c @@ -96,6 +96,8 @@ uint64_t eiger_virtual_startingframenumber = 1; int eiger_virtual_detPos[2] = {0, 0}; int eiger_virtual_test_mode = 0; int eiger_virtual_quad_mode = 0; +int eiger_virtual_read_nlines = 256; +int eiger_virtual_interrupt_subframe = 0; #endif int isInitCheckDone() { return initCheckDone; } @@ -1516,13 +1518,15 @@ int setInterruptSubframe(int value) { if (!Feb_Control_SetInterruptSubframe(value)) { return FAIL; } +#else + eiger_virtual_interrupt_subframe = value; #endif return OK; } int getInterruptSubframe() { #ifdef VIRTUAL - return 0; + return eiger_virtual_interrupt_subframe; #else return Feb_Control_GetInterruptSubframe(); #endif @@ -1536,13 +1540,15 @@ int setReadNLines(int value) { return FAIL; } Beb_SetReadNLines(value); +#else + eiger_virtual_read_nlines = value; #endif return OK; } int getReadNLines() { #ifdef VIRTUAL - return 0; + return eiger_virtual_read_nlines; #else return Feb_Control_GetReadNLines(); #endif @@ -1835,6 +1841,7 @@ void setExternalGating(int enable[]) { } int setAllTrimbits(int val) { + LOG(logINFO, ("Setting all trimbits to %d\n", val)); #ifndef VIRTUAL if (!Feb_Control_SaveAllTrimbitsTo(val, top)) { LOG(logERROR, ("Could not set all trimbits\n")); diff --git a/slsDetectorServers/slsDetectorServer/src/slsDetectorServer_funcs.c b/slsDetectorServers/slsDetectorServer/src/slsDetectorServer_funcs.c index 9702eab60..3d8bf5200 100644 --- a/slsDetectorServers/slsDetectorServer/src/slsDetectorServer_funcs.c +++ b/slsDetectorServers/slsDetectorServer/src/slsDetectorServer_funcs.c @@ -4775,7 +4775,7 @@ int set_read_n_lines(int file_des) { } else { if (setReadNLines(arg) == FAIL) { ret = FAIL; - sprintf(mess, "Could not set read n lines.\n"); + sprintf(mess, "Could not set read n lines to %d.\n", arg); LOG(logERROR, (mess)); } else { int retval = getReadNLines(); diff --git a/slsDetectorSoftware/include/Detector.h b/slsDetectorSoftware/include/Detector.h index a2128bcdf..2f51a47c1 100644 --- a/slsDetectorSoftware/include/Detector.h +++ b/slsDetectorSoftware/include/Detector.h @@ -117,6 +117,16 @@ class Detector { /**[Eiger][Mythen3] */ void setAllTrimbits(int value, Positions pos = {}); + /**[Eiger][Jungfrau] */ + bool getGapPixelsinCallback() const; + + /** + * [Eiger][Jungfrau] + * Only in client data call back + * Fills in gap pixels in data + */ + void setGapPixelsinCallback(const bool enable); + /************************************************** * * * Callbacks * @@ -146,16 +156,6 @@ class Detector { void *), void *pArg); - /**[Eiger][Jungfrau] */ - bool getGapPixelsinCallback() const; - - /** - * [Eiger][Jungfrau] - * Only in client data call back - * Fills in gap pixels in data - */ - void setGapPixelsinCallback(const bool enable); - /************************************************** * * * Acquisition Parameters * diff --git a/slsDetectorSoftware/src/CmdProxy.cpp b/slsDetectorSoftware/src/CmdProxy.cpp index ee7c248f2..f65ccf1b8 100644 --- a/slsDetectorSoftware/src/CmdProxy.cpp +++ b/slsDetectorSoftware/src/CmdProxy.cpp @@ -331,6 +331,37 @@ std::string CmdProxy::DetectorSize(int action) { return os.str(); } +std::string CmdProxy::GapPixels(int action) { + std::ostringstream os; + os << cmd << ' '; + if (action == defs::HELP_ACTION) { + os << "[0, 1]\n\t[Eiger][Jungfrau] Include Gap pixels only in data " + "call back." + << '\n'; + } else if (action == defs::GET_ACTION) { + if (det_id != -1) { + throw sls::RuntimeError("Cannot get gap pixels at module level"); + } + if (!args.empty()) { + WrongNumberOfParameters(0); + } + auto t = det->getGapPixelsinCallback(); + os << t << '\n'; + } else if (action == defs::PUT_ACTION) { + if (det_id != -1) { + throw sls::RuntimeError("Cannot add gap pixels at module level"); + } + if (args.size() != 1) { + WrongNumberOfParameters(1); + } + det->setGapPixelsinCallback(StringTo(args[0])); + os << args.front() << '\n'; + } else { + throw sls::RuntimeError("Unknown action"); + } + return os.str(); +} + /* acquisition parameters */ std::string CmdProxy::Exptime(int action) { @@ -1224,37 +1255,6 @@ std::string CmdProxy::ThresholdNoTb(int action) { return os.str(); } -std::string CmdProxy::GapPixels(int action) { - std::ostringstream os; - os << cmd << ' '; - if (action == defs::HELP_ACTION) { - os << "[0, 1]\n\t[Eiger][Jungfrau] Include Gap pixels only in data " - "call back." - << '\n'; - } else if (action == defs::GET_ACTION) { - if (det_id != -1) { - throw sls::RuntimeError("Cannot get gap pixels at module level"); - } - if (!args.empty()) { - WrongNumberOfParameters(0); - } - auto t = det->getGapPixelsinCallback(); - os << t << '\n'; - } else if (action == defs::PUT_ACTION) { - if (det_id != -1) { - throw sls::RuntimeError("Cannot add gap pixels at module level"); - } - if (args.size() != 1) { - WrongNumberOfParameters(1); - } - det->setGapPixelsinCallback(StringTo(args[0])); - os << args.front() << '\n'; - } else { - throw sls::RuntimeError("Unknown action"); - } - return os.str(); -} - std::string CmdProxy::TrimEnergies(int action) { std::ostringstream os; os << cmd << ' '; @@ -1271,13 +1271,11 @@ std::string CmdProxy::TrimEnergies(int action) { auto t = det->getTrimEnergies({det_id}); os << OutString(t) << '\n'; } else if (action == defs::PUT_ACTION) { - if (args.empty()) { - WrongNumberOfParameters(1); - } - std::vector t(args.size()); - for (size_t i = 0; i < t.size(); ++i) { - t[i] = StringTo(args[i]); + if (!args.empty()) { + for (size_t i = 0; i < t.size(); ++i) { + t[i] = StringTo(args[i]); + } } det->setTrimEnergies(t, {det_id}); os << sls::ToString(args) << '\n'; diff --git a/slsDetectorSoftware/src/CmdProxy.h b/slsDetectorSoftware/src/CmdProxy.h index 99d1fd717..1f53d552f 100644 --- a/slsDetectorSoftware/src/CmdProxy.h +++ b/slsDetectorSoftware/src/CmdProxy.h @@ -565,6 +565,7 @@ class CmdProxy { {"settings", &CmdProxy::settings}, {"trimbits", &CmdProxy::trimbits}, {"trimval", &CmdProxy::trimval}, + {"gappixels", &CmdProxy::GapPixels}, /* acquisition parameters */ {"acquire", &CmdProxy::acquire}, @@ -754,7 +755,6 @@ class CmdProxy { {"threshold", &CmdProxy::Threshold}, {"thresholdnotb", &CmdProxy::ThresholdNoTb}, {"settingspath", &CmdProxy::settingspath}, - {"gappixels", &CmdProxy::GapPixels}, {"parallel", &CmdProxy::parallel}, {"overflow", &CmdProxy::overflow}, {"storeinram", &CmdProxy::storeinram}, @@ -923,6 +923,7 @@ class CmdProxy { std::string PackageVersion(int action); std::string ClientVersion(int action); std::string DetectorSize(int action); + std::string GapPixels(int action); /* acquisition parameters */ std::string acquire(int action); std::string Exptime(int action); @@ -954,7 +955,6 @@ class CmdProxy { std::string DynamicRange(int action); std::string Threshold(int action); std::string ThresholdNoTb(int action); - std::string GapPixels(int action); std::string TrimEnergies(int action); std::string RateCorrection(int action); std::string Activate(int action); diff --git a/slsDetectorSoftware/src/Detector.cpp b/slsDetectorSoftware/src/Detector.cpp index 1a8988fa0..5c3ef60fb 100644 --- a/slsDetectorSoftware/src/Detector.cpp +++ b/slsDetectorSoftware/src/Detector.cpp @@ -161,6 +161,14 @@ void Detector::setAllTrimbits(int value, Positions pos) { pimpl->Parallel(&Module::setAllTrimbits, pos, value); } +bool Detector::getGapPixelsinCallback() const { + return pimpl->getGapPixelsinCallback(); +} + +void Detector::setGapPixelsinCallback(bool enable) { + pimpl->setGapPixelsinCallback(enable); +} + // Callback void Detector::registerAcquisitionFinishedCallback(void (*func)(double, int, @@ -175,14 +183,6 @@ void Detector::registerDataCallback(void (*func)(detectorData *, uint64_t, pimpl->registerDataCallback(func, pArg); } -bool Detector::getGapPixelsinCallback() const { - return pimpl->getGapPixelsinCallback(); -} - -void Detector::setGapPixelsinCallback(bool enable) { - pimpl->setGapPixelsinCallback(enable); -} - // Acquisition Parameters Result Detector::getNumberOfFrames(Positions pos) const { diff --git a/slsDetectorSoftware/tests/test-CmdProxy-eiger.cpp b/slsDetectorSoftware/tests/test-CmdProxy-eiger.cpp index 49449d2ce..1a9b7b859 100644 --- a/slsDetectorSoftware/tests/test-CmdProxy-eiger.cpp +++ b/slsDetectorSoftware/tests/test-CmdProxy-eiger.cpp @@ -315,7 +315,7 @@ TEST_CASE("txndelay_right", "[.cmd][.new]") { /* Eiger Specific */ -TEST_CASE("dr", "[.cmd]") { +TEST_CASE("dr", "[.cmd][.new]") { Detector det; CmdProxy proxy(&det); auto det_type = det.getDetectorType().squash(); @@ -347,124 +347,7 @@ TEST_CASE("dr", "[.cmd]") { } } -TEST_CASE("interruptsubframe", "[.cmd][!mayfail]") { - // TODO! Fix this for virtual server - Detector det; - CmdProxy proxy(&det); - auto det_type = det.getDetectorType().squash(); - if (det_type == defs::EIGER) { - auto previous = det.getInterruptSubframe(); - - std::ostringstream oss1, oss2, oss3; - proxy.Call("interruptsubframe", {"1"}, -1, PUT, oss1); - REQUIRE(oss1.str() == "interruptsubframe 1\n"); - proxy.Call("interruptsubframe", {}, -1, GET, oss2); - REQUIRE(oss2.str() == "interruptsubframe 1\n"); - proxy.Call("interruptsubframe", {"0"}, -1, PUT, oss3); - REQUIRE(oss3.str() == "interruptsubframe 0\n"); - for (int i = 0; i != det.size(); ++i) { - det.setInterruptSubframe(previous[i], {i}); - } - - } else { - REQUIRE_THROWS(proxy.Call("interruptsubframe", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("interruptsubframe", {"1"}, -1, PUT)); - } -} - -TEST_CASE("overflow", "[.cmd]") { - Detector det; - CmdProxy proxy(&det); - auto det_type = det.getDetectorType().squash(); - if (det_type == defs::EIGER) { - auto previous = det.getOverFlowMode(); - - std::ostringstream oss1, oss2, oss3; - proxy.Call("overflow", {"1"}, -1, PUT, oss1); - REQUIRE(oss1.str() == "overflow 1\n"); - proxy.Call("overflow", {}, -1, GET, oss2); - REQUIRE(oss2.str() == "overflow 1\n"); - proxy.Call("overflow", {"0"}, -1, PUT, oss3); - REQUIRE(oss3.str() == "overflow 0\n"); - for (int i = 0; i != det.size(); ++i) { - det.setOverFlowMode(previous[i], {i}); - } - - } else { - REQUIRE_THROWS(proxy.Call("overflow", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("overflow", {"1"}, -1, PUT)); - } -} - -TEST_CASE("trimen", "[.cmd][.this]") { - // TODO! Also Mythen? - Detector det; - CmdProxy proxy(&det); - auto det_type = det.getDetectorType().squash(); - if (det_type == defs::EIGER) { - - auto previous = det.getTrimEnergies(); - std::ostringstream oss1, oss2; - proxy.Call("trimen", {"4500", "5400", "6400"}, -1, PUT, oss1); - REQUIRE(oss1.str() == "trimen [4500, 5400, 6400]\n"); - proxy.Call("trimen", {}, -1, GET, oss2); - REQUIRE(oss2.str() == "trimen [4500, 5400, 6400]\n"); - - for (int i = 0; i != det.size(); ++i) { - det.setTrimEnergies(previous[i], {i}); - } - } else { - REQUIRE_THROWS(proxy.Call("trimen", {"4500", "5400", "6400"}, -1, PUT)); - REQUIRE_THROWS(proxy.Call("trimen", {}, -1, GET)); - } -} - -// TEST_CASE("threshold"{ - -// }) - -// TEST_CASE("activate", "[.cmd][.eiger]") { -// if (test::type == slsDetectorDefs::EIGER) { -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("0:activate 1", PUT, -// nullptr, oss)); REQUIRE(oss.str() == "activate 1\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("0:activate 1 nopadding", -// PUT, nullptr, oss)); REQUIRE(oss.str() == "activate 1 -// nopadding\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("0:activate 0 padding", -// PUT, nullptr, oss)); REQUIRE(oss.str() == "activate 0 -// padding\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("0:activate 0 nopadding", -// PUT, nullptr, oss)); REQUIRE(oss.str() == "activate 0 -// nopadding\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("0:activate 1 padding", -// PUT, nullptr, oss)); REQUIRE(oss.str() == "activate 1 -// padding\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("0:activate", GET, -// nullptr, oss)); REQUIRE(oss.str() == "activate 1 padding\n"); -// } -// } else { -// REQUIRE_THROWS(multiSlsDetectorClient("activate", GET)); -// } -// } - -TEST_CASE("subexptime", "[.cmd]") { +TEST_CASE("subexptime", "[.cmd][.new]") { Detector det; CmdProxy proxy(&det); @@ -485,7 +368,7 @@ TEST_CASE("subexptime", "[.cmd]") { } } -TEST_CASE("subdeadtime", "[.cmd]") { +TEST_CASE("subdeadtime", "[.cmd][.new]") { Detector det; CmdProxy proxy(&det); @@ -506,37 +389,468 @@ TEST_CASE("subdeadtime", "[.cmd]") { } } -TEST_CASE("tengiga", "[.cmd]") { +TEST_CASE("threshold", "[.cmd][.new]") { Detector det; CmdProxy proxy(&det); auto det_type = det.getDetectorType().squash(); - if (det_type == defs::EIGER || det_type == defs::CHIPTESTBOARD) { - auto tengiga = det.getTenGiga(); - det.setTenGiga(false); - - std::ostringstream oss1, oss2; - proxy.Call("tengiga", {"1"}, -1, PUT, oss1); - REQUIRE(oss1.str() == "tengiga 1\n"); - proxy.Call("tengiga", {}, -1, GET, oss2); - REQUIRE(oss2.str() == "tengiga 1\n"); - - for (int i = 0; i != det.size(); ++i) { - det.setTenGiga(tengiga[i], {i}); + if (det_type == defs::EIGER) { + auto prev_threshold = det.getThresholdEnergy(); + auto prev_energies = + det.getTrimEnergies().tsquash("inconsistent trim energies to test"); + if (prev_energies.size() != 0) { + std::ostringstream oss1, oss2; + proxy.Call("threshold", {"4500", "standard"}, -1, PUT, oss1); + REQUIRE(oss1.str() == "threshold [4500, standard]\n"); + proxy.Call("threshold", {}, -1, GET, oss2); + REQUIRE(oss2.str() == "threshold 4500\n"); + det.setTrimEnergies(prev_energies); + for (int i = 0; i != det.size(); ++i) { + if (prev_threshold[i] >= 0) { + det.setThresholdEnergy(prev_threshold[i], defs::STANDARD, + true, {i}); + } + } } + REQUIRE_NOTHROW(proxy.Call("threshold", {}, -1, GET)); + } else { + REQUIRE_THROWS(proxy.Call("threshold", {}, -1, GET)); } } -TEST_CASE("quad", "[.cmd]") { - // TODO! set and get once available in virtual detector +TEST_CASE("thresholdnotb", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::EIGER) { + auto prev_threshold = det.getThresholdEnergy(); + auto prev_energies = + det.getTrimEnergies().tsquash("inconsistent trim energies to test"); + if (prev_energies.size() != 0) { + std::ostringstream oss1, oss2; + proxy.Call("thresholdnotb", {"4500 standard"}, -1, PUT, oss1); + REQUIRE(oss1.str() == "thresholdnotb [4500 standard]\n"); + proxy.Call("threshold", {}, -1, GET, oss2); + REQUIRE(oss2.str() == "threshold 4500\n"); + det.setTrimEnergies(prev_energies); + for (int i = 0; i != det.size(); ++i) { + if (prev_threshold[i] >= 0) { + det.setThresholdEnergy(prev_threshold[i], defs::STANDARD, + false, {i}); + } + } + } + REQUIRE_NOTHROW(proxy.Call("threshold", {}, -1, GET)); + } else { + REQUIRE_THROWS(proxy.Call("thresholdnotb", {}, -1, GET)); + } +} + +TEST_CASE("settingspath", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto prev_val = det.getSettingsPath(); + { + std::ostringstream oss1, oss2; + proxy.Call("settingspath", {"/tmp"}, -1, PUT, oss1); + REQUIRE(oss1.str() == "settingspath /tmp\n"); + proxy.Call("settingspath", {}, -1, GET, oss2); + REQUIRE(oss2.str() == "settingspath /tmp\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setSettingsPath(prev_val[i], {i}); + } +} + +TEST_CASE("parallel", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + + if (det_type == defs::EIGER) { + auto prev_val = det.getParallelMode(); + { + std::ostringstream oss; + proxy.Call("parallel", {"1"}, -1, PUT, oss); + REQUIRE(oss.str() == "parallel 1\n"); + } + { + std::ostringstream oss; + proxy.Call("parallel", {"0"}, -1, PUT, oss); + REQUIRE(oss.str() == "parallel 0\n"); + } + { + std::ostringstream oss; + proxy.Call("parallel", {}, -1, GET, oss); + REQUIRE(oss.str() == "parallel 0\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setParallelMode(prev_val[i], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("parallel", {}, -1, GET)); + } +} + +TEST_CASE("overflow", "[.cmd][.new]") { Detector det; CmdProxy proxy(&det); auto det_type = det.getDetectorType().squash(); if (det_type == defs::EIGER) { + auto previous = det.getOverFlowMode(); + std::ostringstream oss1, oss2, oss3; + proxy.Call("overflow", {"1"}, -1, PUT, oss1); + REQUIRE(oss1.str() == "overflow 1\n"); + proxy.Call("overflow", {}, -1, GET, oss2); + REQUIRE(oss2.str() == "overflow 1\n"); + proxy.Call("overflow", {"0"}, -1, PUT, oss3); + REQUIRE(oss3.str() == "overflow 0\n"); + for (int i = 0; i != det.size(); ++i) { + det.setOverFlowMode(previous[i], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("overflow", {}, -1, GET)); + } +} + +TEST_CASE("storeinram", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::EIGER) { + auto previous = det.getStoreInRamMode(); + std::ostringstream oss1, oss2, oss3; + proxy.Call("storeinram", {"1"}, -1, PUT, oss1); + REQUIRE(oss1.str() == "storeinram 1\n"); + proxy.Call("storeinram", {}, -1, GET, oss2); + REQUIRE(oss2.str() == "storeinram 1\n"); + proxy.Call("storeinram", {"0"}, -1, PUT, oss3); + REQUIRE(oss3.str() == "storeinram 0\n"); + for (int i = 0; i != det.size(); ++i) { + det.setStoreInRamMode(previous[i], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("storeinram", {}, -1, GET)); + } +} + +TEST_CASE("flippeddatax", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::EIGER) { + auto previous = det.getBottom(); + std::ostringstream oss1, oss2, oss3; + proxy.Call("flippeddatax", {"1"}, -1, PUT, oss1); + REQUIRE(oss1.str() == "flippeddatax 1\n"); + proxy.Call("flippeddatax", {}, -1, GET, oss2); + REQUIRE(oss2.str() == "flippeddatax 1\n"); + proxy.Call("flippeddatax", {"0"}, -1, PUT, oss3); + REQUIRE(oss3.str() == "flippeddatax 0\n"); + for (int i = 0; i != det.size(); ++i) { + det.setBottom(previous[i], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("flippeddatax", {}, -1, GET)); + } +} + +TEST_CASE("trimen", "[.cmd][.this][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::EIGER) { + auto previous = det.getTrimEnergies(); + std::ostringstream oss1, oss2; + proxy.Call("trimen", {"4500", "5400", "6400"}, -1, PUT, oss1); + REQUIRE(oss1.str() == "trimen [4500, 5400, 6400]\n"); + proxy.Call("trimen", {}, -1, GET, oss2); + REQUIRE(oss2.str() == "trimen [4500, 5400, 6400]\n"); + + for (int i = 0; i != det.size(); ++i) { + det.setTrimEnergies(previous[i], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("trimen", {"4500", "5400", "6400"}, -1, PUT)); + REQUIRE_THROWS(proxy.Call("trimen", {}, -1, GET)); + } +} + +TEST_CASE("ratecorr", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::EIGER) { + auto prev_dr = det.getDynamicRange().tsquash("inconsistent dr to test"); + auto prev_tau = det.getRateCorrection(); + det.setDynamicRange(16); + { + std::ostringstream oss; + proxy.Call("ratecorr", {"120"}, -1, PUT, oss); + REQUIRE(oss.str() == "ratecorr 120ns\n"); + } + { + std::ostringstream oss; + proxy.Call("ratecorr", {}, -1, GET, oss); + REQUIRE(oss.str() == "ratecorr 120ns\n"); + } + // may fail if default settings not loaded + // REQUIRE_NOTHROW(proxy.Call("ratecorr", {"-1"}, -1, PUT)); + { + std::ostringstream oss; + proxy.Call("ratecorr", {"0"}, -1, PUT, oss); + REQUIRE(oss.str() == "ratecorr 0ns\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setRateCorrection(prev_tau[i], {i}); + } + det.setDynamicRange(prev_dr); + } else { + REQUIRE_THROWS(proxy.Call("ratecorr", {}, -1, GET)); + } +} + +TEST_CASE("readnlines", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::EIGER) { + auto prev_val = det.getPartialReadout(); + { + std::ostringstream oss; + proxy.Call("readnlines", {"256"}, -1, PUT, oss); + REQUIRE(oss.str() == "readnlines 256\n"); + } + { + std::ostringstream oss; + proxy.Call("readnlines", {}, -1, GET, oss); + REQUIRE(oss.str() == "readnlines 256\n"); + } + { + std::ostringstream oss; + proxy.Call("readnlines", {"16"}, -1, PUT, oss); + REQUIRE(oss.str() == "readnlines 16\n"); + } + REQUIRE_THROWS(proxy.Call("readnlines", {"0"}, -1, PUT)); + for (int i = 0; i != det.size(); ++i) { + det.setPartialReadout(prev_val[i], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("readnlines", {}, -1, GET)); + } +} + +TEST_CASE("interruptsubframe", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::EIGER) { + auto prev_val = det.getInterruptSubframe(); + + std::ostringstream oss1, oss2, oss3; + proxy.Call("interruptsubframe", {"1"}, -1, PUT, oss1); + REQUIRE(oss1.str() == "interruptsubframe 1\n"); + proxy.Call("interruptsubframe", {}, -1, GET, oss2); + REQUIRE(oss2.str() == "interruptsubframe 1\n"); + proxy.Call("interruptsubframe", {"0"}, -1, PUT, oss3); + REQUIRE(oss3.str() == "interruptsubframe 0\n"); + for (int i = 0; i != det.size(); ++i) { + det.setInterruptSubframe(prev_val[i], {i}); + } + + } else { + REQUIRE_THROWS(proxy.Call("interruptsubframe", {}, -1, GET)); + REQUIRE_THROWS(proxy.Call("interruptsubframe", {"1"}, -1, PUT)); + } +} + +TEST_CASE("measuredperiod", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::EIGER) { + auto prev_frames = det.getNumberOfFrames().tsquash( + "inconsistent number of frames to test"); + auto prev_timing = + det.getTimingMode().tsquash("inconsistent timing mode to test"); + auto prev_period = det.getPeriod(); + det.setNumberOfFrames(2); + det.setPeriod(std::chrono::seconds(1)); + det.setTimingMode(defs::AUTO_TIMING); + det.startDetector(); + std::this_thread::sleep_for(std::chrono::seconds(3)); + std::ostringstream oss; + proxy.Call("measuredperiod", {}, -1, GET, oss); + std::string st = oss.str(); + std::string s = st.erase(0, strlen("measuredperiod ")); + double val = std::stod(s); + // REQUIRE(val >= 1.0); + REQUIRE(val < 2.0); + for (int i = 0; i != det.size(); ++i) { + det.setPeriod(prev_period[i], {i}); + } + det.setNumberOfFrames(prev_frames); + det.setTimingMode(prev_timing); + } else { + REQUIRE_THROWS(proxy.Call("measuredperiod", {}, -1, GET)); + } +} + +TEST_CASE("measuredsubperiod", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::EIGER) { + auto prev_frames = det.getNumberOfFrames().tsquash( + "inconsistent number of frames to test"); + auto prev_timing = + det.getTimingMode().tsquash("inconsistent timing mode to test"); + auto prev_period = det.getPeriod(); + auto prev_dr = det.getDynamicRange().tsquash("inconsistent dr to test"); + det.setNumberOfFrames(1); + det.setPeriod(std::chrono::seconds(1)); + det.setTimingMode(defs::AUTO_TIMING); + det.setDynamicRange(32); + det.startDetector(); + std::this_thread::sleep_for(std::chrono::seconds(3)); + std::ostringstream oss; + proxy.Call("measuredsubperiod", {}, -1, GET, oss); + std::string st = oss.str(); + std::string s = st.erase(0, strlen("measuredsubperiod ")); + double val = std::stod(s); + REQUIRE(val >= 0); + REQUIRE(val < 1000); + for (int i = 0; i != det.size(); ++i) { + det.setPeriod(prev_period[i], {i}); + } + det.setNumberOfFrames(prev_frames); + det.setTimingMode(prev_timing); + det.setDynamicRange(prev_dr); + } else { + REQUIRE_THROWS(proxy.Call("measuredsubperiod", {}, -1, GET)); + } +} + +TEST_CASE("activate", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::EIGER) { + auto prev_val = det.getActive(); + { + std::ostringstream oss; + proxy.Call("activate", {"1"}, -1, PUT, oss); + REQUIRE(oss.str() == "activate 1\n"); + } + { + std::ostringstream oss; + proxy.Call("activate", {"1", "nopadding"}, -1, PUT, oss); + REQUIRE(oss.str() == "activate 1 nopadding\n"); + } + { + std::ostringstream oss; + proxy.Call("activate", {"0", "padding"}, -1, PUT, oss); + REQUIRE(oss.str() == "activate 0 padding\n"); + } + { + std::ostringstream oss; + proxy.Call("activate", {"0", "nopadding"}, -1, PUT, oss); + REQUIRE(oss.str() == "activate 0 nopadding\n"); + } + { + std::ostringstream oss; + proxy.Call("activate", {"1", "padding"}, -1, PUT, oss); + REQUIRE(oss.str() == "activate 1 padding\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setActive(prev_val[i], {i}); + } + + } else { + REQUIRE_THROWS(proxy.Call("activate", {}, -1, GET)); + REQUIRE_THROWS(proxy.Call("activate", {"1"}, -1, PUT)); + } +} + +TEST_CASE("partialreset", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::EIGER) { + auto prev_val = det.getPartialReset(); + std::ostringstream oss1, oss2, oss3; + proxy.Call("partialreset", {"1"}, -1, PUT, oss1); + REQUIRE(oss1.str() == "partialreset 1\n"); + proxy.Call("partialreset", {}, -1, GET, oss2); + REQUIRE(oss2.str() == "partialreset 1\n"); + proxy.Call("partialreset", {"0"}, -1, PUT, oss3); + REQUIRE(oss3.str() == "partialreset 0\n"); + for (int i = 0; i != det.size(); ++i) { + det.setPartialReset(prev_val[i], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("partialreset", {}, -1, GET)); + REQUIRE_THROWS(proxy.Call("partialreset", {"1"}, -1, PUT)); + } +} + +TEST_CASE("pulse", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::EIGER) { + REQUIRE_THROWS(proxy.Call("pulse", {}, -1, GET)); + std::ostringstream oss; + proxy.Call("pulse", {"1", "1", "5"}, -1, PUT, oss); + REQUIRE(oss.str() == "pulse [1, 1, 5]\n"); + } else { + REQUIRE_THROWS(proxy.Call("pulse", {}, -1, GET)); + REQUIRE_THROWS(proxy.Call("pulse", {"1", "1", "5"}, -1, PUT)); + } +} + +TEST_CASE("pulsenmove", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::EIGER) { + REQUIRE_THROWS(proxy.Call("pulsenmove", {}, -1, GET)); + std::ostringstream oss; + proxy.Call("pulsenmove", {"1", "1", "5"}, -1, PUT, oss); + REQUIRE(oss.str() == "pulsenmove [1, 1, 5]\n"); + } else { + REQUIRE_THROWS(proxy.Call("pulsenmove", {}, -1, GET)); + REQUIRE_THROWS(proxy.Call("pulsenmove", {"1", "1", "5"}, -1, PUT)); + } +} + +TEST_CASE("pulsechip", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::EIGER) { + REQUIRE_THROWS(proxy.Call("pulsechip", {}, -1, GET)); + std::ostringstream oss; + proxy.Call("pulsechip", {"1"}, -1, PUT, oss); + REQUIRE(oss.str() == "pulsechip 1\n"); + } else { + REQUIRE_THROWS(proxy.Call("pulsechip", {}, -1, GET)); + REQUIRE_THROWS(proxy.Call("pulsechip", {"1"}, -1, PUT)); + } +} + +TEST_CASE("quad", "[.cmd]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::EIGER) { + auto prev_val = det.getQuad().tsquash("inconsistent quad to test"); // Quad only works with a single half module EIGER std::ostringstream oss; proxy.Call("quad", {}, -1, GET, oss); REQUIRE(oss.str() == "quad 0\n"); + det.setQuad(prev_val); } else { REQUIRE_THROWS(proxy.Call("quad", {}, -1, GET)); } diff --git a/slsDetectorSoftware/tests/test-CmdProxy-jungfrau.cpp b/slsDetectorSoftware/tests/test-CmdProxy-jungfrau.cpp index bd45b1086..fa5d65221 100644 --- a/slsDetectorSoftware/tests/test-CmdProxy-jungfrau.cpp +++ b/slsDetectorSoftware/tests/test-CmdProxy-jungfrau.cpp @@ -125,114 +125,217 @@ TEST_CASE("selinterface", "[.cmd][.new]") { } } -TEST_CASE("nframes", "[.cmd]") { +/* Jungfrau Specific */ + +TEST_CASE("temp_threshold", "[.cmd][.new]") { Detector det; CmdProxy proxy(&det); auto det_type = det.getDetectorType().squash(); - if (det_type == defs::JUNGFRAU || det_type == defs::CHIPTESTBOARD) { - auto nframes = det.getNumberOfFramesFromStart().squash(); - std::ostringstream oss; - proxy.Call("nframes", {}, -1, GET, oss); - REQUIRE(oss.str() == "nframes " + std::to_string(nframes) + "\n"); - + if (det_type == defs::JUNGFRAU) { + auto prev_val = det.getThresholdTemperature(); + { + std::ostringstream oss; + proxy.Call("temp_threshold", {"65"}, -1, PUT, oss); + REQUIRE(oss.str() == "temp_threshold 65\n"); + } + { + std::ostringstream oss; + proxy.Call("temp_threshold", {"70"}, -1, PUT, oss); + REQUIRE(oss.str() == "temp_threshold 70\n"); + } + { + std::ostringstream oss; + proxy.Call("temp_threshold", {}, -1, GET, oss); + REQUIRE(oss.str() == "temp_threshold 70\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setThresholdTemperature(prev_val[i], {i}); + } } else { - REQUIRE_THROWS(proxy.Call("nframes", {}, -1, GET)); + REQUIRE_THROWS(proxy.Call("temp_threshold", {}, -1, GET)); + REQUIRE_THROWS(proxy.Call("temp_threshold", {"70"}, -1, PUT)); } } -TEST_CASE("now", "[.cmd]") { - // TODO! can we test this? +TEST_CASE("temp_control", "[.cmd][.new]") { Detector det; CmdProxy proxy(&det); auto det_type = det.getDetectorType().squash(); - if (det_type == defs::JUNGFRAU || det_type == defs::CHIPTESTBOARD) { - std::ostringstream oss; - proxy.Call("now", {}, -1, GET, oss); - - // Get only - REQUIRE_THROWS(proxy.Call("now", {"2019"}, -1, PUT)); + if (det_type == defs::JUNGFRAU) { + auto prev_val = det.getTemperatureControl(); + { + std::ostringstream oss; + proxy.Call("temp_control", {"0"}, -1, PUT, oss); + REQUIRE(oss.str() == "temp_control 0\n"); + } + { + std::ostringstream oss; + proxy.Call("temp_control", {"1"}, -1, PUT, oss); + REQUIRE(oss.str() == "temp_control 1\n"); + } + { + std::ostringstream oss; + proxy.Call("temp_control", {}, -1, GET, oss); + REQUIRE(oss.str() == "temp_control 1\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setTemperatureControl(prev_val[i], {i}); + } } else { - REQUIRE_THROWS(proxy.Call("now", {}, -1, GET)); + REQUIRE_THROWS(proxy.Call("temp_control", {}, -1, GET)); + REQUIRE_THROWS(proxy.Call("temp_control", {"0"}, -1, PUT)); } } -TEST_CASE("timestamp", "[.cmd]") { - // TODO! can we test this? +TEST_CASE("temp_event", "[.cmd][.new]") { Detector det; CmdProxy proxy(&det); auto det_type = det.getDetectorType().squash(); - if (det_type == defs::JUNGFRAU || det_type == defs::CHIPTESTBOARD) { - std::ostringstream oss; - proxy.Call("timestamp", {}, -1, GET, oss); - - // Get only - REQUIRE_THROWS(proxy.Call("timestamp", {"2019"}, -1, PUT)); + if (det_type == defs::JUNGFRAU) { + { + std::ostringstream oss; + proxy.Call("temp_event", {"0"}, -1, PUT, oss); + REQUIRE(oss.str() == "temp_event cleared\n"); + } + { + std::ostringstream oss; + proxy.Call("temp_event", {}, -1, GET, oss); + REQUIRE(oss.str() == "temp_event 0\n"); + } } else { - REQUIRE_THROWS(proxy.Call("timestamp", {}, -1, GET)); + REQUIRE_THROWS(proxy.Call("temp_event", {}, -1, GET)); + REQUIRE_THROWS(proxy.Call("temp_event", {"0"}, -1, PUT)); } } -TEST_CASE("adcreg", "[.cmd]") { - // TODO! what is a safe value to use? +TEST_CASE("auto_comp_disable", "[.cmd][.new]") { Detector det; CmdProxy proxy(&det); auto det_type = det.getDetectorType().squash(); - if (det_type == defs::JUNGFRAU || det_type == defs::CHIPTESTBOARD || - det_type == defs::GOTTHARD) { - std::ostringstream oss; - proxy.Call("adcreg", {"0x0", "0"}, -1, PUT, oss); - REQUIRE(oss.str() == "adcreg [0x0, 0]\n"); - // This is a put only command - REQUIRE_THROWS(proxy.Call("adcreg", {}, -1, GET)); + if (det_type == defs::JUNGFRAU) { + auto prev_val = det.getAutoCompDisable(); + { + std::ostringstream oss; + proxy.Call("auto_comp_disable", {"0"}, -1, PUT, oss); + REQUIRE(oss.str() == "auto_comp_disable 0\n"); + } + { + std::ostringstream oss; + proxy.Call("auto_comp_disable", {"1"}, -1, PUT, oss); + REQUIRE(oss.str() == "auto_comp_disable 1\n"); + } + { + std::ostringstream oss; + proxy.Call("auto_comp_disable", {}, -1, GET, oss); + REQUIRE(oss.str() == "auto_comp_disable 1\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setAutoCompDisable(prev_val[i], {i}); + } } else { - REQUIRE_THROWS(proxy.Call("adcreg", {"0x0", "0"}, -1, PUT)); - REQUIRE_THROWS(proxy.Call("adcreg", {}, -1, GET)); + REQUIRE_THROWS(proxy.Call("auto_comp_disable", {}, -1, GET)); + REQUIRE_THROWS(proxy.Call("auto_comp_disable", {"0"}, -1, PUT)); } } -TEST_CASE("bustest", "[.cmd]") { +TEST_CASE("storagecells", "[.cmd][.new]") { Detector det; CmdProxy proxy(&det); auto det_type = det.getDetectorType().squash(); - if (det_type == defs::JUNGFRAU || det_type == defs::CHIPTESTBOARD || - det_type == defs::GOTTHARD) { - std::ostringstream oss; - proxy.Call("bustest", {}, -1, PUT, oss); - REQUIRE(oss.str() == "bustest successful\n"); - REQUIRE_THROWS(proxy.Call("bustest", {}, -1, GET)); + if (det_type == defs::JUNGFRAU) { + auto prev_val = det.getNumberOfAdditionalStorageCells().tsquash( + "inconsistent #additional storage cells to test"); + { + std::ostringstream oss; + proxy.Call("storagecells", {"1"}, -1, PUT, oss); + REQUIRE(oss.str() == "storagecells 1\n"); + } + { + std::ostringstream oss; + proxy.Call("storagecells", {"15"}, -1, PUT, oss); + REQUIRE(oss.str() == "storagecells 15\n"); + } + { + std::ostringstream oss; + proxy.Call("storagecells", {"0"}, -1, PUT, oss); + REQUIRE(oss.str() == "storagecells 0\n"); + } + { + std::ostringstream oss; + proxy.Call("storagecells", {}, -1, GET, oss); + REQUIRE(oss.str() == "storagecells 0\n"); + } + REQUIRE_THROWS(proxy.Call("storagecells", {"16"}, -1, PUT)); + det.setNumberOfAdditionalStorageCells(prev_val); } else { - REQUIRE_THROWS(proxy.Call("bustest", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("bustest", {}, -1, PUT)); + REQUIRE_THROWS(proxy.Call("storagecells", {}, -1, GET)); + REQUIRE_THROWS(proxy.Call("storagecells", {"0"}, -1, PUT)); } } -TEST_CASE("firmwaretest", "[.cmd]") { +TEST_CASE("storagecell_start", "[.cmd][.new]") { Detector det; CmdProxy proxy(&det); auto det_type = det.getDetectorType().squash(); - if (det_type == defs::JUNGFRAU || det_type == defs::CHIPTESTBOARD || - det_type == defs::GOTTHARD) { - std::ostringstream oss; - proxy.Call("firmwaretest", {}, -1, PUT, oss); - REQUIRE(oss.str() == "firmwaretest successful\n"); - REQUIRE_THROWS(proxy.Call("firmwaretest", {}, -1, GET)); + if (det_type == defs::JUNGFRAU) { + auto prev_val = det.getStorageCellStart(); + { + std::ostringstream oss; + proxy.Call("storagecell_start", {"1"}, -1, PUT, oss); + REQUIRE(oss.str() == "storagecell_start 1\n"); + } + { + std::ostringstream oss; + proxy.Call("storagecell_start", {"15"}, -1, PUT, oss); + REQUIRE(oss.str() == "storagecell_start 15\n"); + } + { + std::ostringstream oss; + proxy.Call("storagecell_start", {"0"}, -1, PUT, oss); + REQUIRE(oss.str() == "storagecell_start 0\n"); + } + { + std::ostringstream oss; + proxy.Call("storagecell_start", {}, -1, GET, oss); + REQUIRE(oss.str() == "storagecell_start 0\n"); + } + REQUIRE_THROWS(proxy.Call("storagecell_start", {"16"}, -1, PUT)); + for (int i = 0; i != det.size(); ++i) { + det.setStorageCellStart(prev_val[i], {i}); + } } else { - REQUIRE_THROWS(proxy.Call("firmwaretest", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("firmwaretest", {}, -1, PUT)); + REQUIRE_THROWS(proxy.Call("storagecell_start", {}, -1, GET)); + REQUIRE_THROWS(proxy.Call("storagecell_start", {"0"}, -1, PUT)); } } -TEST_CASE("resetfpga", "[.cmd]") { +TEST_CASE("storagecell_delay", "[.cmd][.new]") { Detector det; CmdProxy proxy(&det); auto det_type = det.getDetectorType().squash(); - if (det_type == defs::JUNGFRAU || det_type == defs::CHIPTESTBOARD) { - std::ostringstream oss; - proxy.Call("resetfpga", {}, -1, PUT, oss); - REQUIRE(oss.str() == "resetfpga successful\n"); - REQUIRE_THROWS(proxy.Call("resetfpga", {}, -1, GET)); + if (det_type == defs::JUNGFRAU) { + auto prev_val = det.getStorageCellDelay(); + { + std::ostringstream oss; + proxy.Call("storagecell_delay", {"1.62ms"}, -1, PUT, oss); + REQUIRE(oss.str() == "storagecell_delay 1.62ms\n"); + } + { + std::ostringstream oss; + proxy.Call("storagecell_delay", {}, -1, GET, oss); + REQUIRE(oss.str() == "storagecell_delay 1.62ms\n"); + } + { + std::ostringstream oss; + proxy.Call("storagecell_delay", {"0"}, -1, PUT, oss); + REQUIRE(oss.str() == "storagecell_delay 0\n"); + } + REQUIRE_THROWS(proxy.Call("storagecell_delay", {"1638376ns"}, -1, PUT)); + for (int i = 0; i != det.size(); ++i) { + det.setStorageCellDelay(prev_val[i], {i}); + } } else { - REQUIRE_THROWS(proxy.Call("resetfpga", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("resetfpga", {}, -1, PUT)); + REQUIRE_THROWS(proxy.Call("storagecell_delay", {}, -1, GET)); + REQUIRE_THROWS(proxy.Call("storagecell_delay", {"0"}, -1, PUT)); } -} +} \ No newline at end of file diff --git a/slsDetectorSoftware/tests/test-CmdProxy.cpp b/slsDetectorSoftware/tests/test-CmdProxy.cpp index 03c0f964a..602c65ae1 100644 --- a/slsDetectorSoftware/tests/test-CmdProxy.cpp +++ b/slsDetectorSoftware/tests/test-CmdProxy.cpp @@ -132,9 +132,6 @@ TEST_CASE("settings", "[.cmd][.new]") { auto det_type = det.getDetectorType().squash(); std::vector sett; switch (det_type) { - case defs::EIGER: - // FIXME: need to remove when settings removed - break; case defs::JUNGFRAU: sett.push_back("dynamicgain"); sett.push_back("dynamichg0"); @@ -166,7 +163,13 @@ TEST_CASE("settings", "[.cmd][.new]") { sett.push_back("g4_lg"); break; default: - REQUIRE_THROWS(proxy.Call("settings", {}, -1, GET)); + if (det_type == defs::EIGER) { + // FIXME: need to remove when settings removed + REQUIRE_NOTHROW(proxy.Call("settings", {}, -1, GET)); + REQUIRE_THROWS(proxy.Call("settings", {"standard"}, -1, PUT)); + } else { + REQUIRE_THROWS(proxy.Call("settings", {}, -1, GET)); + } return; } @@ -835,8 +838,6 @@ TEST_CASE("vhighvoltage", "[.cmd][.new]") { } TEST_CASE("powerchip", "[.cmd][.new]") { - // TODO! this test currently fails with the - // virtual detecto server Detector det; CmdProxy proxy(&det); auto det_type = det.getDetectorType().squash(); @@ -1148,6 +1149,34 @@ TEST_CASE("startingfnum", "[.cmd][.new]") { } } +TEST_CASE("gappixels", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + + if (det_type == defs::JUNGFRAU || det_type == defs::EIGER) { + auto prev_val = det.getGapPixelsinCallback(); + { + std::ostringstream oss; + proxy.Call("gappixels", {"1"}, -1, PUT, oss); + REQUIRE(oss.str() == "gappixels 1\n"); + } + { + std::ostringstream oss; + proxy.Call("gappixels", {"0"}, -1, PUT, oss); + REQUIRE(oss.str() == "gappixels 0\n"); + } + { + std::ostringstream oss; + proxy.Call("gappixels", {}, -1, GET, oss); + REQUIRE(oss.str() == "gappixels 0\n"); + } + det.setGapPixelsinCallback(prev_val); + } else { + REQUIRE_THROWS(proxy.Call("gappixels", {}, -1, GET)); + } +} + /* Network Configuration (Detector<->Receiver) */ TEST_CASE("numinterfaces", "[.cmd][.new]") { @@ -1321,6 +1350,29 @@ TEST_CASE("udp_dstport2", "[.cmd][.new]") { } } +TEST_CASE("tengiga", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::EIGER || det_type == defs::CHIPTESTBOARD) { + auto tengiga = det.getTenGiga(); + det.setTenGiga(false); + + std::ostringstream oss1, oss2; + proxy.Call("tengiga", {"1"}, -1, PUT, oss1); + REQUIRE(oss1.str() == "tengiga 1\n"); + proxy.Call("tengiga", {}, -1, GET, oss2); + REQUIRE(oss2.str() == "tengiga 1\n"); + + for (int i = 0; i != det.size(); ++i) { + det.setTenGiga(tengiga[i], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("tengiga", {}, -1, GET)); + } +} + TEST_CASE("flowcontrol10g", "[.cmd][.new]") { Detector det; CmdProxy proxy(&det); @@ -1523,6 +1575,138 @@ TEST_CASE("user", "[.cmd]") { REQUIRE_THROWS(proxy.Call("user", {}, -1, PUT)); } +TEST_CASE("lock", "[.cmd]") { + Detector det; + CmdProxy proxy(&det); + { + std::ostringstream oss; + proxy.Call("lock", {"1"}, -1, PUT, oss); + REQUIRE(oss.str() == "lock 1\n"); + } + { + std::ostringstream oss; + proxy.Call("lock", {}, -1, GET, oss); + REQUIRE(oss.str() == "lock 1\n"); + } + { + std::ostringstream oss; + proxy.Call("lock", {"0"}, -1, PUT, oss); + REQUIRE(oss.str() == "lock 0\n"); + } +} + +TEST_CASE("nframes", "[.cmd]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::JUNGFRAU || det_type == defs::CHIPTESTBOARD) { + auto nframes = det.getNumberOfFramesFromStart().squash(); + std::ostringstream oss; + proxy.Call("nframes", {}, -1, GET, oss); + REQUIRE(oss.str() == "nframes " + std::to_string(nframes) + "\n"); + + } else { + REQUIRE_THROWS(proxy.Call("nframes", {}, -1, GET)); + } +} + +TEST_CASE("now", "[.cmd]") { + // TODO! can we test this? + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::JUNGFRAU || det_type == defs::CHIPTESTBOARD) { + std::ostringstream oss; + proxy.Call("now", {}, -1, GET, oss); + + // Get only + REQUIRE_THROWS(proxy.Call("now", {"2019"}, -1, PUT)); + } else { + REQUIRE_THROWS(proxy.Call("now", {}, -1, GET)); + } +} + +TEST_CASE("timestamp", "[.cmd]") { + // TODO! can we test this? + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::JUNGFRAU || det_type == defs::CHIPTESTBOARD) { + std::ostringstream oss; + proxy.Call("timestamp", {}, -1, GET, oss); + + // Get only + REQUIRE_THROWS(proxy.Call("timestamp", {"2019"}, -1, PUT)); + } else { + REQUIRE_THROWS(proxy.Call("timestamp", {}, -1, GET)); + } +} + +TEST_CASE("adcreg", "[.cmd]") { + // TODO! what is a safe value to use? + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::JUNGFRAU || det_type == defs::CHIPTESTBOARD || + det_type == defs::GOTTHARD) { + std::ostringstream oss; + proxy.Call("adcreg", {"0x0", "0"}, -1, PUT, oss); + REQUIRE(oss.str() == "adcreg [0x0, 0]\n"); + // This is a put only command + REQUIRE_THROWS(proxy.Call("adcreg", {}, -1, GET)); + } else { + REQUIRE_THROWS(proxy.Call("adcreg", {"0x0", "0"}, -1, PUT)); + REQUIRE_THROWS(proxy.Call("adcreg", {}, -1, GET)); + } +} + +TEST_CASE("bustest", "[.cmd]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::JUNGFRAU || det_type == defs::CHIPTESTBOARD || + det_type == defs::GOTTHARD) { + std::ostringstream oss; + proxy.Call("bustest", {}, -1, PUT, oss); + REQUIRE(oss.str() == "bustest successful\n"); + REQUIRE_THROWS(proxy.Call("bustest", {}, -1, GET)); + } else { + REQUIRE_THROWS(proxy.Call("bustest", {}, -1, GET)); + REQUIRE_THROWS(proxy.Call("bustest", {}, -1, PUT)); + } +} + +TEST_CASE("firmwaretest", "[.cmd]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::JUNGFRAU || det_type == defs::CHIPTESTBOARD || + det_type == defs::GOTTHARD) { + std::ostringstream oss; + proxy.Call("firmwaretest", {}, -1, PUT, oss); + REQUIRE(oss.str() == "firmwaretest successful\n"); + REQUIRE_THROWS(proxy.Call("firmwaretest", {}, -1, GET)); + } else { + REQUIRE_THROWS(proxy.Call("firmwaretest", {}, -1, GET)); + REQUIRE_THROWS(proxy.Call("firmwaretest", {}, -1, PUT)); + } +} + +TEST_CASE("resetfpga", "[.cmd]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::JUNGFRAU || det_type == defs::CHIPTESTBOARD) { + std::ostringstream oss; + proxy.Call("resetfpga", {}, -1, PUT, oss); + REQUIRE(oss.str() == "resetfpga successful\n"); + REQUIRE_THROWS(proxy.Call("resetfpga", {}, -1, GET)); + } else { + REQUIRE_THROWS(proxy.Call("resetfpga", {}, -1, GET)); + REQUIRE_THROWS(proxy.Call("resetfpga", {}, -1, PUT)); + } +} + // TEST_CASE("reg", "[.cmd]") { // if (test::type == defs::JUNGFRAU) { // { @@ -2191,105 +2375,6 @@ TEST_CASE("user", "[.cmd]") { // } // } -// TEST_CASE("vm_a", "[.cmd][.ctb]") { -// if (test::type == defs::CHIPTESTBOARD) { -// REQUIRE_NOTHROW(multiSlsDetectorClient("vm_a", GET)); -// REQUIRE_NOTHROW(multiSlsDetectorClient("vm_b", GET)); -// REQUIRE_NOTHROW(multiSlsDetectorClient("vm_c", GET)); -// REQUIRE_NOTHROW(multiSlsDetectorClient("vm_d", GET)); -// REQUIRE_NOTHROW(multiSlsDetectorClient("vm_io", GET)); -// REQUIRE_NOTHROW(multiSlsDetectorClient("im_a", GET)); -// REQUIRE_NOTHROW(multiSlsDetectorClient("im_b", GET)); -// REQUIRE_NOTHROW(multiSlsDetectorClient("im_c", GET)); -// REQUIRE_NOTHROW(multiSlsDetectorClient("im_d", GET)); -// REQUIRE_NOTHROW(multiSlsDetectorClient("im_io", GET)); -// } else { -// REQUIRE_THROWS(multiSlsDetectorClient("vm_a", GET)); -// REQUIRE_THROWS(multiSlsDetectorClient("vm_b", GET)); -// REQUIRE_THROWS(multiSlsDetectorClient("vm_c", GET)); -// REQUIRE_THROWS(multiSlsDetectorClient("vm_d", GET)); -// REQUIRE_THROWS(multiSlsDetectorClient("vm_io", GET)); -// REQUIRE_THROWS(multiSlsDetectorClient("im_a", GET)); -// REQUIRE_THROWS(multiSlsDetectorClient("im_b", GET)); -// REQUIRE_THROWS(multiSlsDetectorClient("im_c", GET)); -// REQUIRE_THROWS(multiSlsDetectorClient("im_d", GET)); -// REQUIRE_THROWS(multiSlsDetectorClient("im_io", GET)); -// } -// } - -// TEST_CASE("v_a", "[.cmd][.ctb]") { -// if (test::type == defs::CHIPTESTBOARD) { -// std::string s; -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("0:v_limit", GET, nullptr, -// oss)); s = oss.str(); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("v_limit 1500", PUT, -// nullptr, oss)); REQUIRE(oss.str() == "v_limit 1500\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("v_limit", GET, nullptr, -// oss)); REQUIRE(oss.str() == "v_limit 1500\n"); -// } -// REQUIRE_NOTHROW(multiSlsDetectorClient(s, PUT)); -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("0:v_a", GET, nullptr, -// oss)); s = oss.str(); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient(s, PUT, nullptr, oss)); -// REQUIRE(oss.str() == s); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("0:v_b", GET, nullptr, -// oss)); s = oss.str(); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient(s, PUT, nullptr, oss)); -// REQUIRE(oss.str() == s); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("0:v_c", GET, nullptr, -// oss)); s = oss.str(); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient(s, PUT, nullptr, oss)); -// REQUIRE(oss.str() == s); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("0:v_d", GET, nullptr, -// oss)); s = oss.str(); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient(s, PUT, nullptr, oss)); -// REQUIRE(oss.str() == s); -// } -// REQUIRE_NOTHROW(multiSlsDetectorClient("0:v_io", GET)); -// REQUIRE_NOTHROW(multiSlsDetectorClient("0:v_chip", GET)); // do not -// set vchip -// } else { -// REQUIRE_THROWS(multiSlsDetectorClient("v_limit", GET)); -// REQUIRE_THROWS(multiSlsDetectorClient("v_a", GET)); -// REQUIRE_THROWS(multiSlsDetectorClient("v_b", GET)); -// REQUIRE_THROWS(multiSlsDetectorClient("v_c", GET)); -// REQUIRE_THROWS(multiSlsDetectorClient("v_d", GET)); -// REQUIRE_THROWS(multiSlsDetectorClient("v_io", GET)); -// REQUIRE_THROWS(multiSlsDetectorClient("v_chip", GET)); -// } -// } - // TEST_CASE("adcvpp", "[.cmd][.ctb]") { // if (test::type == defs::CHIPTESTBOARD) { // int prev_val = 0; @@ -2483,74 +2568,6 @@ TEST_CASE("user", "[.cmd]") { // } // } -// TEST_CASE("extsig", "[.cmd][.gotthard]") { -// if (test::type == defs::GOTTHARD) { -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("extsig -// trigger_in_falling_edge", PUT, nullptr, oss)); REQUIRE(oss.str() -// == "extsig trigger_in_falling_edge\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("extsig -// trigger_in_rising_edge", PUT, nullptr, oss)); REQUIRE(oss.str() -// == "extsig trigger_in_rising_edge\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("extsig", GET, nullptr, -// oss)); REQUIRE(oss.str() == "extsig trigger_in_rising_edge\n"); -// } -// REQUIRE_THROWS(multiSlsDetectorClient("extsig gating", PUT)); -// } else { -// REQUIRE_THROWS(multiSlsDetectorClient("extsig", GET)); -// } -// } - -// TEST_CASE("exptimel", "[.cmd][.gotthard]") { -// if (test::type == defs::GOTTHARD) { -// REQUIRE_NOTHROW(multiSlsDetectorClient("frames 1", PUT)); -// REQUIRE_NOTHROW(multiSlsDetectorClient("exptime 5 s", PUT)); -// REQUIRE_NOTHROW(multiSlsDetectorClient("start", PUT)); -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("0:exptimel s", GET, -// nullptr, oss)); std::string st = oss.str(); std::string s = -// st.erase (0, strlen("exptimel ")); double val = std::stod(s); -// REQUIRE(val >= 0); -// REQUIRE(val < 1000); -// } -// REQUIRE_NOTHROW(multiSlsDetectorClient("stop", PUT)); -// REQUIRE_NOTHROW(multiSlsDetectorClient("exptime 1 ms", PUT)); -// } else { -// REQUIRE_THROWS(multiSlsDetectorClient("exptimel", GET)); -// } -// } - -// TEST_CASE("periodl", "[.cmd][.gotthard]") { -// if (test::type == defs::GOTTHARD || test::type == -// defs::JUNGFRAU || test::type == -// defs::CHIPTESTBOARD) { -// REQUIRE_NOTHROW(multiSlsDetectorClient("frames 2", PUT)); -// REQUIRE_NOTHROW(multiSlsDetectorClient("period 5", PUT)); -// REQUIRE_NOTHROW(multiSlsDetectorClient("start", PUT)); -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("0:periodl s", GET, -// nullptr, oss)); std::string st = oss.str(); std::string s = -// st.erase (0, strlen("periodl ")); double val = std::stod(s); -// REQUIRE(val >= 0); -// REQUIRE(val < 1000); -// } -// REQUIRE_NOTHROW(multiSlsDetectorClient("stop", PUT)); -// REQUIRE_NOTHROW(multiSlsDetectorClient("period 1 s", PUT)); -// REQUIRE_NOTHROW(multiSlsDetectorClient("frames 1", PUT)); -// } else { -// REQUIRE_THROWS(multiSlsDetectorClient("periodl", GET)); -// } -// } - // TEST_CASE("roi", "[.cmd][.gotthard]") { // if (test::type == defs::GOTTHARD) { // { @@ -2575,579 +2592,6 @@ TEST_CASE("user", "[.cmd]") { // } // } -// TEST_CASE("storagecell_delay", "[.cmd][.jungfrau]") { -// if (test::type == defs::JUNGFRAU) { -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("storagecell_delay 1.62ms", -// PUT, nullptr, oss)); REQUIRE(oss.str() == -// "storagecell_delay 1.62ms\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("storagecell_delay", GET, -// nullptr, oss)); REQUIRE(oss.str() == -// "storagecell_delay 1.62ms\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("storagecell_delay 0", -// PUT, nullptr, oss)); REQUIRE(oss.str() == "storagecell_delay -// 0\n"); -// } -// REQUIRE_THROWS(multiSlsDetectorClient("storagecell_delay 1638376ns", -// PUT)); } else { -// REQUIRE_THROWS(multiSlsDetectorClient("storagecell_delay", GET)); -// } -// } - -// TEST_CASE("storagecell_start", "[.cmd][.jungfrau]") { -// if (test::type == defs::JUNGFRAU) { -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("storagecell_start 1", -// PUT, nullptr, oss)); REQUIRE(oss.str() == "storagecell_start -// 1\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("storagecell_start 0", -// PUT, nullptr, oss)); REQUIRE(oss.str() == "storagecell_start -// 0\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("storagecell_start 15", -// PUT, nullptr, oss)); REQUIRE(oss.str() == "storagecell_start -// 15\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("storagecell_start", GET, -// nullptr, oss)); REQUIRE(oss.str() == "storagecell_start 15\n"); -// } -// REQUIRE_THROWS(multiSlsDetectorClient("storagecell_start 16", PUT)); -// } else { -// REQUIRE_THROWS(multiSlsDetectorClient("storagecell_start", GET)); -// } -// } - -// TEST_CASE("storagecells", "[.cmd][.jungfrau]") { -// if (test::type == defs::JUNGFRAU) { -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("storagecells 1", PUT, -// nullptr, oss)); REQUIRE(oss.str() == "storagecells 1\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("storagecells 15", PUT, -// nullptr, oss)); REQUIRE(oss.str() == "storagecells 15\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("storagecells 0", PUT, -// nullptr, oss)); REQUIRE(oss.str() == "storagecells 0\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("storagecells", GET, -// nullptr, oss)); REQUIRE(oss.str() == "storagecells 0\n"); -// } -// REQUIRE_THROWS(multiSlsDetectorClient("storagecells 16", PUT)); -// } else { -// REQUIRE_THROWS(multiSlsDetectorClient("storagecells", GET)); -// } -// } - -// TEST_CASE("auto_comp_disable", "[.cmd][.jungfrau]") { -// if (test::type == defs::JUNGFRAU) { -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("auto_comp_disable 1", -// PUT, nullptr, oss)); REQUIRE(oss.str() == "auto_comp_disable -// 1\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("auto_comp_disable 0", -// PUT, nullptr, oss)); REQUIRE(oss.str() == "auto_comp_disable -// 0\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("auto_comp_disable", GET, -// nullptr, oss)); REQUIRE(oss.str() == "auto_comp_disable 0\n"); -// } -// } else { -// REQUIRE_THROWS(multiSlsDetectorClient("auto_comp_disable", GET)); -// } -// } - -// TEST_CASE("temp_", "[.cmd][.jungfrau]") { -// if (test::type == defs::JUNGFRAU) { -// std::string s; -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("0:temp_threshold", GET, -// nullptr, oss)); s = oss.str(); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient(s, PUT, nullptr, oss)); -// REQUIRE(oss.str() == s); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("temp_control 1", PUT, -// nullptr, oss)); REQUIRE(oss.str() == "temp_control 1\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("temp_control 0", PUT, -// nullptr, oss)); REQUIRE(oss.str() == "temp_control 0\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("temp_control", GET, -// nullptr, oss)); REQUIRE(oss.str() == "temp_control 0\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("temp_event", GET, -// nullptr, oss)); REQUIRE(oss.str() == "temp_event 0\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("temp_event 0", PUT, -// nullptr, oss)); REQUIRE(oss.str() == "temp_event cleared\n"); -// } -// REQUIRE_THROWS(multiSlsDetectorClient("temp_event 1", PUT)); -// } else { -// REQUIRE_THROWS(multiSlsDetectorClient("temp_threshold", GET)); -// REQUIRE_THROWS(multiSlsDetectorClient("temp_control", GET)); -// REQUIRE_THROWS(multiSlsDetectorClient("temp_event", GET)); -// } -// } - -// TEST_CASE("pulse", "[.cmd][.eiger]") { -// REQUIRE_THROWS(multiSlsDetectorClient("pulse", GET)); -// REQUIRE_THROWS(multiSlsDetectorClient("pulsenmove", GET)); -// REQUIRE_THROWS(multiSlsDetectorClient("pulsechip", GET)); -// if (test::type == defs::EIGER) { -// REQUIRE_NOTHROW(multiSlsDetectorClient("pulse 1 1 5", PUT)); -// REQUIRE_NOTHROW(multiSlsDetectorClient("pulsenmove 1 1 5", PUT)); -// REQUIRE_NOTHROW(multiSlsDetectorClient("pulsechip 1", PUT)); -// } else { -// REQUIRE_THROWS(multiSlsDetectorClient("pulse 1 1 5", PUT)); -// REQUIRE_THROWS(multiSlsDetectorClient("pulsenmove 1 1 5", PUT)); -// REQUIRE_THROWS(multiSlsDetectorClient("pulsechip 1", PUT)); -// } -// } - -// TEST_CASE("partialreset", "[.cmd][.eiger]") { -// if (test::type == defs::EIGER) { -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("partialreset 1", PUT, -// nullptr, oss)); REQUIRE(oss.str() == "partialreset 1\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("partialreset", GET, -// nullptr, oss)); REQUIRE(oss.str() == "partialreset 1\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("partialreset 0", PUT, -// nullptr, oss)); REQUIRE(oss.str() == "partialreset 0\n"); -// } -// REQUIRE_NOTHROW(multiSlsDetectorClient("partialreset 1", PUT)); -// REQUIRE_NOTHROW(multiSlsDetectorClient("partialreset 0", PUT)); -// } else { -// REQUIRE_THROWS(multiSlsDetectorClient("partialreset", GET)); -// } -// } - -// TEST_CASE("measuredsubperiod", "[.cmd][.eiger]") { -// if (test::type == defs::EIGER) { -// REQUIRE_NOTHROW(multiSlsDetectorClient("frames 1", PUT)); -// REQUIRE_NOTHROW(multiSlsDetectorClient("dr 32", PUT)); -// REQUIRE_NOTHROW(multiSlsDetectorClient("start", PUT)); -// sleep(3); -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("0:measuredsubperiod ms", -// GET, nullptr, oss)); std::string st = oss.str(); std::string s = -// st.erase (0, strlen("measuredsubperiod ")); double val = -// std::stod(s); REQUIRE(val >= 0); REQUIRE(val < 1000); -// } -// REQUIRE_NOTHROW(multiSlsDetectorClient("dr 16", PUT)); -// } else { -// REQUIRE_THROWS(multiSlsDetectorClient("measuredsubperiod", GET)); -// } -// } - -// TEST_CASE("measuredperiod", "[.cmd][.eiger]") { -// if (test::type == defs::EIGER) { -// REQUIRE_NOTHROW(multiSlsDetectorClient("frames 2", PUT)); -// REQUIRE_NOTHROW(multiSlsDetectorClient("period 1", PUT)); -// REQUIRE_NOTHROW(multiSlsDetectorClient("start", PUT)); -// sleep(3); -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("0:measuredperiod", GET, -// nullptr, oss)); std::string st = oss.str(); std::string s = -// st.erase (0, strlen("measuredperiod ")); double val = -// std::stod(s); REQUIRE(val >= 1.0); REQUIRE(val < 2.0); -// } -// REQUIRE_NOTHROW(multiSlsDetectorClient("frames 1", PUT)); -// } else { -// REQUIRE_THROWS(multiSlsDetectorClient("measuredperiod", GET)); -// } -// } - -// TEST_CASE("readnlines", "[.cmd][.eiger]") { -// if (test::type == defs::EIGER) { -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("readnlines 256", PUT, -// nullptr, oss)); REQUIRE(oss.str() == "readnlines 256\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("readnlines", GET, -// nullptr, oss)); REQUIRE(oss.str() == "readnlines 256\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("readnlines 16", PUT, -// nullptr, oss)); REQUIRE(oss.str() == "readnlines 16\n"); -// } -// REQUIRE_THROWS(multiSlsDetectorClient("readnlines 0", PUT)); -// REQUIRE_NOTHROW(multiSlsDetectorClient("readnlines 256", PUT)); -// } else { -// REQUIRE_THROWS(multiSlsDetectorClient("readnlines", GET)); -// } -// } - -// TEST_CASE("ratecorr", "[.cmd][.eiger]") { -// if (test::type == defs::EIGER) { -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("ratecorr 120", PUT, -// nullptr, oss)); REQUIRE(oss.str() == "ratecorr 120ns\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("ratecorr", GET, nullptr, -// oss)); REQUIRE(oss.str() == "ratecorr 120ns\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("ratecorr 0", PUT, -// nullptr, oss)); REQUIRE(oss.str() == "ratecorr 0ns\n"); -// } -// REQUIRE_NOTHROW(multiSlsDetectorClient("ratecorr -1", PUT)); -// REQUIRE_NOTHROW(multiSlsDetectorClient("ratecorr 0", PUT)); -// } else { -// REQUIRE_THROWS(multiSlsDetectorClient("ratecorr", GET)); -// } -// } - -// TEST_CASE("flippeddatax", "[.cmd][.eiger]") { -// if (test::type == defs::EIGER) { -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("0:flippeddatax", GET, -// nullptr, oss)); REQUIRE(oss.str() == "flippeddatax 0\n"); -// } -// DetectorImpl d; -// if (d.size() > 1) { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("1:flippeddatax", GET, -// nullptr, oss)); REQUIRE(oss.str() == "flippeddatax 1\n"); -// } -// } else { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("flippeddatax", GET, nullptr, -// oss)); REQUIRE(oss.str() == "flippeddatax 0\n"); -// } -// } - -// TEST_CASE("parallel", "[.cmd][.eiger]") { -// if (test::type == defs::EIGER) { -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("parallel 1", PUT, -// nullptr, oss)); REQUIRE(oss.str() == "parallel 1\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("parallel", GET, nullptr, -// oss)); REQUIRE(oss.str() == "parallel 1\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("parallel 0", PUT, -// nullptr, oss)); REQUIRE(oss.str() == "parallel 0\n"); -// } -// } else { -// REQUIRE_THROWS(multiSlsDetectorClient("parallel", GET)); -// } -// } - -// TEST_CASE("gappixels", "[.cmd][.eiger]") { -// if (test::type == defs::EIGER) { -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("gappixels 1", PUT, -// nullptr, oss)); REQUIRE(oss.str() == "gappixels 1\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("gappixels", GET, nullptr, -// oss)); REQUIRE(oss.str() == "gappixels 1\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("gappixels 0", PUT, -// nullptr, oss)); REQUIRE(oss.str() == "gappixels 0\n"); -// } -// } else { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("gappixels", GET, nullptr, -// oss)); REQUIRE(oss.str() == "gappixels 0\n"); -// REQUIRE_THROWS(multiSlsDetectorClient("gappixels 1", PUT)); -// } -// } - -// TEST_CASE("settingspath", "[.cmd][.eiger]") { -// std::string s; -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("settingspath", GET, nullptr, -// oss)); s = oss.str(); REQUIRE_NOTHROW(multiSlsDetectorClient(s, PUT)); -// } - -// TEST_CASE("txndelay", "[.cmd][.eiger][.jungfrau]") { -// if (test::type == defs::EIGER) { -// { -// REQUIRE_NOTHROW(multiSlsDetectorClient("0:txndelay_frame 50000", -// PUT)); std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("0:txndelay_frame", GET, -// nullptr, oss)); REQUIRE(oss.str() == "txndelay_frame 50000\n"); -// } -// { -// REQUIRE_NOTHROW(multiSlsDetectorClient("txndelay_frame 0", PUT)); -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("0:txndelay_frame", GET, -// nullptr, oss)); REQUIRE(oss.str() == "txndelay_frame 0\n"); -// } -// { -// REQUIRE_NOTHROW(multiSlsDetectorClient("0:txndelay_left 50000", -// PUT)); std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("0:txndelay_left", GET, -// nullptr, oss)); REQUIRE(oss.str() == "txndelay_left 50000\n"); -// } -// { -// REQUIRE_NOTHROW(multiSlsDetectorClient("txndelay_left 0", PUT)); -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("0:txndelay_left", GET, -// nullptr, oss)); REQUIRE(oss.str() == "txndelay_left 0\n"); -// } -// { -// REQUIRE_NOTHROW(multiSlsDetectorClient("0:txndelay_right 50000", -// PUT)); std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("0:txndelay_right", GET, -// nullptr, oss)); REQUIRE(oss.str() == "txndelay_right 50000\n"); -// } -// { -// REQUIRE_NOTHROW(multiSlsDetectorClient("txndelay_right 0", PUT)); -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("0:txndelay_right", GET, -// nullptr, oss)); REQUIRE(oss.str() == "txndelay_right 0\n"); -// } -// } else if (test::type == defs::JUNGFRAU) { -// { -// REQUIRE_NOTHROW(multiSlsDetectorClient("txndelay_frame 5", PUT)); -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("0:txndelay_frame", GET, -// nullptr, oss)); REQUIRE(oss.str() == "txndelay_frame 5\n"); -// } -// { -// REQUIRE_NOTHROW(multiSlsDetectorClient("txndelay_frame 0", PUT)); -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("0:txndelay_frame", GET, -// nullptr, oss)); REQUIRE(oss.str() == "txndelay_frame 0\n"); -// } -// REQUIRE_THROWS(multiSlsDetectorClient("txndelay_frame 32", PUT)); -// REQUIRE_THROWS(multiSlsDetectorClient("txndelay_left 32", PUT)); -// REQUIRE_THROWS(multiSlsDetectorClient("txndelay_right 32", PUT)); -// } else { -// REQUIRE_THROWS(multiSlsDetectorClient("txndelay_frame", GET)); -// REQUIRE_THROWS(multiSlsDetectorClient("txndelay_left 32", PUT)); -// REQUIRE_THROWS(multiSlsDetectorClient("txndelay_right 32", PUT)); -// } -// } - -// TEST_CASE("flowcontrol_10g", "[.cmd][.eiger][.jungfrau]") { -// if (test::type == defs::EIGER || test::type == -// defs::JUNGFRAU) { -// { -// REQUIRE_NOTHROW(multiSlsDetectorClient("flowcontrol_10g 1", -// PUT)); std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("0:flowcontrol_10g", GET, -// nullptr, oss)); REQUIRE(oss.str() == "flowcontrol_10g 1\n"); -// } -// { -// REQUIRE_NOTHROW(multiSlsDetectorClient("flowcontrol_10g 0", -// PUT)); std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("0:flowcontrol_10g", GET, -// nullptr, oss)); REQUIRE(oss.str() == "flowcontrol_10g 0\n"); -// } -// } else { -// REQUIRE_THROWS(multiSlsDetectorClient("flowcontrol_10g", GET)); -// } -// } - -// TEST_CASE("network", "[.cmd]") { -// /* {TODO custom srcip in globals -// REQUIRE_NOTHROW(multiSlsDetectorClient("0:udp_srcip 129.129.205.203", -// PUT)); std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("0:udp_srcip", GET, nullptr, -// oss)); REQUIRE(oss.str() == "udp_srcip 129.129.205.203\n"); -// }*/ -// std::string udp_dstip; -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("0:udp_dstip", GET, nullptr, -// oss)); udp_dstip = oss.str(); -// } -// { -// REQUIRE_NOTHROW(multiSlsDetectorClient(udp_dstip, PUT)); -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("0:udp_dstip", GET, nullptr, -// oss)); REQUIRE(oss.str() == udp_dstip); -// } -// /* {TODO custom dstip in globals -// REQUIRE_NOTHROW(multiSlsDetectorClient("0:udp_dstmac -// 10:e7:c6:48:bd:3f", PUT)); std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("0:udp_dstmac", GET, nullptr, -// oss)); REQUIRE(oss.str() == "udp_dstmac 10:e7:c6:48:bd:3f\n"); -// } */ -// { -// REQUIRE_NOTHROW(multiSlsDetectorClient("0:udp_dstport 6200", PUT)); -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("0:udp_dstport", GET, nullptr, -// oss)); REQUIRE(oss.str() == "udp_dstport 6200\n"); -// } -// { -// DetectorImpl d; -// int socketsperdetector = 1; -// if (test::type == defs::EIGER) { -// socketsperdetector *= 2; -// } else if (test::type == defs::JUNGFRAU) { -// REQUIRE_NOTHROW(multiSlsDetectorClient("numinterfaces 2", PUT)); -// socketsperdetector *= 2; -// } -// int port = 5500; -// REQUIRE_NOTHROW(multiSlsDetectorClient("udp_dstport " + -// std::to_string(port), PUT)); for (int i = 0; i != d.size(); ++i) { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient(std::to_string(i) + -// ":udp_dstport", GET, nullptr, oss)); REQUIRE(oss.str() == -// "udp_dstport " + std::to_string(port + i * socketsperdetector) + -// '\n'); -// } -// port = 50001; -// REQUIRE_NOTHROW(multiSlsDetectorClient("udp_dstport " + -// std::to_string(port), PUT)); for (int i = 0; i != d.size(); ++i) { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient(std::to_string(i) + -// ":udp_dstport", GET, nullptr, oss)); REQUIRE(oss.str() == -// "udp_dstport " + std::to_string(port + i * socketsperdetector) + -// '\n'); -// } -// if (test::type == defs::JUNGFRAU) { -// REQUIRE_NOTHROW(multiSlsDetectorClient("numinterfaces 1", PUT)); -// } -// REQUIRE_NOTHROW(multiSlsDetectorClient("udp_dstport 50001", PUT)); -// } -// REQUIRE_THROWS(multiSlsDetectorClient("udp_srcip 0.0.0.0", PUT)); -// REQUIRE_THROWS(multiSlsDetectorClient("udp_srcip 124586954", PUT)); -// REQUIRE_THROWS(multiSlsDetectorClient("udp_srcip 999.999.0.0.0.5", PUT)); - -// if (test::type == defs::JUNGFRAU) { -// /* {TODO custom srcip2 in globals -// REQUIRE_NOTHROW(multiSlsDetectorClient("0:udp_srcip2 -// 129.129.205.203", PUT)); std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("0:udp_srcip2", GET, -// nullptr, oss)); REQUIRE(oss.str() == "udp_srcip2 -// 129.129.205.203\n"); -// }*/ -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("0:udp_dstip2", GET, -// nullptr, oss)); udp_dstip = oss.str(); -// } -// { -// REQUIRE_NOTHROW(multiSlsDetectorClient(udp_dstip, PUT)); -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("0:udp_dstip2", GET, -// nullptr, oss)); REQUIRE(oss.str() == udp_dstip); -// } -// { -// REQUIRE_NOTHROW(multiSlsDetectorClient("0:udp_dstmac2 -// 10:e7:c6:48:bd:3f", PUT)); std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("0:udp_dstmac2", GET, -// nullptr, oss)); REQUIRE(oss.str() == "udp_dstmac2 -// 10:e7:c6:48:bd:3f\n"); -// } -// { -// REQUIRE_NOTHROW(multiSlsDetectorClient("0:udp_dstport2 6400", -// PUT)); std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("0:udp_dstport2", GET, -// nullptr, oss)); REQUIRE(oss.str() == "udp_dstport2 6400\n"); -// } -// REQUIRE_NOTHROW(multiSlsDetectorClient("udp_dstport2 50002", PUT)); -// } else if (test::type == defs::EIGER) { -// { -// REQUIRE_NOTHROW(multiSlsDetectorClient("0:udp_dstport2 6400", -// PUT)); std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("0:udp_dstport2", GET, -// nullptr, oss)); REQUIRE(oss.str() == "udp_dstport2 6400\n"); -// } -// REQUIRE_NOTHROW(multiSlsDetectorClient("udp_dstport2 50002", PUT)); -// } else { -// REQUIRE_THROWS(multiSlsDetectorClient("udp_srcip2", GET)); -// REQUIRE_THROWS(multiSlsDetectorClient("udp_dstip2", GET)); -// REQUIRE_THROWS(multiSlsDetectorClient("udp_srcmac2", GET)); -// REQUIRE_THROWS(multiSlsDetectorClient("udp_dstmac2", GET)); -// REQUIRE_THROWS(multiSlsDetectorClient("udp_dstport2", GET)); -// } -// } - -// TEST_CASE("selinterface", "[.cmd][.jungfrau]") { -// if (test::type == defs::JUNGFRAU) { -// REQUIRE_NOTHROW(multiSlsDetectorClient("numinterfaces 1", PUT)); -// { -// REQUIRE_NOTHROW(multiSlsDetectorClient("selinterface 0", PUT)); -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("0:selinterface", GET, -// nullptr, oss)); REQUIRE(oss.str() == "selinterface 0\n"); -// } -// { -// REQUIRE_NOTHROW(multiSlsDetectorClient("selinterface 1", PUT)); -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("0:selinterface", GET, -// nullptr, oss)); REQUIRE(oss.str() == "selinterface 1\n"); -// } -// REQUIRE_THROWS(multiSlsDetectorClient("selinterface 2", PUT)); -// } else { -// REQUIRE_THROWS(multiSlsDetectorClient("selinterface", GET)); -// } -// } - // TEST_CASE("adc", "[.cmd][.ctb]") { // if (test::type != defs::CHIPTESTBOARD) { // REQUIRE_THROWS(multiSlsDetectorClient("adc 8", GET)); @@ -3253,89 +2697,3 @@ TEST_CASE("user", "[.cmd]") { // std::to_string(prev_runclk), PUT)); // } // } - -// TEST_CASE("threshold", "[.cmd]") { -// if (test::type == defs::EIGER) { -// REQUIRE_NOTHROW(multiSlsDetectorClient("threshold 6400 standard", -// PUT)); REQUIRE_NOTHROW(multiSlsDetectorClient("thresholdnotb 6400 -// standard", PUT)); REQUIRE_NOTHROW(multiSlsDetectorClient("threshold -// 6400", PUT)); REQUIRE_NOTHROW(multiSlsDetectorClient("thresholdnotb -// 6400", PUT)); -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("threshold", GET, nullptr, -// oss)); std::string s = (oss.str()).erase (0, strlen("threshold -// ")); REQUIRE(std::stoi(s) == 6400); -// REQUIRE_THROWS(multiSlsDetectorClient("thresholdnotb", GET)); -// } -// } else { -// REQUIRE_THROWS(multiSlsDetectorClient("threshold", GET)); -// REQUIRE_THROWS(multiSlsDetectorClient("thresholdnotb", GET)); -// } -// } - -// TEST_CASE("detsize", "[.cmd]") { -// CHECK_NOTHROW(multiSlsDetectorClient("detsize", GET)); -// } - -// TEST_CASE("type", "[.cmd]") { -// CHECK_NOTHROW(multiSlsDetectorClient("type", GET)); -// } - -// TEST_CASE("status", "[.cmd]") { -// Detector det; -// CmdProxy proxy(&det); - -// proxy.Call("timing", {"auto"}, -1, PUT); -// proxy.Call("frames", {"10"}, -1, PUT); -// proxy.Call("period", {"1"}, -1, PUT); - -// { -// std::ostringstream oss; -// proxy.Call("start", {}, -1, PUT, oss); -// REQUIRE(oss.str() == "start successful\n"); -// } -// { -// std::ostringstream oss; -// proxy.Call("status", {}, -1, GET, oss); -// REQUIRE(oss.str() == "status running\n"); -// } -// { -// std::ostringstream oss; -// proxy.Call("stop", {}, -1, PUT, oss); -// REQUIRE(oss.str() == "stop successful\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("status", GET, nullptr, oss)); -// REQUIRE(oss.str() != "status running\n"); -// REQUIRE(oss.str() != "status waiting\n"); -// REQUIRE(oss.str() != "status transmitting\n"); -// } -// REQUIRE_NOTHROW(multiSlsDetectorClient("frames 1", PUT)); -// proxy.Call("frames", {"1"}, -1, PUT); -// } - -TEST_CASE("lock", "[.cmd]") { - Detector det; - CmdProxy proxy(&det); - { - std::ostringstream oss; - proxy.Call("lock", {"1"}, -1, PUT, oss); - REQUIRE(oss.str() == "lock 1\n"); - } - { - std::ostringstream oss; - proxy.Call("lock", {}, -1, GET, oss); - REQUIRE(oss.str() == "lock 1\n"); - } - { - std::ostringstream oss; - proxy.Call("lock", {"0"}, -1, PUT, oss); - REQUIRE(oss.str() == "lock 0\n"); - } -} - -// TEST_CASE("lastclient", "[.cmd]") { -// REQUIRE_NOTHROW(multiSlsDetectorClient("lastclient", GET)); -// } From 223e24f9249635be758ab5446ec3f4e54993275b Mon Sep 17 00:00:00 2001 From: Dhanya Thattil Date: Wed, 3 Jun 2020 14:56:24 +0200 Subject: [PATCH 06/13] WIP --- .../ctbDetectorServer/slsDetectorFunctionList.c | 3 --- .../slsDetectorFunctionList.c | 3 --- slsDetectorSoftware/src/DetectorImpl.cpp | 2 +- slsDetectorSoftware/tests/test-CmdProxy-eiger.cpp | 13 +++++++++++-- slsDetectorSoftware/tests/test-CmdProxy.cpp | 15 +++++++++++++-- 5 files changed, 25 insertions(+), 11 deletions(-) diff --git a/slsDetectorServers/ctbDetectorServer/slsDetectorFunctionList.c b/slsDetectorServers/ctbDetectorServer/slsDetectorFunctionList.c index 98bf99f1f..7e72e7ddb 100644 --- a/slsDetectorServers/ctbDetectorServer/slsDetectorFunctionList.c +++ b/slsDetectorServers/ctbDetectorServer/slsDetectorFunctionList.c @@ -1622,9 +1622,6 @@ int setDetectorPosition(int pos[]) { int *getDetectorPosition() { return detPos; } int enableTenGigabitEthernet(int val) { -#ifdef VIRTUAL - return 0; -#endif uint32_t addr = CONFIG_REG; // set diff --git a/slsDetectorServers/moenchDetectorServer/slsDetectorFunctionList.c b/slsDetectorServers/moenchDetectorServer/slsDetectorFunctionList.c index aff1f21b7..7f4aa226a 100644 --- a/slsDetectorServers/moenchDetectorServer/slsDetectorFunctionList.c +++ b/slsDetectorServers/moenchDetectorServer/slsDetectorFunctionList.c @@ -1255,9 +1255,6 @@ int setDetectorPosition(int pos[]) { int *getDetectorPosition() { return detPos; } int enableTenGigabitEthernet(int val) { -#ifdef VIRTUAL - return 0; -#endif uint32_t addr = CONFIG_REG; // set diff --git a/slsDetectorSoftware/src/DetectorImpl.cpp b/slsDetectorSoftware/src/DetectorImpl.cpp index d4308c4ce..bf9dbf451 100644 --- a/slsDetectorSoftware/src/DetectorImpl.cpp +++ b/slsDetectorSoftware/src/DetectorImpl.cpp @@ -357,7 +357,7 @@ void DetectorImpl::setGapPixelsinCallback(const bool enable) { break; default: throw RuntimeError("Gap Pixels is not implemented for " + - multi_shm()->multiDetectorType); + ToString(multi_shm()->multiDetectorType)); } } multi_shm()->gapPixels = enable; diff --git a/slsDetectorSoftware/tests/test-CmdProxy-eiger.cpp b/slsDetectorSoftware/tests/test-CmdProxy-eiger.cpp index 1a9b7b859..c2752e03d 100644 --- a/slsDetectorSoftware/tests/test-CmdProxy-eiger.cpp +++ b/slsDetectorSoftware/tests/test-CmdProxy-eiger.cpp @@ -320,8 +320,6 @@ TEST_CASE("dr", "[.cmd][.new]") { CmdProxy proxy(&det); auto det_type = det.getDetectorType().squash(); if (det_type == defs::EIGER) { - // The only detector currently supporting setting dr - // is EIGER? auto dr = det.getDynamicRange().squash(); std::array vals{4, 8, 16, 32}; for (const auto val : vals) { @@ -332,6 +330,17 @@ TEST_CASE("dr", "[.cmd][.new]") { REQUIRE(oss2.str() == "dr " + std::to_string(val) + '\n'); } det.setDynamicRange(dr); + } else if (det_type == defs::MYTHEN3) { + // not updated in firmware to support anything other than 32 at the + // moment + std::ostringstream oss1, oss2; + proxy.Call("dr", {"32"}, -1, PUT, oss1); + REQUIRE(oss1.str() == "dr 32\n"); + proxy.Call("dr", {"32"}, -1, PUT, oss2); + REQUIRE(oss2.str() == "dr 32\n"); + REQUIRE_THROWS(proxy.Call("dr", {"4"}, -1, PUT)); + REQUIRE_THROWS(proxy.Call("dr", {"8"}, -1, PUT)); + REQUIRE_THROWS(proxy.Call("dr", {"16"}, -1, PUT)); } else { // For the other detectors we should get an error message // except for dr 16 diff --git a/slsDetectorSoftware/tests/test-CmdProxy.cpp b/slsDetectorSoftware/tests/test-CmdProxy.cpp index 602c65ae1..bb5ec6828 100644 --- a/slsDetectorSoftware/tests/test-CmdProxy.cpp +++ b/slsDetectorSoftware/tests/test-CmdProxy.cpp @@ -1173,7 +1173,17 @@ TEST_CASE("gappixels", "[.cmd][.new]") { } det.setGapPixelsinCallback(prev_val); } else { - REQUIRE_THROWS(proxy.Call("gappixels", {}, -1, GET)); + { + std::ostringstream oss; + proxy.Call("gappixels", {}, -1, GET, oss); + REQUIRE(oss.str() == "gappixels 0\n"); + } + { + std::ostringstream oss; + proxy.Call("gappixels", {"0"}, -1, PUT, oss); + REQUIRE(oss.str() == "gappixels 0\n"); + } + REQUIRE_THROWS(proxy.Call("gappixels", {"1"}, -1, PUT)); } } @@ -1355,7 +1365,8 @@ TEST_CASE("tengiga", "[.cmd][.new]") { CmdProxy proxy(&det); auto det_type = det.getDetectorType().squash(); - if (det_type == defs::EIGER || det_type == defs::CHIPTESTBOARD) { + if (det_type == defs::EIGER || det_type == defs::CHIPTESTBOARD || + det_type == defs::MOENCH) { auto tengiga = det.getTenGiga(); det.setTenGiga(false); From 3bdc8e95ce2937044f788eaa5ab2fe17e6016025 Mon Sep 17 00:00:00 2001 From: Dhanya Thattil Date: Wed, 3 Jun 2020 16:10:47 +0200 Subject: [PATCH 07/13] WIP --- slsDetectorSoftware/src/CmdProxy.cpp | 2 +- .../tests/test-CmdProxy-gotthard.cpp | 59 +++ .../tests/test-CmdProxy-gotthard2.cpp | 354 ++++++++++-------- .../tests/test-CmdProxy-mythen3.cpp | 244 +++++++++++- slsDetectorSoftware/tests/test-CmdProxy.cpp | 24 -- 5 files changed, 493 insertions(+), 190 deletions(-) diff --git a/slsDetectorSoftware/src/CmdProxy.cpp b/slsDetectorSoftware/src/CmdProxy.cpp index f65ccf1b8..d09090812 100644 --- a/slsDetectorSoftware/src/CmdProxy.cpp +++ b/slsDetectorSoftware/src/CmdProxy.cpp @@ -1527,7 +1527,7 @@ std::string CmdProxy::ROI(int action) { t.xmin = StringTo(args[0]); t.xmax = StringTo(args[1]); det->setROI(t, det_id); - os << '[' << t.xmin << ", " << t.xmax << "] \n"; + os << '[' << t.xmin << ", " << t.xmax << "]\n"; } else { throw sls::RuntimeError("Unknown action"); } diff --git a/slsDetectorSoftware/tests/test-CmdProxy-gotthard.cpp b/slsDetectorSoftware/tests/test-CmdProxy-gotthard.cpp index 8528cecf2..189ad6741 100644 --- a/slsDetectorSoftware/tests/test-CmdProxy-gotthard.cpp +++ b/slsDetectorSoftware/tests/test-CmdProxy-gotthard.cpp @@ -94,3 +94,62 @@ TEST_CASE("Setting and reading back GOTTHARD dacs", "[.cmd][.dacs][.new]") { REQUIRE_THROWS(proxy.Call("vcom_adc2", {}, -1, GET)); } } + +/* Gotthard Specific */ + +TEST_CASE("roi", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + + if (det_type == defs::GOTTHARD) { + auto prev_val = det.getROI(); + { + std::ostringstream oss; + proxy.Call("roi", {"0", "255"}, -1, PUT, oss); + REQUIRE(oss.str() == "roi [0, 255]\n"); + } + { + std::ostringstream oss; + proxy.Call("roi", {"256", "511"}, -1, PUT, oss); + REQUIRE(oss.str() == "roi [256, 511]\n"); + } + REQUIRE_THROWS(proxy.Call("roi", {"0", "256"}, -1, PUT)); + for (int i = 0; i != det.size(); ++i) { + det.setROI(prev_val[i], i); + } + } else { + REQUIRE_THROWS(proxy.Call("roi", {}, -1, GET)); + } +} + +TEST_CASE("clearroi", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + + if (det_type == defs::GOTTHARD) { + auto prev_val = det.getROI(); + { + std::ostringstream oss; + proxy.Call("clearroi", {}, -1, PUT, oss); + REQUIRE(oss.str() == "clearroi [-1, -1]\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setROI(prev_val[i], i); + } + } else { + REQUIRE_THROWS(proxy.Call("clearroi", {}, -1, PUT)); + } +} + +TEST_CASE("exptimel", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::GOTTHARD) { + REQUIRE_NOTHROW(proxy.Call("exptimel", {}, -1, GET)); + } else { + REQUIRE_THROWS(proxy.Call("exptimel", {}, -1, GET)); + } +} \ No newline at end of file diff --git a/slsDetectorSoftware/tests/test-CmdProxy-gotthard2.cpp b/slsDetectorSoftware/tests/test-CmdProxy-gotthard2.cpp index ab7c19649..052f4a97e 100644 --- a/slsDetectorSoftware/tests/test-CmdProxy-gotthard2.cpp +++ b/slsDetectorSoftware/tests/test-CmdProxy-gotthard2.cpp @@ -15,82 +15,6 @@ using sls::Detector; using test::GET; using test::PUT; -/* acquisition parameters */ - -TEST_CASE("bursts", "[.cmd][.new]") { - Detector det; - CmdProxy proxy(&det); - auto det_type = det.getDetectorType().squash(); - if (det_type == defs::GOTTHARD2) { - auto prev_burst = - det.getNumberOfBursts().tsquash("#bursts should be same to test"); - auto prev_trigger = - det.getNumberOfFrames().tsquash("#frames should be same to test"); - auto prev_frames = det.getNumberOfTriggers().tsquash( - "#triggers should be same to test"); - auto prev_timingMode = det.getTimingMode(); - auto prev_burstMode = det.getBurstMode(); - // changing continuous mode frames and bursts - det.setBurstMode(defs::BURST_INTERNAL); - det.setTimingMode(defs::AUTO_TIMING); - { - std::ostringstream oss; - proxy.Call("bursts", {"3"}, -1, PUT, oss); - REQUIRE(oss.str() == "bursts 3\n"); - } - { - std::ostringstream oss; - proxy.Call("bursts", {}, -1, GET, oss); - REQUIRE(oss.str() == "bursts 3\n"); - } - REQUIRE_THROWS(proxy.Call("bursts", {"0"}, -1, PUT)); - // trigger mode: reg set to 1, but bursts must be same - det.setTimingMode(defs::TRIGGER_EXPOSURE); - { - std::ostringstream oss; - proxy.Call("bursts", {}, -1, GET, oss); - REQUIRE(oss.str() == "bursts 3\n"); - } - det.setTimingMode(defs::AUTO_TIMING); - { - std::ostringstream oss; - proxy.Call("bursts", {}, -1, GET, oss); - REQUIRE(oss.str() == "bursts 3\n"); - } - // continuous mode: reg set to #frames, - // but bursts should return same value - det.setBurstMode(defs::BURST_OFF); - det.setNumberOfFrames(2); - { - std::ostringstream oss; - proxy.Call("bursts", {}, -1, GET, oss); - REQUIRE(oss.str() == "bursts 3\n"); - } - det.setTimingMode(defs::TRIGGER_EXPOSURE); - { - std::ostringstream oss; - proxy.Call("bursts", {}, -1, GET, oss); - REQUIRE(oss.str() == "bursts 3\n"); - } - det.setBurstMode(defs::BURST_INTERNAL); - { - std::ostringstream oss; - proxy.Call("bursts", {}, -1, GET, oss); - REQUIRE(oss.str() == "bursts 3\n"); - } - // set to previous values - det.setNumberOfBursts(prev_burst); - det.setNumberOfFrames(prev_frames); - det.setNumberOfTriggers(prev_trigger); - for (int i = 0; i != det.size(); ++i) { - det.setTimingMode(prev_timingMode[i], {i}); - det.setBurstMode(prev_burstMode[i], {i}); - } - } else { - REQUIRE_THROWS(proxy.Call("bursts", {}, -1, GET)); - } -} - /* dacs */ TEST_CASE("Setting and reading back GOTTHARD2 dacs", "[.cmd][.dacs][.new]") { @@ -262,7 +186,164 @@ TEST_CASE("vchip_cs", "[.cmd][.onchipdacs][.new]") { } } -TEST_CASE("burstmode", "[.cmd]") { +/* Gotthard2 Specific */ + +TEST_CASE("bursts", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::GOTTHARD2) { + auto prev_burst = + det.getNumberOfBursts().tsquash("#bursts should be same to test"); + auto prev_trigger = + det.getNumberOfFrames().tsquash("#frames should be same to test"); + auto prev_frames = det.getNumberOfTriggers().tsquash( + "#triggers should be same to test"); + auto prev_timingMode = det.getTimingMode(); + auto prev_burstMode = det.getBurstMode(); + // changing continuous mode frames and bursts + det.setBurstMode(defs::BURST_INTERNAL); + det.setTimingMode(defs::AUTO_TIMING); + { + std::ostringstream oss; + proxy.Call("bursts", {"3"}, -1, PUT, oss); + REQUIRE(oss.str() == "bursts 3\n"); + } + { + std::ostringstream oss; + proxy.Call("bursts", {}, -1, GET, oss); + REQUIRE(oss.str() == "bursts 3\n"); + } + REQUIRE_THROWS(proxy.Call("bursts", {"0"}, -1, PUT)); + // trigger mode: reg set to 1, but bursts must be same + det.setTimingMode(defs::TRIGGER_EXPOSURE); + { + std::ostringstream oss; + proxy.Call("bursts", {}, -1, GET, oss); + REQUIRE(oss.str() == "bursts 3\n"); + } + det.setTimingMode(defs::AUTO_TIMING); + { + std::ostringstream oss; + proxy.Call("bursts", {}, -1, GET, oss); + REQUIRE(oss.str() == "bursts 3\n"); + } + // continuous mode: reg set to #frames, + // but bursts should return same value + det.setBurstMode(defs::BURST_OFF); + det.setNumberOfFrames(2); + { + std::ostringstream oss; + proxy.Call("bursts", {}, -1, GET, oss); + REQUIRE(oss.str() == "bursts 3\n"); + } + det.setTimingMode(defs::TRIGGER_EXPOSURE); + { + std::ostringstream oss; + proxy.Call("bursts", {}, -1, GET, oss); + REQUIRE(oss.str() == "bursts 3\n"); + } + det.setBurstMode(defs::BURST_INTERNAL); + { + std::ostringstream oss; + proxy.Call("bursts", {}, -1, GET, oss); + REQUIRE(oss.str() == "bursts 3\n"); + } + // set to previous values + det.setNumberOfBursts(prev_burst); + det.setNumberOfFrames(prev_frames); + det.setNumberOfTriggers(prev_trigger); + for (int i = 0; i != det.size(); ++i) { + det.setTimingMode(prev_timingMode[i], {i}); + det.setBurstMode(prev_burstMode[i], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("bursts", {}, -1, GET)); + } +} + +TEST_CASE("burstperiod", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + + if (det_type == defs::GOTTHARD2) { + auto previous = det.getBurstPeriod(); + + std::ostringstream oss_set, oss_get; + proxy.Call("burstperiod", {"30ms"}, -1, PUT, oss_set); + REQUIRE(oss_set.str() == "burstperiod 30ms\n"); + proxy.Call("burstperiod", {}, -1, GET, oss_get); + REQUIRE(oss_get.str() == "burstperiod 30ms\n"); + // Reset to previous value + for (int i = 0; i != det.size(); ++i) { + det.setBurstPeriod(previous[i], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("burstperiod", {}, -1, GET)); + } +} + +TEST_CASE("inj_ch", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + + if (det_type == defs::GOTTHARD2) { + REQUIRE_THROWS( + proxy.Call("inj_ch", {"-1", "1"}, -1, PUT)); // invalid offset + REQUIRE_THROWS( + proxy.Call("inj_ch", {"0", "0"}, -1, PUT)); // invalid increment + { + std::ostringstream oss; + proxy.Call("inj_ch", {"0", "1"}, -1, PUT, oss); + REQUIRE(oss.str() == "inj_ch [0, 1]\n"); + } + { + std::ostringstream oss; + proxy.Call("inj_ch", {}, -1, GET, oss); + REQUIRE(oss.str() == "inj_ch [0, 1]\n"); + } + } else { + REQUIRE_THROWS(proxy.Call("inj_ch", {}, -1, GET)); + } +} + +TEST_CASE("vetophoton", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + + if (det_type == defs::GOTTHARD2) { + REQUIRE_THROWS(proxy.Call("vetophoton", {}, -1, GET)); + REQUIRE_NOTHROW(proxy.Call("vetophoton", {"-1"}, -1, GET)); + REQUIRE_THROWS(proxy.Call("vetophoton", {"12", "1", "39950"}, -1, + PUT)); // invalid chip index + REQUIRE_THROWS(proxy.Call("vetophoton", {"-1", "0"}, -1, + PUT)); // invalid photon number + REQUIRE_THROWS(proxy.Call("vetophoton", {"-1", "1", "39950"}, -1, + PUT)); // invald file + } else { + REQUIRE_THROWS(proxy.Call("vetophoton", {"-1"}, -1, GET)); + } +} + +TEST_CASE("vetoref", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + + if (det_type == defs::GOTTHARD2) { + REQUIRE_THROWS(proxy.Call("vetoref", {}, -1, GET)); + REQUIRE_THROWS(proxy.Call("vetoref", {"3", "0x3ff"}, -1, + PUT)); // invalid chip index + REQUIRE_NOTHROW(proxy.Call("vetoref", {"1", "0x010"}, -1, PUT)); + } else { + REQUIRE_THROWS(proxy.Call("vetoref", {"3", "0x0"}, -1, PUT)); + } +} + +TEST_CASE("burstmode", "[.cmd][.new]") { Detector det; CmdProxy proxy(&det); auto det_type = det.getDetectorType().squash(); @@ -293,92 +374,7 @@ TEST_CASE("burstmode", "[.cmd]") { } } -TEST_CASE("vetoref", "[.cmd]") { - Detector det; - CmdProxy proxy(&det); - auto det_type = det.getDetectorType().squash(); - - if (det_type == defs::GOTTHARD2) { - REQUIRE_THROWS(proxy.Call("vetoref", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vetoref", {"3", "0x3ff"}, -1, - PUT)); // invalid chip index - REQUIRE_NOTHROW(proxy.Call("vetoref", {"1", "0x010"}, -1, PUT)); - } else { - REQUIRE_THROWS(proxy.Call("vetoref", {"3", "0x0"}, -1, PUT)); - } -} - -TEST_CASE("vetophoton", "[.cmd]") { - Detector det; - CmdProxy proxy(&det); - auto det_type = det.getDetectorType().squash(); - - if (det_type == defs::GOTTHARD2) { - REQUIRE_THROWS(proxy.Call("vetophoton", {}, -1, GET)); - REQUIRE_NOTHROW(proxy.Call("vetophoton", {"-1"}, -1, GET)); - REQUIRE_THROWS(proxy.Call("vetophoton", {"12", "1", "39950"}, -1, - PUT)); // invalid chip index - REQUIRE_THROWS(proxy.Call("vetophoton", {"-1", "0"}, -1, - PUT)); // invalid photon number - REQUIRE_THROWS(proxy.Call("vetophoton", {"-1", "1", "39950"}, -1, - PUT)); // invald file - } else { - REQUIRE_THROWS(proxy.Call("vetophoton", {"-1"}, -1, GET)); - } -} - -TEST_CASE("inj_ch", "[.cmd]") { - Detector det; - CmdProxy proxy(&det); - auto det_type = det.getDetectorType().squash(); - - if (det_type == defs::GOTTHARD2) { - auto inj = det.getInjectChannel(); - REQUIRE_THROWS( - proxy.Call("inj_ch", {"-1", "1"}, -1, PUT)); // invalid offset - REQUIRE_THROWS( - proxy.Call("inj_ch", {"0", "0"}, -1, PUT)); // invalid increment - { - std::ostringstream oss; - proxy.Call("inj_ch", {"0", "1"}, -1, PUT, oss); - REQUIRE(oss.str() == "inj_ch [0, 1]\n"); - } - { - std::ostringstream oss; - proxy.Call("inj_ch", {}, -1, GET, oss); - REQUIRE(oss.str() == "inj_ch [0, 1]\n"); - } - for (int i = 0; i != det.size(); ++i) { - det.setInjectChannel(inj[i][0], inj[i][1], {i}); - } - } else { - REQUIRE_THROWS(proxy.Call("inj_ch", {}, -1, GET)); - } -} - -TEST_CASE("burstperiod", "[.cmd]") { - Detector det; - CmdProxy proxy(&det); - auto det_type = det.getDetectorType().squash(); - - if (det_type == defs::GOTTHARD2) { - auto previous = det.getBurstPeriod(); - - std::ostringstream oss_set, oss_get; - proxy.Call("burstperiod", {"30ms"}, -1, PUT, oss_set); - REQUIRE(oss_set.str() == "burstperiod 30ms\n"); - proxy.Call("burstperiod", {}, -1, GET, oss_get); - REQUIRE(oss_get.str() == "burstperiod 30ms\n"); - // Reset to previous value - for (int i = 0; i != det.size(); ++i) { - det.setBurstPeriod(previous[i], {i}); - } - } else { - REQUIRE_THROWS(proxy.Call("burstperiod", {}, -1, GET)); - } -} - -TEST_CASE("currentsource", "[.cmd]") { +TEST_CASE("currentsource", "[.cmd][.new]") { Detector det; CmdProxy proxy(&det); auto det_type = det.getDetectorType().squash(); @@ -408,7 +404,7 @@ TEST_CASE("currentsource", "[.cmd]") { } } -TEST_CASE("timingsource", "[.cmd]") { +TEST_CASE("timingsource", "[.cmd][.new]") { Detector det; CmdProxy proxy(&det); auto det_type = det.getDetectorType().squash(); @@ -437,3 +433,33 @@ TEST_CASE("timingsource", "[.cmd]") { REQUIRE_THROWS(proxy.Call("timingsource", {}, -1, GET)); } } + +TEST_CASE("veto", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + + if (det_type == defs::GOTTHARD2) { + auto prev_val = det.getVeto(); + { + std::ostringstream oss; + proxy.Call("veto", {"1"}, -1, PUT, oss); + REQUIRE(oss.str() == "veto 1\n"); + } + { + std::ostringstream oss; + proxy.Call("veto", {"0"}, -1, PUT, oss); + REQUIRE(oss.str() == "veto 0\n"); + } + { + std::ostringstream oss; + proxy.Call("veto", {}, -1, GET, oss); + REQUIRE(oss.str() == "veto 0\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setVeto(prev_val[i], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("veto", {}, -1, GET)); + } +} \ No newline at end of file diff --git a/slsDetectorSoftware/tests/test-CmdProxy-mythen3.cpp b/slsDetectorSoftware/tests/test-CmdProxy-mythen3.cpp index fff13a553..798683c7a 100644 --- a/slsDetectorSoftware/tests/test-CmdProxy-mythen3.cpp +++ b/slsDetectorSoftware/tests/test-CmdProxy-mythen3.cpp @@ -89,7 +89,9 @@ TEST_CASE("Setting and reading back MYTHEN3 dacs", "[.cmd][.dacs][.new]") { } } -TEST_CASE("counters", "[.cmd]") { +/* Mythen3 Specific */ + +TEST_CASE("counters", "[.cmd][.new]") { Detector det; CmdProxy proxy(&det); auto det_type = det.getDetectorType().squash(); @@ -120,3 +122,243 @@ TEST_CASE("counters", "[.cmd]") { REQUIRE_THROWS(proxy.Call("counters", {}, -1, GET)); } } + +TEST_CASE("gates", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::MYTHEN3) { + auto prev_val = det.getNumberOfGates(); + { + std::ostringstream oss; + proxy.Call("gates", {"1000"}, -1, PUT, oss); + REQUIRE(oss.str() == "gates 1000\n"); + } + { + std::ostringstream oss; + proxy.Call("gates", {}, -1, GET, oss); + REQUIRE(oss.str() == "gates 1000\n"); + } + { + std::ostringstream oss; + proxy.Call("gates", {"1"}, -1, PUT, oss); + REQUIRE(oss.str() == "gates 1\n"); + } + REQUIRE_THROWS(proxy.Call("gates", {"0"}, -1, PUT)); + for (int i = 0; i != det.size(); ++i) { + det.setNumberOfGates(prev_val[i], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("gates", {}, -1, GET)); + } +} + +TEST_CASE("exptime1", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::MYTHEN3) { + auto prev_val = det.getExptime(0); + { + std::ostringstream oss; + proxy.Call("exptime1", {"1.25s"}, -1, PUT, oss); + REQUIRE(oss.str() == "exptime1 1.25s\n"); + } + { + std::ostringstream oss; + proxy.Call("exptime1", {}, -1, GET, oss); + REQUIRE(oss.str() == "exptime1 1.25s\n"); + } + { + std::ostringstream oss; + proxy.Call("exptime1", {"0"}, -1, PUT, oss); + REQUIRE(oss.str() == "exptime1 0\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setExptime(0, prev_val[i], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("exptime1", {}, -1, GET)); + } +} + +TEST_CASE("exptime2", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::MYTHEN3) { + auto prev_val = det.getExptime(1); + { + std::ostringstream oss; + proxy.Call("exptime2", {"1.25s"}, -1, PUT, oss); + REQUIRE(oss.str() == "exptime2 1.25s\n"); + } + { + std::ostringstream oss; + proxy.Call("exptime2", {}, -1, GET, oss); + REQUIRE(oss.str() == "exptime2 1.25s\n"); + } + { + std::ostringstream oss; + proxy.Call("exptime2", {"0"}, -1, PUT, oss); + REQUIRE(oss.str() == "exptime2 0\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setExptime(1, prev_val[i], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("exptime2", {}, -1, GET)); + } +} + +TEST_CASE("exptime3", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::MYTHEN3) { + auto prev_val = det.getExptime(2); + { + std::ostringstream oss; + proxy.Call("exptime3", {"1.25s"}, -1, PUT, oss); + REQUIRE(oss.str() == "exptime3 1.25s\n"); + } + { + std::ostringstream oss; + proxy.Call("exptime3", {}, -1, GET, oss); + REQUIRE(oss.str() == "exptime3 1.25s\n"); + } + { + std::ostringstream oss; + proxy.Call("exptime3", {"0"}, -1, PUT, oss); + REQUIRE(oss.str() == "exptime3 0\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setExptime(2, prev_val[i], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("exptime3", {}, -1, GET)); + } +} + +TEST_CASE("gatedelay", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::MYTHEN3) { + auto prev_val = det.getExptimeForAllGates().tsquash( + "inconsistent gatedelay to test"); + if (prev_val[0] != prev_val[1] || prev_val[1] != prev_val[2]) { + throw sls::RuntimeError("inconsistent gatedelay for all gates"); + } + { + std::ostringstream oss; + proxy.Call("gatedelay", {"0.05"}, -1, PUT, oss); + REQUIRE(oss.str() == "gatedelay 0.05\n"); + } + if (det_type != defs::MYTHEN3) { + std::ostringstream oss; + proxy.Call("gatedelay", {}, -1, GET, oss); + REQUIRE(oss.str() == "gatedelay 50ms\n"); + } + { + std::ostringstream oss; + proxy.Call("gatedelay", {"1s"}, -1, PUT, oss); + REQUIRE(oss.str() == "gatedelay 1s\n"); + } + { + std::ostringstream oss; + proxy.Call("gatedelay", {"0"}, -1, PUT, oss); + REQUIRE(oss.str() == "gatedelay 0\n"); + } + det.setGateDelay(-1, prev_val[0]); + } else { + REQUIRE_THROWS(proxy.Call("gatedelay", {}, -1, GET)); + } +} + +TEST_CASE("gatedelay1", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::MYTHEN3) { + auto prev_val = det.getGateDelay(0); + { + std::ostringstream oss; + proxy.Call("gatedelay1", {"1.25s"}, -1, PUT, oss); + REQUIRE(oss.str() == "gatedelay1 1.25s\n"); + } + { + std::ostringstream oss; + proxy.Call("gatedelay1", {}, -1, GET, oss); + REQUIRE(oss.str() == "gatedelay1 1.25s\n"); + } + { + std::ostringstream oss; + proxy.Call("gatedelay1", {"0"}, -1, PUT, oss); + REQUIRE(oss.str() == "gatedelay1 0\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setGateDelay(0, prev_val[i], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("gatedelay1", {}, -1, GET)); + } +} + +TEST_CASE("gatedelay2", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::MYTHEN3) { + auto prev_val = det.getGateDelay(1); + { + std::ostringstream oss; + proxy.Call("gatedelay2", {"1.25s"}, -1, PUT, oss); + REQUIRE(oss.str() == "gatedelay2 1.25s\n"); + } + { + std::ostringstream oss; + proxy.Call("gatedelay2", {}, -1, GET, oss); + REQUIRE(oss.str() == "gatedelay2 1.25s\n"); + } + { + std::ostringstream oss; + proxy.Call("gatedelay2", {"0"}, -1, PUT, oss); + REQUIRE(oss.str() == "gatedelay2 0\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setGateDelay(1, prev_val[i], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("gatedelay2", {}, -1, GET)); + } +} + +TEST_CASE("gatedelay3", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::MYTHEN3) { + auto prev_val = det.getGateDelay(2); + { + std::ostringstream oss; + proxy.Call("gatedelay3", {"1.25s"}, -1, PUT, oss); + REQUIRE(oss.str() == "gatedelay3 1.25s\n"); + } + { + std::ostringstream oss; + proxy.Call("gatedelay3", {}, -1, GET, oss); + REQUIRE(oss.str() == "gatedelay3 1.25s\n"); + } + { + std::ostringstream oss; + proxy.Call("gatedelay3", {"0"}, -1, PUT, oss); + REQUIRE(oss.str() == "gatedelay3 0\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setGateDelay(2, prev_val[i], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("gatedelay3", {}, -1, GET)); + } +} \ No newline at end of file diff --git a/slsDetectorSoftware/tests/test-CmdProxy.cpp b/slsDetectorSoftware/tests/test-CmdProxy.cpp index bb5ec6828..a64edd837 100644 --- a/slsDetectorSoftware/tests/test-CmdProxy.cpp +++ b/slsDetectorSoftware/tests/test-CmdProxy.cpp @@ -2579,30 +2579,6 @@ TEST_CASE("resetfpga", "[.cmd]") { // } // } -// TEST_CASE("roi", "[.cmd][.gotthard]") { -// if (test::type == defs::GOTTHARD) { -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("roi 0 255", PUT, nullptr, -// oss)); REQUIRE(oss.str() == "roi [0, 255] \n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("roi 256 511", PUT, -// nullptr, oss)); REQUIRE(oss.str() == "roi [256, 511] \n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("clearroi", PUT, nullptr, -// oss)); REQUIRE(oss.str() == "clearroi [-1, -1] \n"); -// } -// REQUIRE_THROWS(multiSlsDetectorClient("roi 0 256", PUT)); -// } else { -// REQUIRE_THROWS(multiSlsDetectorClient("roi", GET)); -// REQUIRE_THROWS(multiSlsDetectorClient("clearroi", PUT)); -// } -// } - // TEST_CASE("adc", "[.cmd][.ctb]") { // if (test::type != defs::CHIPTESTBOARD) { // REQUIRE_THROWS(multiSlsDetectorClient("adc 8", GET)); From 9a8300ca0892caf3c45464a59b21ec812067fb63 Mon Sep 17 00:00:00 2001 From: Dhanya Thattil Date: Thu, 4 Jun 2020 12:12:40 +0200 Subject: [PATCH 08/13] WIP --- .../src/slsDetectorServer_funcs.c | 3 +- slsDetectorSoftware/include/Detector.h | 2 +- slsDetectorSoftware/src/Detector.cpp | 2 +- slsDetectorSoftware/src/Module.cpp | 9 +- slsDetectorSoftware/src/Module.h | 15 +- .../tests/test-CmdProxy-chiptestboard.cpp | 766 ++++++++++++++++++ slsDetectorSoftware/tests/test-CmdProxy.cpp | 340 -------- 7 files changed, 778 insertions(+), 359 deletions(-) diff --git a/slsDetectorServers/slsDetectorServer/src/slsDetectorServer_funcs.c b/slsDetectorServers/slsDetectorServer/src/slsDetectorServer_funcs.c index 3d8bf5200..da2eb635a 100644 --- a/slsDetectorServers/slsDetectorServer/src/slsDetectorServer_funcs.c +++ b/slsDetectorServers/slsDetectorServer/src/slsDetectorServer_funcs.c @@ -5633,7 +5633,8 @@ int set_readout_mode(int file_des) { if (ret == OK) { if (setReadoutMode(arg) == FAIL) { ret = FAIL; - sprintf(mess, "Could not set readout mode\n"); + sprintf(mess, "Could not set readout mode. Check #samples or " + "memory allocation\n"); LOG(logERROR, (mess)); } else { int retval = getReadoutMode(); diff --git a/slsDetectorSoftware/include/Detector.h b/slsDetectorSoftware/include/Detector.h index 2f51a47c1..026297a13 100644 --- a/slsDetectorSoftware/include/Detector.h +++ b/slsDetectorSoftware/include/Detector.h @@ -1143,7 +1143,7 @@ class Detector { void setExternalSamplingSource(int value, Positions pos = {}); /** [CTB] */ - Result getExternalSampling(Positions pos = {}) const; + Result getExternalSampling(Positions pos = {}) const; /** [CTB] */ void setExternalSampling(bool value, Positions pos = {}); diff --git a/slsDetectorSoftware/src/Detector.cpp b/slsDetectorSoftware/src/Detector.cpp index 5c3ef60fb..b0d8a5154 100644 --- a/slsDetectorSoftware/src/Detector.cpp +++ b/slsDetectorSoftware/src/Detector.cpp @@ -1468,7 +1468,7 @@ void Detector::setExternalSamplingSource(int value, Positions pos) { pimpl->Parallel(&Module::setExternalSamplingSource, pos, value); } -Result Detector::getExternalSampling(Positions pos) const { +Result Detector::getExternalSampling(Positions pos) const { return pimpl->Parallel(&Module::getExternalSampling, pos); } diff --git a/slsDetectorSoftware/src/Module.cpp b/slsDetectorSoftware/src/Module.cpp index 20978c33e..77dbf835f 100644 --- a/slsDetectorSoftware/src/Module.cpp +++ b/slsDetectorSoftware/src/Module.cpp @@ -2201,11 +2201,14 @@ int Module::getExternalSamplingSource() { return setExternalSamplingSource(-1); } -int Module::setExternalSampling(int value) { - return sendToDetector(F_EXTERNAL_SAMPLING, value); +void Module::setExternalSampling(bool value) { + sendToDetector(F_EXTERNAL_SAMPLING, static_cast(value)); } -int Module::getExternalSampling() { return setExternalSampling(-1); } +bool Module::getExternalSampling() { + int arg = -1; + return sendToDetector(F_EXTERNAL_SAMPLING, arg); +} void Module::setReceiverDbitList(const std::vector &list) { LOG(logDEBUG1) << "Setting Receiver Dbit List"; diff --git a/slsDetectorSoftware/src/Module.h b/slsDetectorSoftware/src/Module.h index 234ca6439..1e59c868b 100644 --- a/slsDetectorSoftware/src/Module.h +++ b/slsDetectorSoftware/src/Module.h @@ -1079,20 +1079,9 @@ class Module : public virtual slsDetectorDefs { */ int getExternalSamplingSource(); - /** - * Set external sampling enable (CTB only) - * @param value external sampling source (Option: 0-63) - * @param detPos -1 for all detectors in list or specific detector position - * @returns external sampling enable - */ - int setExternalSampling(int value); + void setExternalSampling(bool value); - /** - * Get external sampling source (CTB only) - * @param detPos -1 for all detectors in list or specific detector position - * @returns external sampling enable - */ - int getExternalSampling(); + bool getExternalSampling(); /** digital data bits enable (CTB only) */ void setReceiverDbitList(const std::vector &list); diff --git a/slsDetectorSoftware/tests/test-CmdProxy-chiptestboard.cpp b/slsDetectorSoftware/tests/test-CmdProxy-chiptestboard.cpp index c9fcb0311..2a3a49b49 100644 --- a/slsDetectorSoftware/tests/test-CmdProxy-chiptestboard.cpp +++ b/slsDetectorSoftware/tests/test-CmdProxy-chiptestboard.cpp @@ -100,3 +100,769 @@ TEST_CASE("Setting and reading back Chip test board dacs", REQUIRE_THROWS(proxy.Call("vcom_adc2", {}, -1, GET)); } } + +/* CTB/ Moench Specific */ + +TEST_CASE("samples", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + + if (det_type == defs::CHIPTESTBOARD || det_type == defs::MOENCH) { + auto prev_asamples = det.getNumberOfAnalogSamples(); + sls::Result prev_dsamples = 0; + if (det_type == defs::CHIPTESTBOARD) { + prev_dsamples = det.getNumberOfDigitalSamples(); + } + { + std::ostringstream oss; + proxy.Call("samples", {"1"}, -1, PUT, oss); + REQUIRE(oss.str() == "samples 1\n"); + } + { + std::ostringstream oss; + proxy.Call("samples", {"450"}, -1, PUT, oss); + REQUIRE(oss.str() == "samples 450\n"); + } + { + std::ostringstream oss; + proxy.Call("samples", {}, -1, GET, oss); + REQUIRE(oss.str() == "samples 450\n"); + } + { + std::ostringstream oss; + proxy.Call("asamples", {}, -1, GET, oss); + REQUIRE(oss.str() == "asamples 450\n"); + } + if (det_type == defs::CHIPTESTBOARD) { + std::ostringstream oss; + proxy.Call("dsamples", {}, -1, GET, oss); + REQUIRE(oss.str() == "dsamples 450\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setNumberOfAnalogSamples(prev_asamples[i], {i}); + if (det_type == defs::CHIPTESTBOARD) { + det.setNumberOfDigitalSamples(prev_dsamples[i], {i}); + } + } + } else { + REQUIRE_THROWS(proxy.Call("samples", {}, -1, GET)); + } +} + +TEST_CASE("asamples", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + + if (det_type == defs::CHIPTESTBOARD || det_type == defs::MOENCH) { + auto prev_val = det.getNumberOfAnalogSamples(); + { + std::ostringstream oss; + proxy.Call("asamples", {"1"}, -1, PUT, oss); + REQUIRE(oss.str() == "asamples 1\n"); + } + { + std::ostringstream oss; + proxy.Call("asamples", {"450"}, -1, PUT, oss); + REQUIRE(oss.str() == "asamples 450\n"); + } + { + std::ostringstream oss; + proxy.Call("asamples", {}, -1, GET, oss); + REQUIRE(oss.str() == "asamples 450\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setNumberOfAnalogSamples(prev_val[i], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("asamples", {}, -1, GET)); + } +} + +TEST_CASE("adcclk", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + + if (det_type == defs::CHIPTESTBOARD || det_type == defs::MOENCH) { + auto prev_val = det.getADCClock(); + { + std::ostringstream oss; + proxy.Call("adcclk", {"20"}, -1, PUT, oss); + REQUIRE(oss.str() == "adcclk 20\n"); + } + { + std::ostringstream oss; + proxy.Call("adcclk", {"10"}, -1, PUT, oss); + REQUIRE(oss.str() == "adcclk 10\n"); + } + { + std::ostringstream oss; + proxy.Call("adcclk", {}, -1, GET, oss); + REQUIRE(oss.str() == "adcclk 10\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setADCClock(prev_val[i], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("adcclk", {}, -1, GET)); + } +} + +TEST_CASE("runclk", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + + if (det_type == defs::CHIPTESTBOARD || det_type == defs::MOENCH) { + auto prev_val = det.getRUNClock(); + { + std::ostringstream oss; + proxy.Call("runclk", {"20"}, -1, PUT, oss); + REQUIRE(oss.str() == "runclk 20\n"); + } + { + std::ostringstream oss; + proxy.Call("runclk", {"10"}, -1, PUT, oss); + REQUIRE(oss.str() == "runclk 10\n"); + } + { + std::ostringstream oss; + proxy.Call("runclk", {}, -1, GET, oss); + REQUIRE(oss.str() == "runclk 10\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setRUNClock(prev_val[i], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("runclk", {}, -1, GET)); + } +} + +TEST_CASE("syncclk", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::CHIPTESTBOARD || det_type == defs::MOENCH) { + REQUIRE_NOTHROW(proxy.Call("syncclk", {}, -1, GET)); + } else { + REQUIRE_THROWS(proxy.Call("syncclk", {}, -1, GET)); + } +} + +TEST_CASE("adcpipeline", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + + if (det_type == defs::CHIPTESTBOARD || det_type == defs::MOENCH) { + auto prev_val = det.getADCPipeline(); + { + std::ostringstream oss; + proxy.Call("adcpipeline", {"1"}, -1, PUT, oss); + REQUIRE(oss.str() == "adcpipeline 1\n"); + } + { + std::ostringstream oss; + proxy.Call("adcpipeline", {"0"}, -1, PUT, oss); + REQUIRE(oss.str() == "adcpipeline 0\n"); + } + { + std::ostringstream oss; + proxy.Call("adcpipeline", {"15"}, -1, PUT, oss); + REQUIRE(oss.str() == "adcpipeline 15\n"); + } + { + std::ostringstream oss; + proxy.Call("adcpipeline", {}, -1, GET, oss); + REQUIRE(oss.str() == "adcpipeline 15\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setADCPipeline(prev_val[i], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("adcpipeline", {}, -1, GET)); + } +} + +TEST_CASE("v_limit", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + + if (det_type == defs::CHIPTESTBOARD || det_type == defs::MOENCH) { + auto prev_val = det.getVoltage(defs::V_LIMIT); + { + std::ostringstream oss; + proxy.Call("v_limit", {"1500"}, -1, PUT, oss); + REQUIRE(oss.str() == "v_limit 1500\n"); + } + { + std::ostringstream oss; + proxy.Call("v_limit", {"0"}, -1, PUT, oss); + REQUIRE(oss.str() == "v_limit 0\n"); + } + { + std::ostringstream oss; + proxy.Call("v_limit", {"0"}, -1, PUT, oss); + REQUIRE(oss.str() == "v_limit 0\n"); + } + { + std::ostringstream oss; + proxy.Call("v_limit", {}, -1, GET, oss); + REQUIRE(oss.str() == "v_limit 0\n"); + } + for (int i = 0; i != det.size(); ++i) { + if (prev_val[i] == -100) { + prev_val[i] = 0; + } + det.setVoltage(defs::V_LIMIT, prev_val[i], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("v_limit", {}, -1, GET)); + } +} + +TEST_CASE("adcenable", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + + if (det_type == defs::CHIPTESTBOARD || det_type == defs::MOENCH) { + auto prev_val = det.getADCEnableMask(); + { + std::ostringstream oss; + proxy.Call("adcenable", {"0x8d0a21d4"}, -1, PUT, oss); + REQUIRE(oss.str() == "adcenable 0x8d0a21d4\n"); + } + { + std::ostringstream oss; + proxy.Call("adcenable", {"0xffffffff"}, -1, PUT, oss); + REQUIRE(oss.str() == "adcenable 0xffffffff\n"); + } + { + std::ostringstream oss; + proxy.Call("adcenable", {}, -1, GET, oss); + REQUIRE(oss.str() == "adcenable 0xffffffff\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setADCEnableMask(prev_val[i], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("adcenable", {}, -1, GET)); + } +} + +TEST_CASE("adcenable10g", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + + if (det_type == defs::CHIPTESTBOARD || det_type == defs::MOENCH) { + auto prev_val = det.getTenGigaADCEnableMask(); + { + std::ostringstream oss; + proxy.Call("adcenable10g", {"0xff00f0f0"}, -1, PUT, oss); + REQUIRE(oss.str() == "adcenable10g 0xff00f0f0\n"); + } + { + std::ostringstream oss; + proxy.Call("adcenable10g", {"0xffffffff"}, -1, PUT, oss); + REQUIRE(oss.str() == "adcenable10g 0xffffffff\n"); + } + { + std::ostringstream oss; + proxy.Call("adcenable10g", {}, -1, GET, oss); + REQUIRE(oss.str() == "adcenable10g 0xffffffff\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setTenGigaADCEnableMask(prev_val[i], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("adcenable10g", {}, -1, GET)); + } +} + +/* CTB Specific */ + +TEST_CASE("dsamples", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + + if (det_type == defs::CHIPTESTBOARD) { + auto prev_val = det.getNumberOfDigitalSamples(); + { + std::ostringstream oss; + proxy.Call("dsamples", {"1"}, -1, PUT, oss); + REQUIRE(oss.str() == "dsamples 1\n"); + } + { + std::ostringstream oss; + proxy.Call("dsamples", {"450"}, -1, PUT, oss); + REQUIRE(oss.str() == "dsamples 450\n"); + } + { + std::ostringstream oss; + proxy.Call("dsamples", {}, -1, GET, oss); + REQUIRE(oss.str() == "dsamples 450\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setNumberOfDigitalSamples(prev_val[i], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("dsamples", {}, -1, GET)); + } +} + +TEST_CASE("romode", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::CHIPTESTBOARD) { + auto prev_romode = det.getReadoutMode(); + auto prev_asamples = det.getNumberOfAnalogSamples(); + auto prev_dsamples = det.getNumberOfDigitalSamples(); + det.setNumberOfAnalogSamples(5000); + det.setNumberOfDigitalSamples(5000); + { + std::ostringstream oss; + proxy.Call("romode", {"digital"}, -1, PUT, oss); + REQUIRE(oss.str() == "romode digital\n"); + } + { + std::ostringstream oss; + proxy.Call("romode", {"analog_digital"}, -1, PUT, oss); + REQUIRE(oss.str() == "romode analog_digital\n"); + } + { + std::ostringstream oss; + proxy.Call("romode", {"analog"}, -1, PUT, oss); + REQUIRE(oss.str() == "romode analog\n"); + } + { + std::ostringstream oss; + proxy.Call("romode", {}, -1, GET, oss); + REQUIRE(oss.str() == "romode analog\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setReadoutMode(prev_romode[i], {i}); + det.setNumberOfAnalogSamples(prev_asamples[i], {i}); + det.setNumberOfDigitalSamples(prev_dsamples[i], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("romode", {}, -1, GET)); + } +} + +TEST_CASE("dbitclk", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + + if (det_type == defs::CHIPTESTBOARD) { + auto prev_val = det.getRUNClock(); + { + std::ostringstream oss; + proxy.Call("dbitclk", {"20"}, -1, PUT, oss); + REQUIRE(oss.str() == "dbitclk 20\n"); + } + { + std::ostringstream oss; + proxy.Call("dbitclk", {"10"}, -1, PUT, oss); + REQUIRE(oss.str() == "dbitclk 10\n"); + } + { + std::ostringstream oss; + proxy.Call("dbitclk", {}, -1, GET, oss); + REQUIRE(oss.str() == "dbitclk 10\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setRUNClock(prev_val[i], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("dbitclk", {}, -1, GET)); + } +} + +TEST_CASE("dbitpipeline", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + + if (det_type == defs::CHIPTESTBOARD) { + auto prev_val = det.getDBITPipeline(); + { + std::ostringstream oss; + proxy.Call("dbitpipeline", {"1"}, -1, PUT, oss); + REQUIRE(oss.str() == "dbitpipeline 1\n"); + } + { + std::ostringstream oss; + proxy.Call("dbitpipeline", {"0"}, -1, PUT, oss); + REQUIRE(oss.str() == "dbitpipeline 0\n"); + } + { + std::ostringstream oss; + proxy.Call("dbitpipeline", {"15"}, -1, PUT, oss); + REQUIRE(oss.str() == "dbitpipeline 15\n"); + } + { + std::ostringstream oss; + proxy.Call("dbitpipeline", {}, -1, GET, oss); + REQUIRE(oss.str() == "dbitpipeline 15\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setDBITPipeline(prev_val[i], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("dbitpipeline", {}, -1, GET)); + } +} + +TEST_CASE("v_a", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::CHIPTESTBOARD) { + auto prev_val = det.getVoltage(defs::V_POWER_A); + { + std::ostringstream oss1, oss2; + proxy.Call("v_a", {"700"}, -1, PUT, oss1); + REQUIRE(oss1.str() == "v_a 700\n"); + proxy.Call("v_a", {}, -1, GET, oss2); + REQUIRE(oss2.str() == "v_a 700\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setVoltage(defs::V_POWER_A, prev_val[i], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("v_a", {}, -1, GET)); + } +} + +TEST_CASE("v_b", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::CHIPTESTBOARD) { + auto prev_val = det.getVoltage(defs::V_POWER_B); + { + std::ostringstream oss1, oss2; + proxy.Call("v_b", {"700"}, -1, PUT, oss1); + REQUIRE(oss1.str() == "v_b 700\n"); + proxy.Call("v_b", {}, -1, GET, oss2); + REQUIRE(oss2.str() == "v_b 700\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setVoltage(defs::V_POWER_B, prev_val[i], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("v_b", {}, -1, GET)); + } +} + +TEST_CASE("v_c", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::CHIPTESTBOARD) { + auto prev_val = det.getVoltage(defs::V_POWER_C); + { + std::ostringstream oss1, oss2; + proxy.Call("v_c", {"700"}, -1, PUT, oss1); + REQUIRE(oss1.str() == "v_c 700\n"); + proxy.Call("v_c", {}, -1, GET, oss2); + REQUIRE(oss2.str() == "v_c 700\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setVoltage(defs::V_POWER_C, prev_val[i], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("v_c", {}, -1, GET)); + } +} + +TEST_CASE("v_d", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::CHIPTESTBOARD) { + auto prev_val = det.getVoltage(defs::V_POWER_D); + { + std::ostringstream oss1, oss2; + proxy.Call("v_d", {"700"}, -1, PUT, oss1); + REQUIRE(oss1.str() == "v_d 700\n"); + proxy.Call("v_d", {}, -1, GET, oss2); + REQUIRE(oss2.str() == "v_d 700\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setVoltage(defs::V_POWER_D, prev_val[i], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("v_d", {}, -1, GET)); + } +} + +TEST_CASE("v_io", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::CHIPTESTBOARD) { + // better not to play with setting it + REQUIRE_NOTHROW(proxy.Call("v_io", {}, -1, GET)); + } else { + REQUIRE_THROWS(proxy.Call("v_io", {}, -1, GET)); + } +} + +TEST_CASE("v_chip", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::CHIPTESTBOARD) { + // better not to play with setting it + REQUIRE_NOTHROW(proxy.Call("v_chip", {}, -1, GET)); + } else { + REQUIRE_THROWS(proxy.Call("v_chip", {}, -1, GET)); + } +} + +TEST_CASE("vm_a", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::CHIPTESTBOARD) { + REQUIRE_NOTHROW(proxy.Call("vm_a", {}, -1, GET)); + } else { + REQUIRE_THROWS(proxy.Call("vm_a", {}, -1, GET)); + } +} + +TEST_CASE("vm_b", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::CHIPTESTBOARD) { + REQUIRE_NOTHROW(proxy.Call("vm_b", {}, -1, GET)); + } else { + REQUIRE_THROWS(proxy.Call("vm_b", {}, -1, GET)); + } +} + +TEST_CASE("vm_c", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::CHIPTESTBOARD) { + REQUIRE_NOTHROW(proxy.Call("vm_c", {}, -1, GET)); + } else { + REQUIRE_THROWS(proxy.Call("vm_c", {}, -1, GET)); + } +} + +TEST_CASE("vm_d", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::CHIPTESTBOARD) { + REQUIRE_NOTHROW(proxy.Call("vm_d", {}, -1, GET)); + } else { + REQUIRE_THROWS(proxy.Call("vm_d", {}, -1, GET)); + } +} + +TEST_CASE("vm_io", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::CHIPTESTBOARD) { + REQUIRE_NOTHROW(proxy.Call("vm_io", {}, -1, GET)); + } else { + REQUIRE_THROWS(proxy.Call("vm_io", {}, -1, GET)); + } +} + +TEST_CASE("im_a", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::CHIPTESTBOARD) { + REQUIRE_NOTHROW(proxy.Call("im_a", {}, -1, GET)); + } else { + REQUIRE_THROWS(proxy.Call("im_a", {}, -1, GET)); + } +} + +TEST_CASE("im_b", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::CHIPTESTBOARD) { + REQUIRE_NOTHROW(proxy.Call("im_b", {}, -1, GET)); + } else { + REQUIRE_THROWS(proxy.Call("im_b", {}, -1, GET)); + } +} + +TEST_CASE("im_c", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::CHIPTESTBOARD) { + REQUIRE_NOTHROW(proxy.Call("im_c", {}, -1, GET)); + } else { + REQUIRE_THROWS(proxy.Call("im_c", {}, -1, GET)); + } +} + +TEST_CASE("im_d", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::CHIPTESTBOARD) { + REQUIRE_NOTHROW(proxy.Call("im_d", {}, -1, GET)); + } else { + REQUIRE_THROWS(proxy.Call("im_d", {}, -1, GET)); + } +} + +TEST_CASE("im_io", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::CHIPTESTBOARD) { + REQUIRE_NOTHROW(proxy.Call("im_io", {}, -1, GET)); + } else { + REQUIRE_THROWS(proxy.Call("im_io", {}, -1, GET)); + } +} + +TEST_CASE("adc", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::CHIPTESTBOARD) { + for (int i = 0; i <= 8; ++i) { + REQUIRE_NOTHROW(proxy.Call("adc", {std::to_string(i)}, -1, GET)); + REQUIRE_THROWS(proxy.Call("adc", {"0"}, -1, PUT)); + } + } else { + REQUIRE_THROWS(proxy.Call("adc", {"0"}, -1, GET)); + } +} + +TEST_CASE("extsampling", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + + if (det_type == defs::CHIPTESTBOARD) { + auto prev_val = det.getExternalSampling(); + { + std::ostringstream oss; + proxy.Call("extsampling", {"1"}, -1, PUT, oss); + REQUIRE(oss.str() == "extsampling 1\n"); + } + { + std::ostringstream oss; + proxy.Call("extsampling", {"0"}, -1, PUT, oss); + REQUIRE(oss.str() == "extsampling 0\n"); + } + { + std::ostringstream oss; + proxy.Call("extsampling", {}, -1, GET, oss); + REQUIRE(oss.str() == "extsampling 0\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setExternalSampling(prev_val[i], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("extsampling", {}, -1, GET)); + } +} + +TEST_CASE("extsamplingsrc", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + + if (det_type == defs::CHIPTESTBOARD) { + auto prev_val = det.getExternalSamplingSource(); + { + std::ostringstream oss; + proxy.Call("extsamplingsrc", {"63"}, -1, PUT, oss); + REQUIRE(oss.str() == "extsamplingsrc 63\n"); + } + { + std::ostringstream oss; + proxy.Call("extsamplingsrc", {"0"}, -1, PUT, oss); + REQUIRE(oss.str() == "extsamplingsrc 0\n"); + } + { + std::ostringstream oss; + proxy.Call("extsamplingsrc", {}, -1, GET, oss); + REQUIRE(oss.str() == "extsamplingsrc 0\n"); + } + REQUIRE_THROWS(proxy.Call("extsamplingsrc", {"64"}, -1, PUT)); + for (int i = 0; i != det.size(); ++i) { + det.setExternalSamplingSource(prev_val[i], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("extsamplingsrc", {}, -1, GET)); + } +} + +TEST_CASE("diodelay", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + + if (det_type == defs::CHIPTESTBOARD) { + { + std::ostringstream oss; + proxy.Call("diodelay", {"0x01010", "0"}, -1, PUT, oss); + REQUIRE(oss.str() == "diodelay [0x01010, 0]\n"); + } + { + std::ostringstream oss; + proxy.Call("diodelay", {"0x01010", "775"}, -1, PUT, oss); + REQUIRE(oss.str() == "diodelay [0x01010, 775]\n"); + } + REQUIRE_THROWS(proxy.Call("diodelay", {}, -1, GET)); + REQUIRE_THROWS(proxy.Call("diodelay", {"0x01010", "776"}, -1, GET)); + } else { + REQUIRE_THROWS(proxy.Call("diodelay", {"0x01010", "775"}, -1, PUT)); + } +} + +TEST_CASE("led", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + + if (det_type == defs::CHIPTESTBOARD) { + auto prev_val = det.getLEDEnable(); + { + std::ostringstream oss; + proxy.Call("led", {"1"}, -1, PUT, oss); + REQUIRE(oss.str() == "led 1\n"); + } + { + std::ostringstream oss; + proxy.Call("led", {"0"}, -1, PUT, oss); + REQUIRE(oss.str() == "led 0\n"); + } + { + std::ostringstream oss; + proxy.Call("led", {}, -1, GET, oss); + REQUIRE(oss.str() == "led 0\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setLEDEnable(prev_val[i], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("led", {}, -1, GET)); + } +} \ No newline at end of file diff --git a/slsDetectorSoftware/tests/test-CmdProxy.cpp b/slsDetectorSoftware/tests/test-CmdProxy.cpp index a64edd837..152fe379a 100644 --- a/slsDetectorSoftware/tests/test-CmdProxy.cpp +++ b/slsDetectorSoftware/tests/test-CmdProxy.cpp @@ -2270,73 +2270,6 @@ TEST_CASE("resetfpga", "[.cmd]") { // } // } -// TEST_CASE("diodelay", "[.cmd][.ctb]") { -// if (test::type == defs::CHIPTESTBOARD) { -// REQUIRE_NOTHROW(multiSlsDetectorClient("diodelay 0x01010 125", PUT)); -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("diodelay 0x01010 775", -// PUT, nullptr, oss)); REQUIRE(oss.str() == "diodelay [0x01010, -// 775]\n"); -// } -// REQUIRE_NOTHROW(multiSlsDetectorClient("diodelay 0x01010 0", PUT)); -// REQUIRE_THROWS(multiSlsDetectorClient("diodelay [0x01010, 776]", -// PUT)); -// } else { -// REQUIRE_THROWS(multiSlsDetectorClient("diodelay", GET)); -// } -// } - -// TEST_CASE("extsampling", "[.cmd][.ctb]") { -// if (test::type == defs::CHIPTESTBOARD) { -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("extsampling 1", PUT, -// nullptr, oss)); REQUIRE(oss.str() == "extsampling 1\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("extsampling", GET, -// nullptr, oss)); REQUIRE(oss.str() == "extsampling 1\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("extsampling 0", PUT, -// nullptr, oss)); REQUIRE(oss.str() == "extsampling 0\n"); -// } -// } else { -// REQUIRE_THROWS(multiSlsDetectorClient("extsampling", GET)); -// } -// } - -// TEST_CASE("extsamplingsrc", "[.cmd][.ctb]") { -// if (test::type == defs::CHIPTESTBOARD) { -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("extsamplingsrc 1", PUT, -// nullptr, oss)); REQUIRE(oss.str() == "extsamplingsrc 1\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("extsamplingsrc 0", PUT, -// nullptr, oss)); REQUIRE(oss.str() == "extsamplingsrc 0\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("extsamplingsrc 15", PUT, -// nullptr, oss)); REQUIRE(oss.str() == "extsamplingsrc 15\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("extsamplingsrc", GET, -// nullptr, oss)); REQUIRE(oss.str() == "extsamplingsrc 15\n"); -// } -// REQUIRE_THROWS(multiSlsDetectorClient("extsamplingsrc 64", PUT)); -// } else { -// REQUIRE_THROWS(multiSlsDetectorClient("extsamplingsrc", GET)); -// } -// } - // TEST_CASE("adcinvert", "[.cmd][.ctb]") { // if (test::type == defs::CHIPTESTBOARD || test::type == // defs::JUNGFRAU) { @@ -2362,30 +2295,6 @@ TEST_CASE("resetfpga", "[.cmd]") { // } // } -// TEST_CASE("adcenable", "[.cmd][.ctb]") { -// if (test::type == defs::CHIPTESTBOARD) { -// std::string s; -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("adcenable", GET, nullptr, -// oss)); s = oss.str(); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("adcenable 0x8d0a21d4", -// PUT, nullptr, oss)); REQUIRE(oss.str() == "adcenable -// 0x8d0a21d4\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient(s, PUT, nullptr, oss)); -// REQUIRE(oss.str() == s); -// } -// } else { -// REQUIRE_THROWS(multiSlsDetectorClient("adcenable", GET)); -// } -// } - // TEST_CASE("adcvpp", "[.cmd][.ctb]") { // if (test::type == defs::CHIPTESTBOARD) { // int prev_val = 0; @@ -2414,149 +2323,6 @@ TEST_CASE("resetfpga", "[.cmd]") { // } // } -// TEST_CASE("dbitpipeline", "[.cmd][.ctb]") { -// if (test::type == defs::CHIPTESTBOARD) { -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("dbitpipeline 1", PUT, -// nullptr, oss)); REQUIRE(oss.str() == "dbitpipeline 1\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("dbitpipeline 0", PUT, -// nullptr, oss)); REQUIRE(oss.str() == "dbitpipeline 0\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("dbitpipeline 15", PUT, -// nullptr, oss)); REQUIRE(oss.str() == "dbitpipeline 15\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("dbitpipeline", GET, -// nullptr, oss)); REQUIRE(oss.str() == "dbitpipeline 15\n"); -// } -// REQUIRE_NOTHROW(multiSlsDetectorClient("dbitpipeline 0", PUT)); -// } else { -// REQUIRE_THROWS(multiSlsDetectorClient("dbitpipeline", GET)); -// } -// } - -// TEST_CASE("adcpipeline", "[.cmd][.ctb]") { -// if (test::type == defs::CHIPTESTBOARD) { -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("adcpipeline 1", PUT, -// nullptr, oss)); REQUIRE(oss.str() == "adcpipeline 1\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("adcpipeline 0", PUT, -// nullptr, oss)); REQUIRE(oss.str() == "adcpipeline 0\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("adcpipeline 15", PUT, -// nullptr, oss)); REQUIRE(oss.str() == "adcpipeline 15\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("adcpipeline", GET, -// nullptr, oss)); REQUIRE(oss.str() == "adcpipeline 15\n"); -// } -// REQUIRE_NOTHROW(multiSlsDetectorClient("adcpipeline 0", PUT)); -// } else { -// REQUIRE_THROWS(multiSlsDetectorClient("adcpipeline", GET)); -// } -// } - -// TEST_CASE("romode", "[.cmd][.ctb]") { -// if (test::type == defs::CHIPTESTBOARD) { -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("romode digital", PUT, -// nullptr, oss)); REQUIRE(oss.str() == "romode digital\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("romode analog_digital", -// PUT, nullptr, oss)); REQUIRE(oss.str() == "romode -// analog_digital\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("romode analog", PUT, -// nullptr, oss)); REQUIRE(oss.str() == "romode analog\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("romode", GET, nullptr, -// oss)); REQUIRE(oss.str() == "romode analog\n"); -// } -// } else { -// REQUIRE_THROWS(multiSlsDetectorClient("romode", GET)); -// } -// } - -// TEST_CASE("samples", "[.cmd][.ctb]") { -// if (test::type == defs::CHIPTESTBOARD) { -// uint64_t prev_value1 = 0; -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("asamples", GET, nullptr, -// oss)); std::string s = (oss.str()).erase (0, strlen("asamples -// ")); prev_value1 = std::stoi(s); -// } -// std::cout<<"asamples:"< Date: Thu, 4 Jun 2020 15:21:53 +0200 Subject: [PATCH 09/13] WIP --- slsDetectorSoftware/include/Detector.h | 8 +- slsDetectorSoftware/src/CmdProxy.cpp | 2 +- slsDetectorSoftware/src/CmdProxy.h | 4 +- slsDetectorSoftware/tests/CMakeLists.txt | 1 + .../tests/test-CmdProxy-chiptestboard.cpp | 16 +- .../tests/test-CmdProxy-pattern.cpp | 543 ++++++++++++++++++ slsDetectorSoftware/tests/test-CmdProxy.cpp | 319 ---------- 7 files changed, 559 insertions(+), 334 deletions(-) create mode 100644 slsDetectorSoftware/tests/test-CmdProxy-pattern.cpp diff --git a/slsDetectorSoftware/include/Detector.h b/slsDetectorSoftware/include/Detector.h index 026297a13..20506f542 100644 --- a/slsDetectorSoftware/include/Detector.h +++ b/slsDetectorSoftware/include/Detector.h @@ -1186,16 +1186,16 @@ class Detector { /** [CTB][Moench][Mythen3] */ void savePattern(const std::string &fname); - /** [CTB][Moench][Mythen3] */ + /** [CTB][Moench] */ Result getPatternIOControl(Positions pos = {}) const; - /** [CTB][Moench][Mythen3] */ + /** [CTB][Moench] */ void setPatternIOControl(uint64_t word, Positions pos = {}); - /** [CTB][Moench][Mythen3] */ + /** [CTB][Moench] */ Result getPatternClockControl(Positions pos = {}) const; - /** [CTB][Moench][Mythen3] */ + /** [CTB][Moench] */ void setPatternClockControl(uint64_t word, Positions pos = {}); /** [CTB][Moench][Mythen3] same as executing for ctb and moench */ diff --git a/slsDetectorSoftware/src/CmdProxy.cpp b/slsDetectorSoftware/src/CmdProxy.cpp index d09090812..5669a4655 100644 --- a/slsDetectorSoftware/src/CmdProxy.cpp +++ b/slsDetectorSoftware/src/CmdProxy.cpp @@ -1961,7 +1961,7 @@ std::string CmdProxy::Pattern(int action) { std::ostringstream os; os << cmd << ' '; if (action == defs::HELP_ACTION) { - os << "[fname]\n\t[Mythen3][Moench][Ctb][Moench] Loads binary pattern " + os << "[fname]\n\t[Mythen3][Moench][Ctb] Loads binary pattern " "file with only pattern " "words" << '\n'; diff --git a/slsDetectorSoftware/src/CmdProxy.h b/slsDetectorSoftware/src/CmdProxy.h index 1f53d552f..3e54303b7 100644 --- a/slsDetectorSoftware/src/CmdProxy.h +++ b/slsDetectorSoftware/src/CmdProxy.h @@ -2027,12 +2027,12 @@ class CmdProxy { INTEGER_COMMAND_HEX(patioctrl, getPatternIOControl, setPatternIOControl, StringTo, - "[64 bit mask]\n\t[Ctb][Moench][Mythen3] 64 bit mask " + "[64 bit mask]\n\t[Ctb][Moench] 64 bit mask " "defining input (0) and output (1) signals."); INTEGER_COMMAND_HEX(patclkctrl, getPatternClockControl, setPatternClockControl, StringTo, - "[64 bit mask]\n\t[Ctb][Moench][Mythen3] 64 bit mask " + "[64 bit mask]\n\t[Ctb][Moench] 64 bit mask " "defining output clock enable."); INTEGER_COMMAND_HEX( diff --git a/slsDetectorSoftware/tests/CMakeLists.txt b/slsDetectorSoftware/tests/CMakeLists.txt index 8fdd3e848..3d48b65a7 100755 --- a/slsDetectorSoftware/tests/CMakeLists.txt +++ b/slsDetectorSoftware/tests/CMakeLists.txt @@ -3,6 +3,7 @@ target_sources(tests PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/test-slsDetector.cpp ${CMAKE_CURRENT_SOURCE_DIR}/test-CmdProxy.cpp ${CMAKE_CURRENT_SOURCE_DIR}/test-CmdProxy-rx.cpp + ${CMAKE_CURRENT_SOURCE_DIR}/test-CmdProxy-pattern.cpp ${CMAKE_CURRENT_SOURCE_DIR}/test-CmdProxy-eiger.cpp ${CMAKE_CURRENT_SOURCE_DIR}/test-CmdProxy-jungfrau.cpp ${CMAKE_CURRENT_SOURCE_DIR}/test-CmdProxy-mythen3.cpp diff --git a/slsDetectorSoftware/tests/test-CmdProxy-chiptestboard.cpp b/slsDetectorSoftware/tests/test-CmdProxy-chiptestboard.cpp index 2a3a49b49..f489b8c6a 100644 --- a/slsDetectorSoftware/tests/test-CmdProxy-chiptestboard.cpp +++ b/slsDetectorSoftware/tests/test-CmdProxy-chiptestboard.cpp @@ -116,8 +116,8 @@ TEST_CASE("samples", "[.cmd][.new]") { } { std::ostringstream oss; - proxy.Call("samples", {"1"}, -1, PUT, oss); - REQUIRE(oss.str() == "samples 1\n"); + proxy.Call("samples", {"25"}, -1, PUT, oss); + REQUIRE(oss.str() == "samples 25\n"); } { std::ostringstream oss; @@ -159,8 +159,8 @@ TEST_CASE("asamples", "[.cmd][.new]") { auto prev_val = det.getNumberOfAnalogSamples(); { std::ostringstream oss; - proxy.Call("asamples", {"1"}, -1, PUT, oss); - REQUIRE(oss.str() == "asamples 1\n"); + proxy.Call("asamples", {"25"}, -1, PUT, oss); + REQUIRE(oss.str() == "asamples 25\n"); } { std::ostringstream oss; @@ -333,8 +333,8 @@ TEST_CASE("adcenable", "[.cmd][.new]") { auto prev_val = det.getADCEnableMask(); { std::ostringstream oss; - proxy.Call("adcenable", {"0x8d0a21d4"}, -1, PUT, oss); - REQUIRE(oss.str() == "adcenable 0x8d0a21d4\n"); + proxy.Call("adcenable", {"0x8d0aa0d8"}, -1, PUT, oss); + REQUIRE(oss.str() == "adcenable 0x8d0aa0d8\n"); } { std::ostringstream oss; @@ -363,8 +363,8 @@ TEST_CASE("adcenable10g", "[.cmd][.new]") { auto prev_val = det.getTenGigaADCEnableMask(); { std::ostringstream oss; - proxy.Call("adcenable10g", {"0xff00f0f0"}, -1, PUT, oss); - REQUIRE(oss.str() == "adcenable10g 0xff00f0f0\n"); + proxy.Call("adcenable10g", {"0xff0000ff"}, -1, PUT, oss); + REQUIRE(oss.str() == "adcenable10g 0xff0000ff\n"); } { std::ostringstream oss; diff --git a/slsDetectorSoftware/tests/test-CmdProxy-pattern.cpp b/slsDetectorSoftware/tests/test-CmdProxy-pattern.cpp new file mode 100644 index 000000000..09b36960a --- /dev/null +++ b/slsDetectorSoftware/tests/test-CmdProxy-pattern.cpp @@ -0,0 +1,543 @@ +#include "CmdProxy.h" +#include "Detector.h" +#include "catch.hpp" +#include "sls_detector_defs.h" +#include + +#include "Result.h" +#include "ToString.h" +#include "test-CmdProxy-global.h" +#include "tests/globals.h" +#include "versionAPI.h" + +using sls::CmdProxy; +using sls::Detector; +using test::GET; +using test::PUT; + +/* Pattern */ + +TEST_CASE("pattern", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::CHIPTESTBOARD || det_type == defs::MOENCH || + det_type == defs::MYTHEN3) { + // no proper test for put + REQUIRE_THROWS(proxy.Call("pattern", {}, -1, GET)); + } else { + REQUIRE_THROWS(proxy.Call("pattern", {}, -1, GET)); + } +} + +TEST_CASE("savepattern", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::CHIPTESTBOARD || det_type == defs::MOENCH || + det_type == defs::MYTHEN3) { + REQUIRE_THROWS( + proxy.Call("savepattern", {"/tmp/pattern.txt"}, -1, GET)); + REQUIRE_NOTHROW( + proxy.Call("savepattern", {"/tmp/pattern.txt"}, -1, PUT)); + } else { + REQUIRE_THROWS( + proxy.Call("savepattern", {"/tmp/pattern.txt"}, -1, PUT)); + } +} + +TEST_CASE("patioctrl", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + + if (det_type == defs::CHIPTESTBOARD || det_type == defs::MOENCH) { + auto prev_val = det.getPatternIOControl(); + { + std::ostringstream oss; + proxy.Call("patioctrl", {"0xc15004808d0a21a4"}, -1, PUT, oss); + REQUIRE(oss.str() == "patioctrl 0xc15004808d0a21a4\n"); + } + { + std::ostringstream oss; + proxy.Call("patioctrl", {"0x0"}, -1, PUT, oss); + REQUIRE(oss.str() == "patioctrl 0x0\n"); + } + { + std::ostringstream oss; + proxy.Call("patioctrl", {}, -1, GET, oss); + REQUIRE(oss.str() == "patioctrl 0x0\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setPatternIOControl(prev_val[i], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("patioctrl", {}, -1, GET)); + } +} + +TEST_CASE("patclkctrl", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + + if (det_type == defs::CHIPTESTBOARD || det_type == defs::MOENCH) { + auto prev_val = det.getPatternClockControl(); + { + std::ostringstream oss; + proxy.Call("patclkctrl", {"0xc15004808d0a21a4"}, -1, PUT, oss); + REQUIRE(oss.str() == "patclkctrl 0xc15004808d0a21a4\n"); + } + { + std::ostringstream oss; + proxy.Call("patclkctrl", {"0x0"}, -1, PUT, oss); + REQUIRE(oss.str() == "patclkctrl 0x0\n"); + } + { + std::ostringstream oss; + proxy.Call("patclkctrl", {}, -1, GET, oss); + REQUIRE(oss.str() == "patclkctrl 0x0\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setPatternClockControl(prev_val[i], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("patclkctrl", {}, -1, GET)); + } +} + +TEST_CASE("patword", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + + if (det_type == defs::CHIPTESTBOARD || det_type == defs::MOENCH || + det_type == defs::MYTHEN3) { + int addr = 0x23; + std::string saddr = sls::ToStringHex(addr); + auto prev_val = det.getPatternWord(addr); + { + std::ostringstream oss; + proxy.Call("patword", {saddr, "0xc15004808d0a21a4"}, -1, PUT, oss); + REQUIRE(oss.str() == + "patword [" + saddr + ", 0xc15004808d0a21a4]\n"); + } + { + std::ostringstream oss; + proxy.Call("patword", {saddr, "0x0"}, -1, PUT, oss); + REQUIRE(oss.str() == "patword [" + saddr + ", 0x0]\n"); + } + { + std::ostringstream oss; + proxy.Call("patword", {saddr}, -1, GET, oss); + REQUIRE(oss.str() == "patword 0x0\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setPatternWord(addr, prev_val[i], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("patword", {"0x23"}, -1, GET)); + } +} + +TEST_CASE("patlimits", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + + if (det_type == defs::CHIPTESTBOARD || det_type == defs::MOENCH || + det_type == defs::MYTHEN3) { + auto prev_val = det.getPatternLoopAddresses(-1); + { + std::ostringstream oss; + proxy.Call("patlimits", {"0x20", "0x5c"}, -1, PUT, oss); + REQUIRE(oss.str() == "patlimits [0x20, 0x5c]\n"); + } + { + std::ostringstream oss; + proxy.Call("patlimits", {}, -1, GET, oss); + REQUIRE(oss.str() == "patlimits [0x20, 0x5c]\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setPatternLoopAddresses(-1, prev_val[i][0], prev_val[i][1], + {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("patlimits", {}, -1, GET)); + } +} + +TEST_CASE("patloop0", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + + if (det_type == defs::CHIPTESTBOARD || det_type == defs::MOENCH || + det_type == defs::MYTHEN3) { + auto prev_val = det.getPatternLoopAddresses(0); + { + std::ostringstream oss; + proxy.Call("patloop0", {"0x20", "0x5c"}, -1, PUT, oss); + REQUIRE(oss.str() == "patloop0 [0x20, 0x5c]\n"); + } + { + std::ostringstream oss; + proxy.Call("patloop0", {}, -1, GET, oss); + REQUIRE(oss.str() == "patloop0 [0x20, 0x5c]\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setPatternLoopAddresses(0, prev_val[i][0], prev_val[i][1], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("patloop0", {}, -1, GET)); + } +} + +TEST_CASE("patloop1", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + + if (det_type == defs::CHIPTESTBOARD || det_type == defs::MOENCH || + det_type == defs::MYTHEN3) { + auto prev_val = det.getPatternLoopAddresses(1); + { + std::ostringstream oss; + proxy.Call("patloop1", {"0x20", "0x5c"}, -1, PUT, oss); + REQUIRE(oss.str() == "patloop1 [0x20, 0x5c]\n"); + } + { + std::ostringstream oss; + proxy.Call("patloop1", {}, -1, GET, oss); + REQUIRE(oss.str() == "patloop1 [0x20, 0x5c]\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setPatternLoopAddresses(1, prev_val[i][0], prev_val[i][1], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("patloop1", {}, -1, GET)); + } +} + +TEST_CASE("patloop2", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + + if (det_type == defs::CHIPTESTBOARD || det_type == defs::MOENCH || + det_type == defs::MYTHEN3) { + auto prev_val = det.getPatternLoopAddresses(2); + { + std::ostringstream oss; + proxy.Call("patloop2", {"0x20", "0x5c"}, -1, PUT, oss); + REQUIRE(oss.str() == "patloop2 [0x20, 0x5c]\n"); + } + { + std::ostringstream oss; + proxy.Call("patloop2", {}, -1, GET, oss); + REQUIRE(oss.str() == "patloop2 [0x20, 0x5c]\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setPatternLoopAddresses(2, prev_val[i][0], prev_val[i][1], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("patloop2", {}, -1, GET)); + } +} + +TEST_CASE("patnloop0", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + + if (det_type == defs::CHIPTESTBOARD || det_type == defs::MOENCH || + det_type == defs::MYTHEN3) { + auto prev_val = det.getPatternLoopCycles(0); + { + std::ostringstream oss; + proxy.Call("patnloop0", {"5"}, -1, PUT, oss); + REQUIRE(oss.str() == "patnloop0 5\n"); + } + { + std::ostringstream oss; + proxy.Call("patnloop0", {}, -1, GET, oss); + REQUIRE(oss.str() == "patnloop0 5\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setPatternLoopCycles(0, prev_val[i], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("patnloop0", {}, -1, GET)); + } +} + +TEST_CASE("patnloop1", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + + if (det_type == defs::CHIPTESTBOARD || det_type == defs::MOENCH || + det_type == defs::MYTHEN3) { + auto prev_val = det.getPatternLoopCycles(1); + { + std::ostringstream oss; + proxy.Call("patnloop1", {"5"}, -1, PUT, oss); + REQUIRE(oss.str() == "patnloop1 5\n"); + } + { + std::ostringstream oss; + proxy.Call("patnloop1", {}, -1, GET, oss); + REQUIRE(oss.str() == "patnloop1 5\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setPatternLoopCycles(1, prev_val[i], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("patnloop1", {}, -1, GET)); + } +} + +TEST_CASE("patnloop2", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + + if (det_type == defs::CHIPTESTBOARD || det_type == defs::MOENCH || + det_type == defs::MYTHEN3) { + auto prev_val = det.getPatternLoopCycles(2); + { + std::ostringstream oss; + proxy.Call("patnloop2", {"5"}, -1, PUT, oss); + REQUIRE(oss.str() == "patnloop2 5\n"); + } + { + std::ostringstream oss; + proxy.Call("patnloop2", {}, -1, GET, oss); + REQUIRE(oss.str() == "patnloop2 5\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setPatternLoopCycles(2, prev_val[i], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("patnloop2", {}, -1, GET)); + } +} + +TEST_CASE("patwait0", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + + if (det_type == defs::CHIPTESTBOARD || det_type == defs::MOENCH || + det_type == defs::MYTHEN3) { + auto prev_val = det.getPatternWaitAddr(0); + { + std::ostringstream oss; + proxy.Call("patwait0", {"0x5c"}, -1, PUT, oss); + REQUIRE(oss.str() == "patwait0 0x5c\n"); + } + { + std::ostringstream oss; + proxy.Call("patwait0", {}, -1, GET, oss); + REQUIRE(oss.str() == "patwait0 0x5c\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setPatternWaitAddr(0, prev_val[i], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("patwait0", {}, -1, GET)); + } +} + +TEST_CASE("patwait1", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + + if (det_type == defs::CHIPTESTBOARD || det_type == defs::MOENCH || + det_type == defs::MYTHEN3) { + auto prev_val = det.getPatternWaitAddr(1); + { + std::ostringstream oss; + proxy.Call("patwait1", {"0x5c"}, -1, PUT, oss); + REQUIRE(oss.str() == "patwait1 0x5c\n"); + } + { + std::ostringstream oss; + proxy.Call("patwait1", {}, -1, GET, oss); + REQUIRE(oss.str() == "patwait1 0x5c\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setPatternWaitAddr(1, prev_val[i], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("patwait1", {}, -1, GET)); + } +} + +TEST_CASE("patwait2", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + + if (det_type == defs::CHIPTESTBOARD || det_type == defs::MOENCH || + det_type == defs::MYTHEN3) { + auto prev_val = det.getPatternWaitAddr(2); + { + std::ostringstream oss; + proxy.Call("patwait2", {"0x5c"}, -1, PUT, oss); + REQUIRE(oss.str() == "patwait2 0x5c\n"); + } + { + std::ostringstream oss; + proxy.Call("patwait2", {}, -1, GET, oss); + REQUIRE(oss.str() == "patwait2 0x5c\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setPatternWaitAddr(2, prev_val[i], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("patwait2", {}, -1, GET)); + } +} + +TEST_CASE("patwaittime0", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + + if (det_type == defs::CHIPTESTBOARD || det_type == defs::MOENCH || + det_type == defs::MYTHEN3) { + auto prev_val = det.getPatternWaitTime(0); + { + std::ostringstream oss; + proxy.Call("patwaittime0", {"8589936640"}, -1, PUT, oss); + REQUIRE(oss.str() == "patwaittime0 8589936640\n"); + } + { + std::ostringstream oss; + proxy.Call("patwaittime0", {}, -1, GET, oss); + REQUIRE(oss.str() == "patwaittime0 8589936640\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setPatternWaitTime(0, prev_val[i], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("patwaittime0", {}, -1, GET)); + } +} + +TEST_CASE("patwaittime1", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + + if (det_type == defs::CHIPTESTBOARD || det_type == defs::MOENCH || + det_type == defs::MYTHEN3) { + auto prev_val = det.getPatternWaitTime(1); + { + std::ostringstream oss; + proxy.Call("patwaittime1", {"8589936640"}, -1, PUT, oss); + REQUIRE(oss.str() == "patwaittime1 8589936640\n"); + } + { + std::ostringstream oss; + proxy.Call("patwaittime1", {}, -1, GET, oss); + REQUIRE(oss.str() == "patwaittime1 8589936640\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setPatternWaitTime(1, prev_val[i], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("patwaittime1", {}, -1, GET)); + } +} + +TEST_CASE("patwaittime2", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + + if (det_type == defs::CHIPTESTBOARD || det_type == defs::MOENCH || + det_type == defs::MYTHEN3) { + auto prev_val = det.getPatternWaitTime(2); + { + std::ostringstream oss; + proxy.Call("patwaittime2", {"8589936640"}, -1, PUT, oss); + REQUIRE(oss.str() == "patwaittime2 8589936640\n"); + } + { + std::ostringstream oss; + proxy.Call("patwaittime2", {}, -1, GET, oss); + REQUIRE(oss.str() == "patwaittime2 8589936640\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setPatternWaitTime(2, prev_val[i], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("patwaittime2", {}, -1, GET)); + } +} + +TEST_CASE("patmask", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + + if (det_type == defs::CHIPTESTBOARD || det_type == defs::MOENCH || + det_type == defs::MYTHEN3) { + auto prev_val = det.getPatternMask(); + { + std::ostringstream oss; + proxy.Call("patmask", {"0x842f020204200dc0"}, -1, PUT, oss); + REQUIRE(oss.str() == "patmask 0x842f020204200dc0\n"); + } + { + std::ostringstream oss; + proxy.Call("patmask", {}, -1, GET, oss); + REQUIRE(oss.str() == "patmask 0x842f020204200dc0\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setPatternMask(prev_val[i], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("patmask", {}, -1, GET)); + } +} + +TEST_CASE("patsetbit", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + + if (det_type == defs::CHIPTESTBOARD || det_type == defs::MOENCH || + det_type == defs::MYTHEN3) { + auto prev_val = det.getPatternBitMask(); + { + std::ostringstream oss; + proxy.Call("patsetbit", {"0x842f020204200dc0"}, -1, PUT, oss); + REQUIRE(oss.str() == "patsetbit 0x842f020204200dc0\n"); + } + { + std::ostringstream oss; + proxy.Call("patsetbit", {}, -1, GET, oss); + REQUIRE(oss.str() == "patsetbit 0x842f020204200dc0\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setPatternBitMask(prev_val[i], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("patsetbit", {}, -1, GET)); + } +} + +TEST_CASE("patternstart", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::MYTHEN3) { + REQUIRE_THROWS(proxy.Call("patternstart", {}, -1, PUT)); + } else { + REQUIRE_THROWS(proxy.Call("patternstart", {}, -1, PUT)); + } +} \ No newline at end of file diff --git a/slsDetectorSoftware/tests/test-CmdProxy.cpp b/slsDetectorSoftware/tests/test-CmdProxy.cpp index 152fe379a..603a2c808 100644 --- a/slsDetectorSoftware/tests/test-CmdProxy.cpp +++ b/slsDetectorSoftware/tests/test-CmdProxy.cpp @@ -1951,325 +1951,6 @@ TEST_CASE("resetfpga", "[.cmd]") { // REQUIRE_NOTHROW(multiSlsDetectorClient("rx_jsonaddheader \"\"", PUT)); // } -// TEST_CASE("patsetbit", "[.cmd][.ctb]") { -// if (test::type == defs::CHIPTESTBOARD) { -// uint64_t val = 0; -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("patsetbit", GET, nullptr, -// oss)); std::string s = (oss.str()).erase (0, strlen("patsetbit -// ")); val = stoul(s, 0, 16); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("patsetbit -// 0x842f020204200dc0", PUT, nullptr, oss)); REQUIRE(oss.str() == -// "patsetbit 0x842f020204200dc0\n"); -// } -// REQUIRE_NOTHROW(multiSlsDetectorClient("patsetbit " + -// sls::ToStringHex(val), PUT)); -// } else { -// REQUIRE_THROWS(multiSlsDetectorClient("patsetbit", GET)); -// } -// } - -// TEST_CASE("patmask", "[.cmd][.ctb]") { -// if (test::type == defs::CHIPTESTBOARD) { -// uint64_t val = 0; -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("patmask", GET, nullptr, -// oss)); std::string s = (oss.str()).erase (0, strlen("patmask ")); -// val = stoul(s, 0, 16); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("patmask -// 0x842f020204200dc0", PUT, nullptr, oss)); REQUIRE(oss.str() == -// "patmask 0x842f020204200dc0\n"); -// } -// REQUIRE_NOTHROW(multiSlsDetectorClient("patmask " + -// sls::ToStringHex(val), PUT)); -// } else { -// REQUIRE_THROWS(multiSlsDetectorClient("patmask", GET)); -// } -// } - -// TEST_CASE("patwaittime", "[.cmd][.ctb]") { -// for (int loop = 0; loop < 3; ++loop) { -// if (test::type == defs::CHIPTESTBOARD) { -// uint64_t val = 0; -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("patwaittime" + -// std::to_string(loop), GET, nullptr, oss)); std::string s = -// (oss.str()).erase (0, strlen("patwaittime") + 2); val = -// std::stoul(s); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("patwaittime" + -// std::to_string(loop) + " 8589936640", PUT, nullptr, oss)); -// REQUIRE(oss.str() == "patwaittime" + std::to_string(loop) + " -// 8589936640\n"); -// } -// REQUIRE_NOTHROW(multiSlsDetectorClient("patwaittime" + -// std::to_string(loop) + ' ' + std::to_string(val), PUT)); -// } else { -// REQUIRE_THROWS(multiSlsDetectorClient("patwaittime" + -// std::to_string(loop), GET)); -// } -// } -// } - -// TEST_CASE("patwait", "[.cmd][.ctb]") { -// for (int loop = 0; loop < 3; ++loop) { -// if (test::type == defs::CHIPTESTBOARD) { -// int val = 0; -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("patwait" + -// std::to_string(loop), GET, nullptr, oss)); std::string s = -// (oss.str()).erase (0, strlen("patwait") + 2); val = stoul(s, -// 0, 16); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("patwait" + -// std::to_string(loop) + " 0x5c", PUT, nullptr, oss)); -// REQUIRE(oss.str() == "patwait" + std::to_string(loop) + " -// 0x5c\n"); -// } -// REQUIRE_NOTHROW(multiSlsDetectorClient("patwait" + -// std::to_string(loop) + ' ' + sls::ToStringHex(val), PUT)); -// } else { -// REQUIRE_THROWS(multiSlsDetectorClient("patwait" + -// std::to_string(loop), GET)); -// } -// } -// } - -// TEST_CASE("patnloop", "[.cmd][.ctb]") { -// for (int loop = 0; loop < 3; ++loop) { -// if (test::type == defs::CHIPTESTBOARD) { -// int val = 0; -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("patnloop" + -// std::to_string(loop), GET, nullptr, oss)); std::string s = -// (oss.str()).erase (0, strlen("patnloop") + 2); val = -// std::stoi(s); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("patnloop" + -// std::to_string(loop) + " 5", PUT, nullptr, oss)); -// REQUIRE(oss.str() == "patnloop" + std::to_string(loop) + " -// 5\n"); -// } -// REQUIRE_NOTHROW(multiSlsDetectorClient("patnloop" + -// std::to_string(loop) + ' ' + std::to_string(val), PUT)); -// } else { -// REQUIRE_THROWS(multiSlsDetectorClient("patnloop" + -// std::to_string(loop), GET)); -// } -// } -// } - -// TEST_CASE("patloop", "[.cmd][.ctb]") { -// for (int loop = 0; loop < 3; ++loop) { -// if (test::type == defs::CHIPTESTBOARD) { -// uint32_t limit1 = 0, limit2 = 0; -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("patloop" + -// std::to_string(loop), GET, nullptr, oss)); std::string s = -// oss.str(); auto t = sls::split(s, ' '); s = t[1].erase (0, -// 1); limit1 = stoul(s, 0, 16); limit2 = stoul(t[2], 0, 16); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("patloop" + -// std::to_string(loop) + " 0x20 0x5c", PUT, nullptr, oss)); -// REQUIRE(oss.str() == "patloop" + std::to_string(loop) + " -// [0x20, 0x5c]\n"); -// } -// REQUIRE_NOTHROW(multiSlsDetectorClient("patloop" + -// std::to_string(loop) + ' ' + sls::ToStringHex(limit1) + ' ' + -// sls::ToStringHex(limit2), PUT)); -// REQUIRE_THROWS(multiSlsDetectorClient("patloop" + -// std::to_string(loop) + " 0x3", PUT)); -// } else { -// REQUIRE_THROWS(multiSlsDetectorClient("patloop" + -// std::to_string(loop), GET)); -// } -// } -// } - -// TEST_CASE("patlimits", "[.cmd][.ctb]") { -// if (test::type == defs::CHIPTESTBOARD) { -// uint32_t patlimit1 = 0, patlimit2 = 0; -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("patlimits", GET, nullptr, -// oss)); std::string s = oss.str(); auto t = sls::split(s, ' '); s -// = t[1].erase (0, 1); patlimit1 = stoul(s, 0, 16); patlimit2 = -// stoul(t[2], 0, 16); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("patlimits 0x20 0x5c", -// PUT, nullptr, oss)); REQUIRE(oss.str() == "patlimits [0x20, -// 0x5c]\n"); -// } -// REQUIRE_NOTHROW(multiSlsDetectorClient("patlimits " + -// sls::ToStringHex(patlimit1) + ' ' + sls::ToStringHex(patlimit2), -// PUT)); -// } else { -// REQUIRE_THROWS(multiSlsDetectorClient("patlimits", GET)); -// } -// } - -// TEST_CASE("patword", "[.cmd][.ctb]") { -// if (test::type == defs::CHIPTESTBOARD) { -// uint64_t prev_value = 0; -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("patword 0x23", GET, -// nullptr, oss)); std::string s = (oss.str()).erase (0, -// strlen("patword ")); prev_value = stoul(s, 0, 16); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("patword 0x23 -// 0xc15004808d0a21a4", PUT, nullptr, oss)); REQUIRE(oss.str() == -// "patword [0x23, 0xc15004808d0a21a4]\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("patword 0x23 0x0", PUT, -// nullptr, oss)); REQUIRE(oss.str() == "patword [0x23, 0x0]\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("patword 0x23", GET, -// nullptr, oss)); REQUIRE(oss.str() == "patword 0x0\n"); -// } -// REQUIRE_NOTHROW(multiSlsDetectorClient("patword 0x23 " + -// std::to_string(prev_value), PUT)); -// } else { -// REQUIRE_THROWS(multiSlsDetectorClient("patword 0x23", GET)); -// } -// } - -// TEST_CASE("patclkctrl", "[.cmd][.ctb]") { -// if (test::type == defs::CHIPTESTBOARD) { -// uint64_t prev_value = 0; -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("patclkctrl", GET, -// nullptr, oss)); std::string s = (oss.str()).erase (0, -// strlen("patclkctrl ")); prev_value = stoul(s, 0, 16); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("patclkctrl -// 0xc15004808d0a21a4", PUT, nullptr, oss)); REQUIRE(oss.str() == -// "patclkctrl 0xc15004808d0a21a4\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("patclkctrl 0x0", PUT, -// nullptr, oss)); REQUIRE(oss.str() == "patclkctrl 0x0\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("patclkctrl", GET, -// nullptr, oss)); REQUIRE(oss.str() == "patclkctrl 0x0\n"); -// } -// REQUIRE_NOTHROW(multiSlsDetectorClient("patclkctrl " + -// std::to_string(prev_value), PUT)); -// } else { -// REQUIRE_THROWS(multiSlsDetectorClient("patclkctrl", GET)); -// } -// } - -// TEST_CASE("patioctrl", "[.cmd][.ctb]") { -// if (test::type == defs::CHIPTESTBOARD) { -// uint64_t prev_value = 0; -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("patioctrl", GET, nullptr, -// oss)); std::string s = (oss.str()).erase (0, strlen("patioctrl -// ")); prev_value = stoul(s, 0, 16); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("patioctrl -// 0xc15004808d0a21a4", PUT, nullptr, oss)); REQUIRE(oss.str() == -// "patioctrl 0xc15004808d0a21a4\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("patioctrl 0x0", PUT, -// nullptr, oss)); REQUIRE(oss.str() == "patioctrl 0x0\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("patioctrl", GET, nullptr, -// oss)); REQUIRE(oss.str() == "patioctrl 0x0\n"); -// } -// REQUIRE_NOTHROW(multiSlsDetectorClient("patioctrl " + -// std::to_string(prev_value), PUT)); -// } else { -// REQUIRE_THROWS(multiSlsDetectorClient("patioctrl", GET)); -// } -// } - -// TEST_CASE("savepattern", "[.cmd][.ctb]") { -// REQUIRE_THROWS(multiSlsDetectorClient("savepattern", GET)); -// if (test::type == defs::CHIPTESTBOARD) { -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("savepattern -// /tmp/pat.txt", PUT, nullptr, oss)); REQUIRE(oss.str() == -// "savepattern /tmp/pat.txt\n"); -// } -// } else { -// REQUIRE_THROWS(multiSlsDetectorClient("savepattern /tmp/pat.txt", -// PUT)); -// } -// } - -// TEST_CASE("pattern", "[.cmd][.ctb]") { -// REQUIRE_THROWS(multiSlsDetectorClient("pattern", GET)); -// if (test::type == defs::CHIPTESTBOARD) { -// ;// todo test with real file? -// } -// } - -// TEST_CASE("led", "[.cmd][.ctb]") { -// if (test::type == defs::CHIPTESTBOARD) { -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("led 1", PUT, nullptr, -// oss)); REQUIRE(oss.str() == "led 1\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("led 0", PUT, nullptr, -// oss)); REQUIRE(oss.str() == "led 0\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("led", GET, nullptr, -// oss)); REQUIRE(oss.str() == "led 0\n"); -// } -// } else { -// REQUIRE_THROWS(multiSlsDetectorClient("led", GET)); -// } -// } - // TEST_CASE("adcinvert", "[.cmd][.ctb]") { // if (test::type == defs::CHIPTESTBOARD || test::type == // defs::JUNGFRAU) { From 099805ba8bfe7a10bd7840b23df4a2d77e7d5bb8 Mon Sep 17 00:00:00 2001 From: Dhanya Thattil Date: Thu, 4 Jun 2020 17:02:56 +0200 Subject: [PATCH 10/13] WIP --- slsDetectorSoftware/include/Detector.h | 2 +- slsDetectorSoftware/src/CmdProxy.cpp | 6 +- slsDetectorSoftware/src/CmdProxy.h | 4 +- .../tests/test-CmdProxy-chiptestboard.cpp | 30 + .../tests/test-CmdProxy-moench.cpp | 134 ++++ slsDetectorSoftware/tests/test-CmdProxy.cpp | 710 ++++++++---------- 6 files changed, 471 insertions(+), 415 deletions(-) diff --git a/slsDetectorSoftware/include/Detector.h b/slsDetectorSoftware/include/Detector.h index 20506f542..2a4d121bd 100644 --- a/slsDetectorSoftware/include/Detector.h +++ b/slsDetectorSoftware/include/Detector.h @@ -1324,7 +1324,7 @@ class Detector { /** [Jungfrau][CTB][Moench] */ void resetFPGA(Positions pos = {}); - /** [Jungfrau][Gotthard][CTB][Moench] + /** [Jungfrau][Gotthard][CTB][Moench][Mythen3][Gotthard2] * Copy detector server fname from tftp folder of hostname to detector * Also changes respawn server, which is effective after a reboot. */ diff --git a/slsDetectorSoftware/src/CmdProxy.cpp b/slsDetectorSoftware/src/CmdProxy.cpp index 5669a4655..3c7e1103d 100644 --- a/slsDetectorSoftware/src/CmdProxy.cpp +++ b/slsDetectorSoftware/src/CmdProxy.cpp @@ -1548,7 +1548,7 @@ std::string CmdProxy::ClearROI(int action) { WrongNumberOfParameters(0); } det->clearROI({det_id}); - os << "[-1, -1] \n"; + os << "[-1, -1]\n"; } else { throw sls::RuntimeError("Unknown action"); } @@ -2361,7 +2361,9 @@ std::string CmdProxy::CopyDetectorServer(int action) { std::ostringstream os; os << cmd << ' '; if (action == defs::HELP_ACTION) { - os << "[server_name] [pc_host_name]\n\t[Jungfrau][Ctb][Moench] Copies " + os << "[server_name] " + "[pc_host_name]\n\t[Jungfrau][Ctb][Moench][Mythen3][Gotthard2] " + "Copies " "detector " "server via tftp from pc and changes respawn server name in " "/etc/inittab of detector." diff --git a/slsDetectorSoftware/src/CmdProxy.h b/slsDetectorSoftware/src/CmdProxy.h index 3e54303b7..e17172e02 100644 --- a/slsDetectorSoftware/src/CmdProxy.h +++ b/slsDetectorSoftware/src/CmdProxy.h @@ -2081,7 +2081,7 @@ class CmdProxy { INTEGER_COMMAND_HEX( adcinvert, getADCInvert, setADCInvert, StringTo, - "[bitmask]\n\t[Ctb][Moench][Jungfrau][Moench] ADC Inversion " + "[bitmask]\n\t[Ctb][Moench][Jungfrau] ADC Inversion " "Mask.\n\t[Jungfrau][Moench] Inversions on top of the default mask."); /* Insignificant */ @@ -2104,7 +2104,7 @@ class CmdProxy { "\n\tClient IP Address that last communicated with the detector."); GET_COMMAND(nframes, getNumberOfFramesFromStart, - "\n\t[Jungfrau][Mythen3][Gotthard2][Moench][CTB][Moench] " + "\n\t[Jungfrau][Mythen3][Gotthard2][Moench][CTB] " "Number of frames from start run control." "\n\t[Gotthard2] only in continuous mode."); diff --git a/slsDetectorSoftware/tests/test-CmdProxy-chiptestboard.cpp b/slsDetectorSoftware/tests/test-CmdProxy-chiptestboard.cpp index f489b8c6a..18c0d8fa3 100644 --- a/slsDetectorSoftware/tests/test-CmdProxy-chiptestboard.cpp +++ b/slsDetectorSoftware/tests/test-CmdProxy-chiptestboard.cpp @@ -101,6 +101,36 @@ TEST_CASE("Setting and reading back Chip test board dacs", } } +TEST_CASE("adcvpp", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + + if (det_type == defs::CHIPTESTBOARD || det_type == defs::MOENCH) { + auto prev_val = det.getDAC(defs::ADC_VPP, false); + { + std::ostringstream oss; + proxy.Call("adcvpp", {"1"}, -1, PUT, oss); + REQUIRE(oss.str() == "adcvpp 1\n"); + } + { + std::ostringstream oss; + proxy.Call("adcvpp", {"1140", "mv"}, -1, PUT, oss); + REQUIRE(oss.str() == "adcvpp 1140 mv\n"); + } + { + std::ostringstream oss; + proxy.Call("adcvpp", {"mv"}, -1, GET, oss); + REQUIRE(oss.str() == "adcvpp 1140 mv\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setDAC(defs::ADC_VPP, prev_val[i], false, {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("adcvpp", {}, -1, GET)); + } +} + /* CTB/ Moench Specific */ TEST_CASE("samples", "[.cmd][.new]") { diff --git a/slsDetectorSoftware/tests/test-CmdProxy-moench.cpp b/slsDetectorSoftware/tests/test-CmdProxy-moench.cpp index 8506be141..3f3624856 100644 --- a/slsDetectorSoftware/tests/test-CmdProxy-moench.cpp +++ b/slsDetectorSoftware/tests/test-CmdProxy-moench.cpp @@ -106,3 +106,137 @@ TEST_CASE("Setting and reading back MOENCH dacs", "[.cmd][.dacs][.new]") { REQUIRE_THROWS(proxy.Call("vcom_adc2", {}, -1, GET)); } } + +/* Moench */ + +TEST_CASE("emin", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::MOENCH) { + auto prev_val = det.getDetectorMinMaxEnergyThreshold(false); + { + std::ostringstream oss; + proxy.Call("emin", {"100"}, -1, PUT, oss); + REQUIRE(oss.str() == "emin 100\n"); + } + { + std::ostringstream oss; + proxy.Call("emin", {"200"}, -1, PUT, oss); + REQUIRE(oss.str() == "emin 200\n"); + } + { + std::ostringstream oss; + proxy.Call("emin", {}, -1, GET, oss); + REQUIRE(oss.str() == "emin 200\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setDetectorMinMaxEnergyThreshold(false, prev_val[i], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("emin", {}, -1, GET)); + } +} + +TEST_CASE("emax", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::MOENCH) { + auto prev_val = det.getDetectorMinMaxEnergyThreshold(true); + { + std::ostringstream oss; + proxy.Call("emax", {"100"}, -1, PUT, oss); + REQUIRE(oss.str() == "emax 100\n"); + } + { + std::ostringstream oss; + proxy.Call("emax", {"200"}, -1, PUT, oss); + REQUIRE(oss.str() == "emax 200\n"); + } + { + std::ostringstream oss; + proxy.Call("emax", {}, -1, GET, oss); + REQUIRE(oss.str() == "emax 200\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setDetectorMinMaxEnergyThreshold(true, prev_val[i], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("emax", {}, -1, GET)); + } +} + +TEST_CASE("framemode", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::MOENCH) { + auto prev_val = det.getFrameMode(); + { + std::ostringstream oss; + proxy.Call("framemode", {"pedestal"}, -1, PUT, oss); + REQUIRE(oss.str() == "framemode pedestal\n"); + } + { + std::ostringstream oss; + proxy.Call("framemode", {"newpedestal"}, -1, PUT, oss); + REQUIRE(oss.str() == "framemode newpedestal\n"); + } + { + std::ostringstream oss; + proxy.Call("framemode", {"flatfield"}, -1, PUT, oss); + REQUIRE(oss.str() == "framemode flatfield\n"); + } + { + std::ostringstream oss; + proxy.Call("framemode", {"newflatfield"}, -1, PUT, oss); + REQUIRE(oss.str() == "framemode newflatfield\n"); + } + { + std::ostringstream oss; + proxy.Call("framemode", {}, -1, GET, oss); + REQUIRE(oss.str() == "framemode newflatfield\n"); + } + REQUIRE_THROWS(proxy.Call("framemode", {"counting"}, -1, PUT)); + for (int i = 0; i != det.size(); ++i) { + det.setFrameMode(prev_val[i], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("framemode", {}, -1, GET)); + } +} + +TEST_CASE("detectormode", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::MOENCH) { + auto prev_val = det.getDetectorMode(); + { + std::ostringstream oss; + proxy.Call("detectormode", {"counting"}, -1, PUT, oss); + REQUIRE(oss.str() == "detectormode counting\n"); + } + { + std::ostringstream oss; + proxy.Call("detectormode", {"interpolating"}, -1, PUT, oss); + REQUIRE(oss.str() == "detectormode interpolating\n"); + } + { + std::ostringstream oss; + proxy.Call("detectormode", {"analog"}, -1, PUT, oss); + REQUIRE(oss.str() == "detectormode analog\n"); + } + std::ostringstream oss; + proxy.Call("detectormode", {}, -1, GET, oss); + REQUIRE(oss.str() == "detectormode analog\n"); + + REQUIRE_THROWS(proxy.Call("detectormode", {"pedestal"}, -1, PUT)); + for (int i = 0; i != det.size(); ++i) { + det.setDetectorMode(prev_val[i], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("detectormode", {}, -1, GET)); + } +} \ No newline at end of file diff --git a/slsDetectorSoftware/tests/test-CmdProxy.cpp b/slsDetectorSoftware/tests/test-CmdProxy.cpp index 603a2c808..aca1eb7fd 100644 --- a/slsDetectorSoftware/tests/test-CmdProxy.cpp +++ b/slsDetectorSoftware/tests/test-CmdProxy.cpp @@ -872,6 +872,7 @@ TEST_CASE("imagetest", "[.cmd][.new]") { Detector det; CmdProxy proxy(&det); auto det_type = det.getDetectorType().squash(); + // cannot test only for virtual eiger/jungfrau if (det_type == defs::GOTTHARD) { auto prev_val = det.getImageTestMode(); { @@ -1508,16 +1509,240 @@ TEST_CASE("zmqip", "[.cmd][.new]") { /* Advanced */ -TEST_CASE("initialchecks", "[.cmd]") { +TEST_CASE("programfpga", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::CHIPTESTBOARD || det_type == defs::MOENCH || + det_type == defs::JUNGFRAU || det_type == defs::MYTHEN3 || + det_type == defs::GOTTHARD2) { + // TODO program a real board? + /// afs/psi.ch/project/sls_det_firmware/jungfrau_firmware/cyclone_V/v0_8/Jungfrau_MCB.pof + REQUIRE_THROWS(proxy.Call("programfpga", {}, -1, GET)); + } else { + REQUIRE_THROWS(proxy.Call("programfpga", {}, -1, GET)); + REQUIRE_THROWS(proxy.Call("programfpga", {"/tmp/test.pof"}, -1, PUT)); + } +} + +TEST_CASE("resetfpga", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::JUNGFRAU || det_type == defs::CHIPTESTBOARD || + det_type == defs::MOENCH) { + std::ostringstream oss; + proxy.Call("resetfpga", {}, -1, PUT, oss); + REQUIRE(oss.str() == "resetfpga successful\n"); + REQUIRE_THROWS(proxy.Call("resetfpga", {}, -1, GET)); + } else { + REQUIRE_THROWS(proxy.Call("resetfpga", {}, -1, GET)); + REQUIRE_THROWS(proxy.Call("resetfpga", {}, -1, PUT)); + } +} + +TEST_CASE("copydetectorserver", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::JUNGFRAU || det_type == defs::CHIPTESTBOARD || + det_type == defs::MOENCH || det_type == defs::MYTHEN3 || + det_type == defs::GOTTHARD2) { + // TODO: send real server? + // std::ostringstream oss; + // proxy.Call("copydetectorserver",{"jungfrauDetectorServerv4.0.1.0", + // "pc13784"}, -1, PUT, oss); + // REQUIRE(oss.str() == "copydetectorserver successful\n"); + REQUIRE_THROWS(proxy.Call("copydetectorserver", {}, -1, GET)); + } else { + REQUIRE_THROWS(proxy.Call("copydetectorserver", {}, -1, GET)); + REQUIRE_THROWS(proxy.Call("copydetectorserver", {}, -1, PUT)); + } +} + +TEST_CASE("rebootcontroller", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::JUNGFRAU || det_type == defs::CHIPTESTBOARD || + det_type == defs::MOENCH || det_type == defs::MYTHEN3 || + det_type == defs::GOTTHARD2) { + // TODO: reboot real server? + // REQUIRE_NOTHROW(proxy.Call("rebootcontroller", {}, -1, PUT)); + REQUIRE_THROWS(proxy.Call("rebootcontroller", {}, -1, GET)); + } else { + REQUIRE_THROWS(proxy.Call("rebootcontroller", {}, -1, GET)); + REQUIRE_THROWS(proxy.Call("rebootcontroller", {}, -1, PUT)); + } +} + +TEST_CASE("update", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::JUNGFRAU || det_type == defs::CHIPTESTBOARD || + det_type == defs::MOENCH) { + // TODO: update real server and firmware? + // REQUIRE_NOTHROW(proxy.Call("update", + // {"jungfrauDetectorServerv4.0.1.0", "pc13784", + // "/afs/psi.ch/project/sls_det_firmware/jungfrau_firmware/cyclone_V/v0_8/Jungfrau_MCB.pof"}, + // -1, PUT)); + REQUIRE_THROWS(proxy.Call("update", {}, -1, GET)); + } else { + REQUIRE_THROWS(proxy.Call("update", {}, -1, GET)); + REQUIRE_THROWS(proxy.Call("update", {}, -1, PUT)); + } +} + +TEST_CASE("reg", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type != defs::EIGER) { + uint32_t addr = 0x64; + std::string saddr = sls::ToStringHex(addr); + auto prev_val = det.readRegister(addr); + { + std::ostringstream oss1, oss2; + proxy.Call("reg", {saddr, "0x5"}, -1, PUT, oss1); + REQUIRE(oss1.str() == "reg [" + saddr + ", 0x5]\n"); + proxy.Call("reg", {saddr}, -1, GET, oss2); + REQUIRE(oss2.str() == "reg 0x5\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.writeRegister(addr, prev_val[i], {i}); + } + } + // cannot check for eiger virtual server + else { + REQUIRE_NOTHROW(proxy.Call("reg", {"0x64"}, -1, GET)); + } +} + +TEST_CASE("adcreg", "[.cmd]") { + // TODO! what is a safe value to use? + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::JUNGFRAU || det_type == defs::CHIPTESTBOARD || + det_type == defs::MOENCH || det_type == defs::GOTTHARD) { + std::ostringstream oss; + proxy.Call("adcreg", {"0x08", "0x3"}, -1, PUT, oss); + REQUIRE(oss.str() == "adcreg [0x8, 0x3]\n"); + // This is a put only command + REQUIRE_THROWS(proxy.Call("adcreg", {}, -1, GET)); + } else { + REQUIRE_THROWS(proxy.Call("adcreg", {"0x0", "0"}, -1, PUT)); + REQUIRE_THROWS(proxy.Call("adcreg", {}, -1, GET)); + } +} + +TEST_CASE("setbit", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type != defs::EIGER) { + uint32_t addr = 0x64; + std::string saddr = sls::ToStringHex(addr); + auto prev_val = det.readRegister(addr); + { + std::ostringstream oss1, oss2; + proxy.Call("reg", {saddr, "0x0"}, -1, PUT); + proxy.Call("setbit", {saddr, "1"}, -1, PUT, oss1); + REQUIRE(oss1.str() == "setbit [" + saddr + ", 1]\n"); + proxy.Call("reg", {saddr}, -1, GET, oss2); + REQUIRE(oss2.str() == "reg 0x2\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.writeRegister(addr, prev_val[i], {i}); + } + } +} + +TEST_CASE("clearbit", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type != defs::EIGER) { + uint32_t addr = 0x64; + std::string saddr = sls::ToStringHex(addr); + auto prev_val = det.readRegister(addr); + { + std::ostringstream oss1, oss2; + proxy.Call("reg", {saddr, "0x3"}, -1, PUT); + proxy.Call("clearbit", {saddr, "1"}, -1, PUT, oss1); + REQUIRE(oss1.str() == "clearbit [" + saddr + ", 1]\n"); + proxy.Call("reg", {saddr}, -1, GET, oss2); + REQUIRE(oss2.str() == "reg 0x1\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.writeRegister(addr, prev_val[i], {i}); + } + } +} + +TEST_CASE("getbit", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type != defs::EIGER) { + uint32_t addr = 0x64; + std::string saddr = sls::ToStringHex(addr); + auto prev_val = det.readRegister(addr); + { + std::ostringstream oss1, oss2; + proxy.Call("reg", {saddr, "0x3"}, -1, PUT); + proxy.Call("getbit", {saddr, "1"}, -1, GET, oss1); + REQUIRE(oss1.str() == "getbit 1\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.writeRegister(addr, prev_val[i], {i}); + } + } + // cannot check for eiger virtual server + else { + REQUIRE_NOTHROW(proxy.Call("getbit", {"0x64", "1"}, -1, GET)); + } +} + +TEST_CASE("firmwaretest", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::JUNGFRAU || det_type == defs::CHIPTESTBOARD || + det_type == defs::GOTTHARD || det_type == defs::MYTHEN3 || + det_type == defs::GOTTHARD2) { + std::ostringstream oss; + proxy.Call("firmwaretest", {}, -1, PUT, oss); + REQUIRE(oss.str() == "firmwaretest successful\n"); + REQUIRE_THROWS(proxy.Call("firmwaretest", {}, -1, GET)); + } else { + REQUIRE_THROWS(proxy.Call("firmwaretest", {}, -1, GET)); + REQUIRE_THROWS(proxy.Call("firmwaretest", {}, -1, PUT)); + } +} + +TEST_CASE("bustest", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + if (det_type == defs::JUNGFRAU || det_type == defs::CHIPTESTBOARD || + det_type == defs::GOTTHARD || det_type == defs::MYTHEN3 || + det_type == defs::GOTTHARD2) { + std::ostringstream oss; + proxy.Call("bustest", {}, -1, PUT, oss); + REQUIRE(oss.str() == "bustest successful\n"); + REQUIRE_THROWS(proxy.Call("bustest", {}, -1, GET)); + } else { + REQUIRE_THROWS(proxy.Call("bustest", {}, -1, GET)); + REQUIRE_THROWS(proxy.Call("bustest", {}, -1, PUT)); + } +} + +TEST_CASE("initialchecks", "[.cmd][.new]") { Detector det; CmdProxy proxy(&det); auto check = det.getInitialChecks(); - auto dtstr = sls::ToString(check); - auto hostname = det.getHostname(); - std::string hostnamestr; - for (auto &it : hostname) { - hostnamestr += (it + "+"); - } { std::ostringstream oss; proxy.Call("initialchecks", {"0"}, -1, PUT, oss); @@ -1529,7 +1754,6 @@ TEST_CASE("initialchecks", "[.cmd]") { REQUIRE(oss.str() == "initialchecks 0\n"); } { - det.setHostname(hostname); std::ostringstream oss; proxy.Call("initialchecks", {}, -1, GET, oss); REQUIRE(oss.str() == "initialchecks 0\n"); @@ -1537,58 +1761,72 @@ TEST_CASE("initialchecks", "[.cmd]") { det.setInitialChecks(check); } +TEST_CASE("adcinvert", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + auto det_type = det.getDetectorType().squash(); + + if (det_type == defs::CHIPTESTBOARD || det_type == defs::MOENCH || + det_type == defs::JUNGFRAU) { + auto prev_val = det.getADCInvert(); + { + std::ostringstream oss; + proxy.Call("adcinvert", {"0x8d0a21d4"}, -1, PUT, oss); + REQUIRE(oss.str() == "adcinvert 0x8d0a21d4\n"); + } + { + std::ostringstream oss; + proxy.Call("adcinvert", {}, -1, GET, oss); + REQUIRE(oss.str() == "adcinvert 0x8d0a21d4\n"); + } + for (int i = 0; i != det.size(); ++i) { + det.setADCInvert(prev_val[i], {i}); + } + } else { + REQUIRE_THROWS(proxy.Call("adcinvert", {}, -1, GET)); + } +} + /* Insignificant */ -TEST_CASE("port", "[.cmd]") { +TEST_CASE("port", "[.cmd][.new]") { Detector det; CmdProxy proxy(&det); + auto prev_val = det.getControlPort({0}).squash(); { std::ostringstream oss; - proxy.Call("port", {"1942"}, -1, PUT, oss); + proxy.Call("port", {"1942"}, 0, PUT, oss); REQUIRE(oss.str() == "port 1942\n"); } { std::ostringstream oss; - proxy.Call("port", {}, -1, GET, oss); + proxy.Call("port", {}, 0, GET, oss); REQUIRE(oss.str() == "port 1942\n"); } - proxy.Call("port", {"1952"}, -1, PUT); + det.setControlPort(prev_val, {0}); } -TEST_CASE("stopport", "[.cmd]") { +TEST_CASE("stopport", "[.cmd][.new]") { Detector det; CmdProxy proxy(&det); + auto prev_val = det.getStopPort({0}).squash(); { std::ostringstream oss; - proxy.Call("stopport", {"1942"}, -1, PUT, oss); + proxy.Call("stopport", {"1942"}, 0, PUT, oss); REQUIRE(oss.str() == "stopport 1942\n"); } { std::ostringstream oss; - proxy.Call("stopport", {}, -1, GET, oss); + proxy.Call("stopport", {}, 0, GET, oss); REQUIRE(oss.str() == "stopport 1942\n"); } - proxy.Call("stopport", {"1953"}, -1, PUT); - auto port = det.getStopPort().squash(); - REQUIRE(port == 1953); + det.setStopPort(prev_val, {0}); } -// TEST_CASE("execcommand", "[.cmd]") { -// REQUIRE_NOTHROW(multiSlsDetectorClient("execcommand ls", PUT)); -// } - -TEST_CASE("user", "[.cmd]") { - Detector det; - CmdProxy proxy(&det); - proxy.Call("user", {}, -1, GET); - - // This is a get only command - REQUIRE_THROWS(proxy.Call("user", {}, -1, PUT)); -} - -TEST_CASE("lock", "[.cmd]") { +TEST_CASE("lock", "[.cmd][.new]") { Detector det; CmdProxy proxy(&det); + auto prev_val = det.getDetectorLock(); { std::ostringstream oss; proxy.Call("lock", {"1"}, -1, PUT, oss); @@ -1604,424 +1842,76 @@ TEST_CASE("lock", "[.cmd]") { proxy.Call("lock", {"0"}, -1, PUT, oss); REQUIRE(oss.str() == "lock 0\n"); } + for (int i = 0; i != det.size(); ++i) { + det.setDetectorLock(prev_val[i], {i}); + } } -TEST_CASE("nframes", "[.cmd]") { +TEST_CASE("execcommand", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + REQUIRE_NOTHROW(proxy.Call("execcommand", {"ls"}, -1, PUT)); +} + +TEST_CASE("nframes", "[.cmd][.new]") { Detector det; CmdProxy proxy(&det); auto det_type = det.getDetectorType().squash(); - if (det_type == defs::JUNGFRAU || det_type == defs::CHIPTESTBOARD) { + if (det_type == defs::JUNGFRAU || det_type == defs::CHIPTESTBOARD || + det_type == defs::MOENCH || det_type == defs::MYTHEN3 || + det_type == defs::GOTTHARD2) { auto nframes = det.getNumberOfFramesFromStart().squash(); std::ostringstream oss; proxy.Call("nframes", {}, -1, GET, oss); REQUIRE(oss.str() == "nframes " + std::to_string(nframes) + "\n"); - + REQUIRE_NOTHROW(proxy.Call("nframes", {}, -1, GET)); } else { REQUIRE_THROWS(proxy.Call("nframes", {}, -1, GET)); } } -TEST_CASE("now", "[.cmd]") { +TEST_CASE("now", "[.cmd][.new]") { // TODO! can we test this? Detector det; CmdProxy proxy(&det); auto det_type = det.getDetectorType().squash(); - if (det_type == defs::JUNGFRAU || det_type == defs::CHIPTESTBOARD) { + if (det_type == defs::JUNGFRAU || det_type == defs::CHIPTESTBOARD || + det_type == defs::MOENCH || det_type == defs::MYTHEN3 || + det_type == defs::GOTTHARD2) { std::ostringstream oss; proxy.Call("now", {}, -1, GET, oss); - // Get only REQUIRE_THROWS(proxy.Call("now", {"2019"}, -1, PUT)); + REQUIRE_NOTHROW(proxy.Call("now", {}, -1, GET)); } else { REQUIRE_THROWS(proxy.Call("now", {}, -1, GET)); } } -TEST_CASE("timestamp", "[.cmd]") { +TEST_CASE("timestamp", "[.cmd][.new]") { // TODO! can we test this? Detector det; CmdProxy proxy(&det); auto det_type = det.getDetectorType().squash(); - if (det_type == defs::JUNGFRAU || det_type == defs::CHIPTESTBOARD) { + if (det_type == defs::JUNGFRAU || det_type == defs::CHIPTESTBOARD || + det_type == defs::MOENCH || det_type == defs::MYTHEN3 || + det_type == defs::GOTTHARD2) { std::ostringstream oss; proxy.Call("timestamp", {}, -1, GET, oss); - // Get only REQUIRE_THROWS(proxy.Call("timestamp", {"2019"}, -1, PUT)); + REQUIRE_NOTHROW(proxy.Call("timestamp", {}, -1, GET)); } else { REQUIRE_THROWS(proxy.Call("timestamp", {}, -1, GET)); } } -TEST_CASE("adcreg", "[.cmd]") { - // TODO! what is a safe value to use? +TEST_CASE("user", "[.cmd][.new]") { Detector det; CmdProxy proxy(&det); - auto det_type = det.getDetectorType().squash(); - if (det_type == defs::JUNGFRAU || det_type == defs::CHIPTESTBOARD || - det_type == defs::GOTTHARD) { - std::ostringstream oss; - proxy.Call("adcreg", {"0x0", "0"}, -1, PUT, oss); - REQUIRE(oss.str() == "adcreg [0x0, 0]\n"); - // This is a put only command - REQUIRE_THROWS(proxy.Call("adcreg", {}, -1, GET)); - } else { - REQUIRE_THROWS(proxy.Call("adcreg", {"0x0", "0"}, -1, PUT)); - REQUIRE_THROWS(proxy.Call("adcreg", {}, -1, GET)); - } + proxy.Call("user", {}, -1, GET); + + // This is a get only command + REQUIRE_THROWS(proxy.Call("user", {}, -1, PUT)); + REQUIRE_NOTHROW(proxy.Call("user", {}, -1, GET)); } - -TEST_CASE("bustest", "[.cmd]") { - Detector det; - CmdProxy proxy(&det); - auto det_type = det.getDetectorType().squash(); - if (det_type == defs::JUNGFRAU || det_type == defs::CHIPTESTBOARD || - det_type == defs::GOTTHARD) { - std::ostringstream oss; - proxy.Call("bustest", {}, -1, PUT, oss); - REQUIRE(oss.str() == "bustest successful\n"); - REQUIRE_THROWS(proxy.Call("bustest", {}, -1, GET)); - } else { - REQUIRE_THROWS(proxy.Call("bustest", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("bustest", {}, -1, PUT)); - } -} - -TEST_CASE("firmwaretest", "[.cmd]") { - Detector det; - CmdProxy proxy(&det); - auto det_type = det.getDetectorType().squash(); - if (det_type == defs::JUNGFRAU || det_type == defs::CHIPTESTBOARD || - det_type == defs::GOTTHARD) { - std::ostringstream oss; - proxy.Call("firmwaretest", {}, -1, PUT, oss); - REQUIRE(oss.str() == "firmwaretest successful\n"); - REQUIRE_THROWS(proxy.Call("firmwaretest", {}, -1, GET)); - } else { - REQUIRE_THROWS(proxy.Call("firmwaretest", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("firmwaretest", {}, -1, PUT)); - } -} - -TEST_CASE("resetfpga", "[.cmd]") { - Detector det; - CmdProxy proxy(&det); - auto det_type = det.getDetectorType().squash(); - if (det_type == defs::JUNGFRAU || det_type == defs::CHIPTESTBOARD) { - std::ostringstream oss; - proxy.Call("resetfpga", {}, -1, PUT, oss); - REQUIRE(oss.str() == "resetfpga successful\n"); - REQUIRE_THROWS(proxy.Call("resetfpga", {}, -1, GET)); - } else { - REQUIRE_THROWS(proxy.Call("resetfpga", {}, -1, GET)); - REQUIRE_THROWS(proxy.Call("resetfpga", {}, -1, PUT)); - } -} - -// TEST_CASE("reg", "[.cmd]") { -// if (test::type == defs::JUNGFRAU) { -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("reg 0x01", GET, nullptr, -// oss)); REQUIRE(oss.str() == "reg 0xacdc2014\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("reg 0x64 5", PUT, -// nullptr, oss)); REQUIRE(oss.str() == "reg [0x64, 5]\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("frames", GET, nullptr, -// oss)); REQUIRE(oss.str() == "frames 5\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("getbit 0x64 0", GET, -// nullptr, oss)); REQUIRE(oss.str() == "getbit 1\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("setbit 0x64 1", PUT, -// nullptr, oss)); REQUIRE(oss.str() == "setbit [0x64, 1]\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("clearbit 0x64 0", PUT, -// nullptr, oss)); REQUIRE(oss.str() == "clearbit [0x64, 0]\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("frames", GET, nullptr, -// oss)); REQUIRE(oss.str() == "frames 6\n"); -// } -// REQUIRE_NOTHROW(multiSlsDetectorClient("frames 1", PUT)); -// } else if (test::type == defs::GOTTHARD) { -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("reg 0x023", GET, nullptr, -// oss)); REQUIRE(oss.str() == "reg 0xacdc1980\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("reg 0x70 5", PUT, -// nullptr, oss)); REQUIRE(oss.str() == "reg [0x70, 5]\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("frames", GET, nullptr, -// oss)); REQUIRE(oss.str() == "frames 5\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("getbit 0x70 0", GET, -// nullptr, oss)); REQUIRE(oss.str() == "getbit 1\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("setbit 0x70 1", PUT, -// nullptr, oss)); REQUIRE(oss.str() == "setbit [0x70, 1]\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("clearbit 0x70 0", PUT, -// nullptr, oss)); REQUIRE(oss.str() == "clearbit [0x70, 0]\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("frames", GET, nullptr, -// oss)); REQUIRE(oss.str() == "frames 6\n"); -// } -// REQUIRE_NOTHROW(multiSlsDetectorClient("frames 1", PUT)); -// } else if (test::type == defs::CHIPTESTBOARD) { -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("reg 0x01", GET, nullptr, -// oss)); REQUIRE(oss.str() == "reg 0xacdc2016\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("reg 0x64 5", PUT, -// nullptr, oss)); REQUIRE(oss.str() == "reg [0x64, 5]\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("frames", GET, nullptr, -// oss)); REQUIRE(oss.str() == "frames 5\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("getbit 0x64 0", GET, -// nullptr, oss)); REQUIRE(oss.str() == "getbit 1\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("setbit 0x64 1", PUT, -// nullptr, oss)); REQUIRE(oss.str() == "setbit [0x64, 1]\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("clearbit 0x64 0", PUT, -// nullptr, oss)); REQUIRE(oss.str() == "clearbit [0x64, 0]\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("frames", GET, nullptr, -// oss)); REQUIRE(oss.str() == "frames 6\n"); -// } -// REQUIRE_NOTHROW(multiSlsDetectorClient("frames 1", PUT)); -// } -// } - -// TEST_CASE("update", "[.cmd][.ctb][.jungfrau]") { -// if (test::type == defs::JUNGFRAU || test::type == -// defs::CHIPTESTBOARD) { -// REQUIRE_THROWS(multiSlsDetectorClient("update", PUT)); -// REQUIRE_THROWS(multiSlsDetectorClient("update -// jungfrauDetectorServer_developer", PUT)); -// REQUIRE_THROWS(multiSlsDetectorClient("update -// jungfrauDetectorServer_developer pc13784", PUT)); -// REQUIRE_THROWS(multiSlsDetectorClient("update -// jungfrauDetectorServer_developer pc13784 dfd.pff", PUT)); -// //REQUIRE_NOTHROW(multiSlsDetectorClient("update -// jungfrauDetectorServer_developer pc13784 -// /afs/psi.ch/project/sls_det_firmware/jungfrau_firmware/cyclone_V/v0_8/Jungfrau_MCB.pof", -// PUT)); -// } else { -// REQUIRE_THROWS(multiSlsDetectorClient("update", GET)); -// } -// } - -// TEST_CASE("copydetectorserver", "[.cmd][.ctb][.jungfrau]") { -// if (test::type == defs::JUNGFRAU || test::type == -// defs::CHIPTESTBOARD) { -// REQUIRE_THROWS(multiSlsDetectorClient("copydetectorserver", PUT)); -// REQUIRE_THROWS(multiSlsDetectorClient("copydetectorserver -// jungfrauDetectorServer_developer", PUT)); -// //REQUIRE_NOTHROW(multiSlsDetectorClient("copydetectorserver -// jungfrauDetectorServer_developer pc13784", PUT)); -// } else { -// REQUIRE_THROWS(multiSlsDetectorClient("copydetectorserver", GET)); -// } -// } - -// TEST_CASE("rebootcontroller", "[.cmd][.ctb][.jungfrau]") { -// if (test::type == defs::JUNGFRAU || test::type == -// defs::CHIPTESTBOARD) { -// ;//REQUIRE_NOTHROW(multiSlsDetectorClient("rebootcontroller", PUT)); -// } else { -// REQUIRE_THROWS(multiSlsDetectorClient("rebootcontroller", GET)); -// } -// } - -// TEST_CASE("programfpga", "[.cmd][.ctb][.jungfrau]") { -// if (test::type == defs::JUNGFRAU || test::type == -// defs::CHIPTESTBOARD) { -// REQUIRE_THROWS(multiSlsDetectorClient("programfpga fdgd.oki", PUT)); -// //REQUIRE_NOTHROW(multiSlsDetectorClient("programfpga -// /afs/psi.ch/project/sls_det_firmware/jungfrau_firmware/cyclone_V/v0_8/Jungfrau_MCB.pof", -// PUT)); -// } else { -// REQUIRE_THROWS(multiSlsDetectorClient("programfpga", GET)); -// } -// } - -// TEST_CASE("detectormode", "[.cmd][.moench]") { -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("detectormode counting", PUT, -// nullptr, oss)); REQUIRE(oss.str() == "detectormode counting\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("detectormode interpolating", -// PUT, nullptr, oss)); REQUIRE(oss.str() == "detectormode -// interpolating\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("detectormode analog", PUT, -// nullptr, oss)); REQUIRE(oss.str() == "detectormode analog\n"); -// } -// REQUIRE_NOTHROW(multiSlsDetectorClient("detectormode counting", PUT)); -// REQUIRE_THROWS(multiSlsDetectorClient("detectormode pedestal", PUT)); -// } - -// TEST_CASE("framemode", "[.cmd][.moench]") { -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("framemode pedestal", PUT, -// nullptr, oss)); REQUIRE(oss.str() == "framemode pedestal\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("framemode newpedestal", PUT, -// nullptr, oss)); REQUIRE(oss.str() == "framemode newpedestal\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("framemode flatfield", PUT, -// nullptr, oss)); REQUIRE(oss.str() == "framemode flatfield\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("framemode newflatfield", PUT, -// nullptr, oss)); REQUIRE(oss.str() == "framemode newflatfield\n"); -// } -// REQUIRE_NOTHROW(multiSlsDetectorClient("framemode pedestal", PUT)); -// REQUIRE_THROWS(multiSlsDetectorClient("framemode counting", PUT)); -// } - -// TEST_CASE("emin", "[.cmd][.moench]") { -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("emin 100", PUT, nullptr, -// oss)); REQUIRE(oss.str() == "emin 100\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("emax 200", PUT, nullptr, -// oss)); REQUIRE(oss.str() == "emax 200\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("rx_jsonpara emax", GET, -// nullptr, oss)); REQUIRE(oss.str() == "rx_jsonpara 200\n"); -// } -// REQUIRE_NOTHROW(multiSlsDetectorClient("rx_jsonaddheader \"\"", PUT)); -// } - -// TEST_CASE("adcinvert", "[.cmd][.ctb]") { -// if (test::type == defs::CHIPTESTBOARD || test::type == -// defs::JUNGFRAU) { -// std::string s; -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("adcinvert", GET, nullptr, -// oss)); s = oss.str(); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("adcinvert 0x8d0a21d4", -// PUT, nullptr, oss)); REQUIRE(oss.str() == "adcinvert -// 0x8d0a21d4\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient(s, PUT, nullptr, oss)); -// REQUIRE(oss.str() == s); -// } -// } else { -// REQUIRE_THROWS(multiSlsDetectorClient("adcinvert", GET)); -// } -// } - -// TEST_CASE("adcvpp", "[.cmd][.ctb]") { -// if (test::type == defs::CHIPTESTBOARD) { -// int prev_val = 0; -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("adcvpp", GET, nullptr, -// oss)); std::string s = (oss.str()).erase (0, strlen("adcvpp ")); -// prev_val = std::stoi(s); -// } -// { -// REQUIRE_NOTHROW(multiSlsDetectorClient("adcvpp 1", PUT)); -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("adcvpp", GET, nullptr, -// oss)); REQUIRE(oss.str() == "adcvpp 1\n"); -// } -// { -// REQUIRE_NOTHROW(multiSlsDetectorClient("adcvpp 1140 mv", PUT)); -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("adcvpp mv", GET, nullptr, -// oss)); REQUIRE(oss.str() == "adcvpp 1140 mv\n"); -// } -// REQUIRE_NOTHROW(multiSlsDetectorClient("adcvpp " + -// std::to_string(prev_val), PUT)); -// } else { -// REQUIRE_THROWS(multiSlsDetectorClient("adcvpp", GET)); -// } -// } - -// TEST_CASE("imagetest", "[.cmd][.gotthard]") { -// if (test::type == defs::GOTTHARD) { -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("imagetest 1", PUT, -// nullptr, oss)); REQUIRE(oss.str() == "imagetest 1\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("imagetest 0", PUT, -// nullptr, oss)); REQUIRE(oss.str() == "imagetest 0\n"); -// } -// { -// std::ostringstream oss; -// REQUIRE_NOTHROW(multiSlsDetectorClient("imagetest", GET, nullptr, -// oss)); REQUIRE(oss.str() == "imagetest 0\n"); -// } -// } else { -// REQUIRE_THROWS(multiSlsDetectorClient("imagetest", GET)); -// } -// } From 7f6d57d6baa68d80f022755d015d68f04a4ed7f8 Mon Sep 17 00:00:00 2001 From: Dhanya Thattil Date: Thu, 4 Jun 2020 17:42:24 +0200 Subject: [PATCH 11/13] WIP --- .../slsDetectorServer/src/slsDetectorServer.c | 2 ++ slsDetectorSoftware/src/Detector.cpp | 6 +++++- .../tests/test-CmdProxy-chiptestboard.cpp | 12 ++++++++---- .../tests/test-CmdProxy-moench.cpp | 16 ---------------- .../tests/test-CmdProxy-pattern.cpp | 3 ++- slsDetectorSoftware/tests/test-CmdProxy.cpp | 10 +++++----- 6 files changed, 22 insertions(+), 27 deletions(-) diff --git a/slsDetectorServers/slsDetectorServer/src/slsDetectorServer.c b/slsDetectorServers/slsDetectorServer/src/slsDetectorServer.c index eb3a5d154..920bc4766 100644 --- a/slsDetectorServers/slsDetectorServer/src/slsDetectorServer.c +++ b/slsDetectorServers/slsDetectorServer/src/slsDetectorServer.c @@ -177,7 +177,9 @@ int main(int argc, char *argv[]) { #if defined(MYTHEN3D) || defined(GOTTHARD2D) rebootNiosControllerAndFPGA(); #else +#ifndef VIRTUAL system("reboot"); +#endif #endif } LOG(logINFO, ("Goodbye!\n")); diff --git a/slsDetectorSoftware/src/Detector.cpp b/slsDetectorSoftware/src/Detector.cpp index b0d8a5154..5ef42bd2c 100644 --- a/slsDetectorSoftware/src/Detector.cpp +++ b/slsDetectorSoftware/src/Detector.cpp @@ -1525,13 +1525,17 @@ void Detector::savePattern(const std::string &fname) { proxy.Call("patword", {addr}, -1, defs::GET_ACTION, outfile); } // rest of pattern file - const std::vector commands{ + std::vector commands{ "patioctrl", "patclkctrl", "patlimits", "patloop0", "patnloop0", "patloop1", "patnloop1", "patloop2", "patnloop2", "patwait0", "patwaittime0", "patwait1", "patwaittime1", "patwait2", "patwaittime2", "patmask", "patsetbit", }; + auto det_type = getDetectorType().squash(); + if (det_type == defs::MYTHEN3) { + commands.erase(commands.begin(), commands.begin() + 2); + } for (const auto &cmd : commands) proxy.Call(cmd, {}, -1, defs::GET_ACTION, outfile); } diff --git a/slsDetectorSoftware/tests/test-CmdProxy-chiptestboard.cpp b/slsDetectorSoftware/tests/test-CmdProxy-chiptestboard.cpp index 18c0d8fa3..382fe5ddc 100644 --- a/slsDetectorSoftware/tests/test-CmdProxy-chiptestboard.cpp +++ b/slsDetectorSoftware/tests/test-CmdProxy-chiptestboard.cpp @@ -236,7 +236,8 @@ TEST_CASE("adcclk", "[.cmd][.new]") { det.setADCClock(prev_val[i], {i}); } } else { - REQUIRE_THROWS(proxy.Call("adcclk", {}, -1, GET)); + // clock index might work + // REQUIRE_THROWS(proxy.Call("adcclk", {}, -1, GET)); } } @@ -266,7 +267,8 @@ TEST_CASE("runclk", "[.cmd][.new]") { det.setRUNClock(prev_val[i], {i}); } } else { - REQUIRE_THROWS(proxy.Call("runclk", {}, -1, GET)); + // clock index might work + // REQUIRE_THROWS(proxy.Call("runclk", {}, -1, GET)); } } @@ -277,7 +279,8 @@ TEST_CASE("syncclk", "[.cmd][.new]") { if (det_type == defs::CHIPTESTBOARD || det_type == defs::MOENCH) { REQUIRE_NOTHROW(proxy.Call("syncclk", {}, -1, GET)); } else { - REQUIRE_THROWS(proxy.Call("syncclk", {}, -1, GET)); + // clock index might work + // REQUIRE_THROWS(proxy.Call("syncclk", {}, -1, GET)); } } @@ -512,7 +515,8 @@ TEST_CASE("dbitclk", "[.cmd][.new]") { det.setRUNClock(prev_val[i], {i}); } } else { - REQUIRE_THROWS(proxy.Call("dbitclk", {}, -1, GET)); + // clock index might work + // REQUIRE_THROWS(proxy.Call("dbitclk", {}, -1, GET)); } } diff --git a/slsDetectorSoftware/tests/test-CmdProxy-moench.cpp b/slsDetectorSoftware/tests/test-CmdProxy-moench.cpp index 3f3624856..730e3b6b9 100644 --- a/slsDetectorSoftware/tests/test-CmdProxy-moench.cpp +++ b/slsDetectorSoftware/tests/test-CmdProxy-moench.cpp @@ -114,7 +114,6 @@ TEST_CASE("emin", "[.cmd][.new]") { CmdProxy proxy(&det); auto det_type = det.getDetectorType().squash(); if (det_type == defs::MOENCH) { - auto prev_val = det.getDetectorMinMaxEnergyThreshold(false); { std::ostringstream oss; proxy.Call("emin", {"100"}, -1, PUT, oss); @@ -130,9 +129,6 @@ TEST_CASE("emin", "[.cmd][.new]") { proxy.Call("emin", {}, -1, GET, oss); REQUIRE(oss.str() == "emin 200\n"); } - for (int i = 0; i != det.size(); ++i) { - det.setDetectorMinMaxEnergyThreshold(false, prev_val[i], {i}); - } } else { REQUIRE_THROWS(proxy.Call("emin", {}, -1, GET)); } @@ -143,7 +139,6 @@ TEST_CASE("emax", "[.cmd][.new]") { CmdProxy proxy(&det); auto det_type = det.getDetectorType().squash(); if (det_type == defs::MOENCH) { - auto prev_val = det.getDetectorMinMaxEnergyThreshold(true); { std::ostringstream oss; proxy.Call("emax", {"100"}, -1, PUT, oss); @@ -159,9 +154,6 @@ TEST_CASE("emax", "[.cmd][.new]") { proxy.Call("emax", {}, -1, GET, oss); REQUIRE(oss.str() == "emax 200\n"); } - for (int i = 0; i != det.size(); ++i) { - det.setDetectorMinMaxEnergyThreshold(true, prev_val[i], {i}); - } } else { REQUIRE_THROWS(proxy.Call("emax", {}, -1, GET)); } @@ -172,7 +164,6 @@ TEST_CASE("framemode", "[.cmd][.new]") { CmdProxy proxy(&det); auto det_type = det.getDetectorType().squash(); if (det_type == defs::MOENCH) { - auto prev_val = det.getFrameMode(); { std::ostringstream oss; proxy.Call("framemode", {"pedestal"}, -1, PUT, oss); @@ -199,9 +190,6 @@ TEST_CASE("framemode", "[.cmd][.new]") { REQUIRE(oss.str() == "framemode newflatfield\n"); } REQUIRE_THROWS(proxy.Call("framemode", {"counting"}, -1, PUT)); - for (int i = 0; i != det.size(); ++i) { - det.setFrameMode(prev_val[i], {i}); - } } else { REQUIRE_THROWS(proxy.Call("framemode", {}, -1, GET)); } @@ -212,7 +200,6 @@ TEST_CASE("detectormode", "[.cmd][.new]") { CmdProxy proxy(&det); auto det_type = det.getDetectorType().squash(); if (det_type == defs::MOENCH) { - auto prev_val = det.getDetectorMode(); { std::ostringstream oss; proxy.Call("detectormode", {"counting"}, -1, PUT, oss); @@ -233,9 +220,6 @@ TEST_CASE("detectormode", "[.cmd][.new]") { REQUIRE(oss.str() == "detectormode analog\n"); REQUIRE_THROWS(proxy.Call("detectormode", {"pedestal"}, -1, PUT)); - for (int i = 0; i != det.size(); ++i) { - det.setDetectorMode(prev_val[i], {i}); - } } else { REQUIRE_THROWS(proxy.Call("detectormode", {}, -1, GET)); } diff --git a/slsDetectorSoftware/tests/test-CmdProxy-pattern.cpp b/slsDetectorSoftware/tests/test-CmdProxy-pattern.cpp index 09b36960a..1fdeef125 100644 --- a/slsDetectorSoftware/tests/test-CmdProxy-pattern.cpp +++ b/slsDetectorSoftware/tests/test-CmdProxy-pattern.cpp @@ -534,9 +534,10 @@ TEST_CASE("patsetbit", "[.cmd][.new]") { TEST_CASE("patternstart", "[.cmd][.new]") { Detector det; CmdProxy proxy(&det); + REQUIRE_THROWS(proxy.Call("patternstart", {}, -1, GET)); auto det_type = det.getDetectorType().squash(); if (det_type == defs::MYTHEN3) { - REQUIRE_THROWS(proxy.Call("patternstart", {}, -1, PUT)); + REQUIRE_NOTHROW(proxy.Call("patternstart", {}, -1, PUT)); } else { REQUIRE_THROWS(proxy.Call("patternstart", {}, -1, PUT)); } diff --git a/slsDetectorSoftware/tests/test-CmdProxy.cpp b/slsDetectorSoftware/tests/test-CmdProxy.cpp index aca1eb7fd..d68e06c01 100644 --- a/slsDetectorSoftware/tests/test-CmdProxy.cpp +++ b/slsDetectorSoftware/tests/test-CmdProxy.cpp @@ -1566,7 +1566,7 @@ TEST_CASE("rebootcontroller", "[.cmd][.new]") { auto det_type = det.getDetectorType().squash(); if (det_type == defs::JUNGFRAU || det_type == defs::CHIPTESTBOARD || det_type == defs::MOENCH || det_type == defs::MYTHEN3 || - det_type == defs::GOTTHARD2) { + det_type == defs::GOTTHARD2 || det_type == defs::GOTTHARD) { // TODO: reboot real server? // REQUIRE_NOTHROW(proxy.Call("rebootcontroller", {}, -1, PUT)); REQUIRE_THROWS(proxy.Call("rebootcontroller", {}, -1, GET)); @@ -1710,8 +1710,8 @@ TEST_CASE("firmwaretest", "[.cmd][.new]") { CmdProxy proxy(&det); auto det_type = det.getDetectorType().squash(); if (det_type == defs::JUNGFRAU || det_type == defs::CHIPTESTBOARD || - det_type == defs::GOTTHARD || det_type == defs::MYTHEN3 || - det_type == defs::GOTTHARD2) { + det_type == defs::MOENCH || det_type == defs::GOTTHARD || + det_type == defs::MYTHEN3 || det_type == defs::GOTTHARD2) { std::ostringstream oss; proxy.Call("firmwaretest", {}, -1, PUT, oss); REQUIRE(oss.str() == "firmwaretest successful\n"); @@ -1727,8 +1727,8 @@ TEST_CASE("bustest", "[.cmd][.new]") { CmdProxy proxy(&det); auto det_type = det.getDetectorType().squash(); if (det_type == defs::JUNGFRAU || det_type == defs::CHIPTESTBOARD || - det_type == defs::GOTTHARD || det_type == defs::MYTHEN3 || - det_type == defs::GOTTHARD2) { + det_type == defs::MOENCH || det_type == defs::GOTTHARD || + det_type == defs::MYTHEN3 || det_type == defs::GOTTHARD2) { std::ostringstream oss; proxy.Call("bustest", {}, -1, PUT, oss); REQUIRE(oss.str() == "bustest successful\n"); From ff9811895f4726e648f73a7135dbf51d1b3d5c37 Mon Sep 17 00:00:00 2001 From: Dhanya Thattil Date: Fri, 5 Jun 2020 09:04:32 +0200 Subject: [PATCH 12/13] WIP --- .../tests/test-CmdProxy-chiptestboard.cpp | 3 +-- slsDetectorSoftware/tests/test-CmdProxy.cpp | 16 ++++++++++++++++ 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/slsDetectorSoftware/tests/test-CmdProxy-chiptestboard.cpp b/slsDetectorSoftware/tests/test-CmdProxy-chiptestboard.cpp index 382fe5ddc..b7300b515 100644 --- a/slsDetectorSoftware/tests/test-CmdProxy-chiptestboard.cpp +++ b/slsDetectorSoftware/tests/test-CmdProxy-chiptestboard.cpp @@ -17,8 +17,7 @@ using test::PUT; /* dacs */ -TEST_CASE("Setting and reading back Chip test board dacs", - "[.cmd][.dacs][.new]") { +TEST_CASE("dac", "[.cmd][.dacs][.new]") { // dac 0 to dac 17 Detector det; diff --git a/slsDetectorSoftware/tests/test-CmdProxy.cpp b/slsDetectorSoftware/tests/test-CmdProxy.cpp index d68e06c01..72d61cfc3 100644 --- a/slsDetectorSoftware/tests/test-CmdProxy.cpp +++ b/slsDetectorSoftware/tests/test-CmdProxy.cpp @@ -1010,6 +1010,22 @@ TEST_CASE("temp_fpga", "[.cmd][.new]") { } } +/* dacs */ + +TEST_CASE("daclist", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + REQUIRE_NOTHROW(proxy.Call("daclist", {}, -1, GET)); + REQUIRE_THROWS(proxy.Call("daclist", {}, -1, PUT)); +} + +TEST_CASE("dacvalues", "[.cmd][.new]") { + Detector det; + CmdProxy proxy(&det); + REQUIRE_NOTHROW(proxy.Call("dacvalues", {}, -1, GET)); + REQUIRE_THROWS(proxy.Call("dacvalues", {}, -1, PUT)); +} + /* acquisition */ TEST_CASE("clearbusy", "[.cmd][.new]") { From fd948f1a00f32c37dda2f012296c10d281949cfa Mon Sep 17 00:00:00 2001 From: Dhanya Thattil Date: Fri, 5 Jun 2020 09:06:49 +0200 Subject: [PATCH 13/13] updated binaries --- .../bin/ctbDetectorServer_developer | Bin 198344 -> 198772 bytes .../bin/eigerDetectorServer_developer | Bin 364759 -> 365281 bytes .../bin/gotthard2DetectorServer_developer | Bin 178988 -> 178988 bytes .../bin/gotthardDetectorServer_developer | Bin 150028 -> 150448 bytes .../bin/jungfrauDetectorServer_developer | Bin 165780 -> 166200 bytes .../bin/moenchDetectorServer_developer | Bin 193716 -> 194104 bytes .../bin/mythen3DetectorServer_developer | Bin 172840 -> 172892 bytes slsSupportLib/include/versionAPI.h | 14 +++++++------- 8 files changed, 7 insertions(+), 7 deletions(-) diff --git a/slsDetectorServers/ctbDetectorServer/bin/ctbDetectorServer_developer b/slsDetectorServers/ctbDetectorServer/bin/ctbDetectorServer_developer index dd83c6028cb150450102e23e743d752edaccf87d..f4d213b2b9bb3d15a5133151c9dd63f50b295f43 100755 GIT binary patch delta 95952 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

rdZJDoMJ%^bf-MqHdbq3+HqzBfv7cUG|%d^){ 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 Z{V9Zle|^o0FRskEDS|J2e8oBC{|}T$no9rx delta 92465 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�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 diff --git a/slsDetectorServers/gotthard2DetectorServer/bin/gotthard2DetectorServer_developer b/slsDetectorServers/gotthard2DetectorServer/bin/gotthard2DetectorServer_developer index 95156a0868a2c527f821f404e82c992a8138bb21..cfa43ebacdfa3e58848d16a5ce6f22e42c710f53 100755 GIT binary patch delta 28172 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

  • ^6uUdYW<=_Bs}*s2-AW=(uUnmn z)9Y3@;`F+eLR`U4CJ57YUn2FoHPGz*RO_(LnsO!L8*BJftC*L?CYdKgzGhgV%}QcW zw(V2)1GCTmtkB3!#+$xF;T&*_;nu_LhC2aw1@0kSiSIFz;cCMbv~C8KDOR_=T0oq> zb(auVXyh&@Qa^H66Q^(84~f&a?#IOGTX!pQ`qurFIDPBxGFSNL$lXJN`qur1TKAx{ zbsZ^M>+(87OyZAh7GORLoqZE6OcO^srf)}z2;Rw-*N+RM-_3k+;z!?SxkBPD<1e*8 z1#8Nu zn*^5$w-#$%7F3$0>jK;?otctk>;rQ^lc(h&`;4IgJGWg5Y0Mv=ubUH*OD>iEoJ=dvIhrNnF6gJedR^LGY0) zMG>5X*?qQ1$bp94%`T*24==(7CgSuO_6c!%4ckGSUcJ`{JqVKaR`#FQ?hR20+pvaRO(BuR^5 zl6-X^8&OJ1LR*!JHs`a3O+5dIwX$dKDx?i*SJCTmOW`)b<-(nUyAJmR&UB3_W#Q_< zwSguElw@7~j=-wAf2rIKX1ftu2wcnQddWYf)^Na7xb z<2~naghZD^Y(%-f6m%CscU?i~ox9Gluh|D2+d7RZZVXV~Nvu(j?*vb<$KK^_?_>IDIG0Ax_^(nZ)Tk=^f(q zo%Ako`c7K)qE1>%g8EL{;OwMgTb!NbSZmW3O^uFXO5bCNO#Bi(g%7G*a-1KycdQkI zkFsc={lfVP@?Upl=d_&)HpS~#XEAAd=(QW;bD@sEoF9^z~ z*4DHh(iS-~Q(6ycNk9=a1-DSHdW*GI^gn^=%1_Kb!M46;`!7>={ghJeMJb~ck5P4- zSpO}1hm8{nCz*w%i7qEGVq1%wCy{NM@cWK6_o-gCaont`+db1n%6F`?PgH?-5xgug zd(U@>$xdXSImL>VZt#k#D%XpsN(($Y!S#Y03O61u9d0q)YPd~sJK^@i9fiA(IA^oN zuCt52zN6n5Giv<65u?Wp?>+2|Y_A9GcCxT0sa4pO>}E;oL~nLbxEf!0q@4m?Gp}rdO$~~qO!)yOV zSr=AAQM`J1!feIjlMPA>5!q9HHFm{arvMfP5bErCk97{0!qt`H2Px>W7SstrohYct zb+NLi8pQ5o@9e35Ba1buw>lcdy3<>Az&Emw8t#7wpE*iKM*ZL-v<%L zr}o$Ss+Cb%JfgB!_f=;Vjl6OnIpLp&;;TIa{&e~Ap#%IomECfv`kY0c>V+ENA5%&y zpW!)|;;Bjr1xL`z2{CB6y462-EmP(q1xY^u-9}U#fpXQuiH4ruE4oQ~@wbKP2$3P_ z>!%CTW5g~^`dnc;LfimdY8IMNpLW0{5uB#l{1wcmdVa2GnTEt$z@F>rQ({7z8iRJ+ zkcRTF-G^-e%3liQ$5*?QSz^#g)s8ct8zZ3^PlV4XBvG~-=5SO_3gJU}N)=Iml$zA& z#BHVoP~5qoJ?CSFAhGx0Kie0x2Kl$aKX4GX8sz^9{-fd$Qm^4y<)&|e4xQunKZSp1 zN9-#pT1lu@KM^zW@Qb)fR)sA<`9*As=nThH>fwmMrSOsjh-~IrpZTW^1b{i`Iq8_xrlte)5~9t{%8#rg4SHUFJaSea4jCL#E`2%4ZaM1I{SsNrgfHe%ug zwOXl6RMkOJbIbIopKz8?d}A(hO~o!)>-U0 zND;fke^4xY3yCZhyWT<~PsEM4)P}0{x~McsZRbB`FH>HjV${NzPZSxGAiPOzm;}`* ziw1F3A`_vD#SIxcQ20z%V@lP-KyqpDO@szi6|E+tAwCs@5bVEHSI#zAaX7?=$sz-KU@r>Y+C26#SYAc1$drf?rHoQ z1K{7;25Ul!U)Em{1MF%IHeM{Vqh=0#B5N%b{cXsO5r;rSL2ua6@I6J416l+nj&s01 zUB@`jCE<#t6x@y*gkb+(_b}=tt-=C<&KJuZs=Vd&r9-XU=xi#s3KVH0LLXx2x@!L= z{HNY`m-Y<&bBAEnit#UNdli0%s5n(kigb*0H&T<*ieg3M?xbWp!oNu@n~I{E62<3J z(Vq{+Ie7ik(9~E|Xo;PJ)KTFx4JId144Q^o?i3k#lqriL>nhRq0JPt4OqoTIa8pB3 z%8SF()C8{|O&CPNcRD7d>Z1O1Brr*In+}U{G~Aub9y832l_^L=%k=>Kzljag)g;zJ zJVGS@-KDWSr_jcMQr9b{BdzM9rF=NVAo&(4;fzaj?B zKu)iSj2R$%i9_)Dm-q?COk@z+V7&&zIsEk2 zM7|g_3rR%G!#N{0?oNclYRp1KbKi!JQ_43$_Y>zJU21nJx7{ioq9`R6ieeei#4C;6 zmZ$^xOi@1rrM)7$$;WjuAp^ap zGWHlO9wMmjcR`yl_|nK<1bZXQb#qbty`mx>{s&)o_t$WQ{wTW5)jIvqTr6)^h(q&G zt5a9p!=gRXz9WL>qbrt*mh+);?Zq-YBDZyMPaz4BNC`6D6=HUDg=%Z{pknv~#)$ z%0y^#h}%|ujL?CiC1^Q4%Eu&;A%&{I`ZcBUc|=JK+LejgT*>xXsIDrHVY?w)4fm4k gz$@Zdwi@Llmw*9Sg5`)uGDNQYPGyJfR7-mNACPK1sQ>@~ diff --git a/slsDetectorServers/gotthardDetectorServer/bin/gotthardDetectorServer_developer b/slsDetectorServers/gotthardDetectorServer/bin/gotthardDetectorServer_developer index b6787f389ce4efab713a68fb9d1576fe8cfeface..6e0dc4b2775a9f0c6c348a08a30e71381b1cd62c 100755 GIT binary patch delta 72360 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

    H_oFb6~k5r)JdYmp2j4=F*a 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�DY61_k;+KS<>_G%I3b0Q;kX4B?G5-$t5m6V};;bv9ArO_X?32kcZt zmah<5{;(4s!5>R(!V-@Y?s39pQ?P6bmQ8a1;bBAaZGaYSrs#b?xKLN1PSpyGz*QEQRf`1Dbnr^ef^uoe;0-VH`|= zIWP~>G_TP#jnt@-8of4vK8PNL9s@VREVvz3K`hgVW&T?c;=k<_(bUXFeG9w-fKpzj^Pt5O3)47{+5n5pRT}M=D}(GW*@B=tt1I6wzGH(LseG-lTwUQowy= zu#XJ(Vd8z5cpvfi5x+$*M2mwW-l9TpQK7f|p$UJ|Z6VzjnzDtae0w>sU4}6J-|oh7 zLJ|ADIq&j?fp9s*WcxAM{u8i=Jpy00l>K2LEQVdMo6qJMIZE<|xiFvbIfT!Hhv8Ae zxf9M4X2V=~5FR4DGvQqs|847WY=o!a8AZH9gm;MW4mEv;n!eKkI~8#NOB}!w?^57* zDR6rarvaxG@k=__FV8CCAeQ_UmhAB42*OJd{}U#}|3oO_P!fC4$%=T7^xh-APMV;T zCg`NeI?c4%ujy33rc?d;AUvdq!;Kt_H7VjZnL_*~TM?)kfZtPqqv+=U#p8Y2=6%|x z+l~MR0>l#_Q4w7Rj)|NUajcF5m3nkHbPwnY{UPDH2zT6xgBut02J}Wn{2$@|k8uB& z1#`Gg&5u*_{~JUfBE3DNw-@eb{2x0&0q8XE(`nv64o^~$8Va%lo`5}y_#JKhJKFg7 z9u&-|h(DwW@rU(_I7tmpQp29D97h%^;!hOxPZadeZ9@FHT@fEr&<`o-Un7M0>qCIG~7;5KfE3;10M`5mzYK6$&;mO8R4@k0n0B5*J)Z-;MMGNI#JD&3R<7 zl?=$}A{h6{?1WyGXc;ROBKR`P4~>Pw6Y4Vu4Qs8ULTg;E2OxBg}$i z@F^L5x*P6+o$v@e3(qTJNN`fDK$>ERrWgu^;czWXffRIzf)3G#hUh~ViFc8B!@*cK z6pJ=t(Pl{RAJH-XM-p%(!4}x2h%YhSmzeHLn&3;C;7i)_OWN{s6bG&`kWO})PIj4+ zT)w1;uL%DY;lHA$Us2Pq=;dG0%f~!8!ZgAhm2maOi+Lc3NV31Ca}oF0m$ByWUEMCQl!oxq|OQYKtEUji(ngUhisnd*nQKD z2{}zDa#}jffc3BeHVbK<)`Fu0k51SPPe69#ru9QInnp&7U|UpyPS6D!p*J+aAQ%oK zVH`{#UIp>0(c95G6giy&=qZ3c7=}VN)%5J<>66$H)hFY~z#|jp!va_e*#y(q!aCRp zn;G!Dg}xHY&vdcEJ8=i)}a1ahbYG9xS225^nf*#Na{hX4@n4Al zLd?DpvoEB>Eu_OO42GdF3dX=Bm<%&uCd`KguoRZVT383w4e^CdWH3MmgNpQQ6VkI? zk&7aQToeT<`65cbC>f?g5?n-ri!kjXOuLAhFQVo~44Z3@6p$O zFe>B^#yCuI=Ph{aN{SPDl3DI6uFLn`n?Dv;8KZf?iXiK9!A8!igD zVOWumwg~xXnH=;4+r1~ysXIQbV5F-hpBKq zq=}xR2G8w)I~7^xA!L~mQh+iFP=+PSu*8OaRAj#*D~Vs}0Ha|nr!+;J(v-k5xE;2L z6>`-^Ur+To~+8L*N&)mWD zM<>r4ETrCIA@x=PEP~Cj1s;bddH&eS^G6}9fYq=Qvb@;O-FQDY#_cIEjmHUv#|b;=3f&7Sml<=HV3h_UL|Dp5n z0?#d2@;xm1-ga08&%m>aI7518Nbd|4{y<$weGq~p46@+)fCbM7yWt+l3hV<`V0qE( zU&OM10rTNI%duDpjD#$p@`|~>jq5NU?)RVxjF5EqlkWbFFblFC+Ru7u|3P>No`&XL z+QgYQafK!r1T$bJ+y=|wes}<$fIYOG18wIBeW5?33EF6aHfr2PjoSv`AkVynf0OY0 zNOvFUzMak^YX<&Q>`f}RFOE0o_9fs*BfxqBWD_8lpQh=Sm?`9H3i(1WdnEnrfl%3U zD*H11>1F!Uu2FUj#&}Yo5(CuXqj(nbi4gyf@c)=PeN3G`Nn%}{%yJgvUBr09PAq3# zSjN(7pVMlepM#J(B@+&}?0pl?9W$Yt{}U-_=c zXvEQk2NyE9@F)QvCE%l7u$%oiti2IyZ#)9K6!Dmg5RbW83)bk|&5u!-$0*EWmmq^E zGlAFslHd-wlfAe^_Ttt;DzS-5aPTa$oFSQK<->Z&5;|)y+{d1s2YYr#SOse!m3y4Z zW&5#*7XZUyBy5K2?&K5H_6chH1ZI8$Ge1EgpP-OA?ri3HLYgs$X3QC9Q%}d{9tGS? z0XNsddPuWxrrC2{+3a(N0Wc8K4RYxQxydjUo`$`O*y1n578AsOODcnE3pLq7O|}%m zVn~8pNHEWv!Qu=Aa9kgKjVkM!+Z-0~=r?B%LQoC!cikNhhCl z@<}J3bn;0jpLFugB$R&{$G9S%G70fi5X9t9Ve+R+U@1HfPqGW?!7ii`7Qqro(``M@ zu4E>=lG%`ipC;j_u~Y$;Dj`+9JgAhfI5EB-q!Yr5rsc})iBA%fMo}mezp`g!{ zK>ETn^aYG7itS(wjDyYWP83t(;!!-t6!Bvc{4ojsxCu71O-jK^C|F4*%!V{k38|D^ zf}@IfHe85jBVjqLfG1#&BDNWM5zkSf=cv$g)$C3@SBs+; zQu5Mj_F>VVcVZvb1(Lz@Wbk|r%!3WE5fc7+!oT3poMVCoun1Cs7brmaKIWkPa1ai$ zA8W^ctN~KcpHR@BT!N#D*lteemF)~1MBGlq|B4afzv5sA>{LVr8B~x#MJ=pTL?s2Q zq+pe~Fdw$V4nHZsfE5_!P3=Ov>J<6=feV;wE8rTUN(lk z*%?F6bliUuw;R!a5sc9WGt)pOd6s!*aI{aUz zU@ud!mxEw1tbo;!n!ilVcRI1b>;f_QPE5Y@5*%ft*~CV35XApy6^#FS4|bf5uor@4O+VHXj0?S}{0c{Z~1>&(vmq94 zz{0Om;8!W|t3{9szd8ubLyCAUK#12EE{$VC{6Z+=7w*s#GW>qQ@cTs!jDt&GBlVB~ZV`o~hGp)dlFbnp=em10O67%b{$?JjaOfQG@ z^4IC*uUEioxC8El)Zle$us56?>qyuPTi_XZ7SiT>Y4bOjj1^rcE4m}B;M`cjc|i0-=|h5P3v^e>(1iuM=%iia zjQ?XX>=ehbG3>&|up7*T*^stsNQwVQiT~IFsacQ0 z&a)k)AUzbMrwz8V6Ya)Mv=@gY$Jw^bV;#8_(neQkqbp6Y zncd3}b}z$-NVoyQU7+nQ&~~4cuwX4^!OF0`m}m8WNVmYeo3-#Bj%JyY)-xy7F)P!Ghh zPYVz-EfDg2na1q6BZGB2;V$CU6R#1n=a9yp z1Fs&)*d1^;+(&^F3S?ljV--)#t9Woth$F!im;rN1m>RB$C&363@oPT$3T-+>V>RyQshsM3i;Dx)`oRDuYk>@ zzj?QioA)4l$$XT|$9S<<@M164+2RKSU?5!HdTE_*iJWzqwa`)4L?>X6)%#%{-5B$$ z8S`ZfnKFh<*;<&wGD@(FQWyd0jDQUMxj~h2gDQ)Lv9Jd2fW$8&{tNiOfPXnduACuP z&JZqV2!D|!#1}b)V~Cb9M9a>@3;2`n7o=fg!s&l^r+AmROpJH^c)zvOiCA+ zlrEfv>g!b(&f?$!cbJk7Q}W?jSVw?C{D&Chj*M|<5+vehMEr~be@1~nD~08pSoCmW zLF;2MDKNai@Y?S}5?~T18D}}kIL`@1IwutwFbn2DdZlg`-Brf`)iFSoJZ6NginJdT z(te1I{UA2>gJBqqU^|@N<4EtZr={&_X@^++8BdPx_h<^b7^eP9&se{>wM=&0AHwU_{LlvxpOewQE*r)Ggza9M!bSJu{QxFV+VUQX* zQ6nd6r}|zyi+j|Fo`oJan6Rh1neOoZR$)@IMWn&^rH`;pF%&wCO^6h`rJ6d z2UsB{pNq*|^M!ORfW&tt{=AJs&dcI3z@5VYPvTKP7YaBR|GD_P7PB|+x{ZLj1k5KO zZRSRsxlr=Clzc9IVlI8cwVZGjkj~_Kp74c)r{HcB+>L_I#q@JA{oGUn}gfgS>w2oOYo3;18epBj5oV-Na<2Yq891zku%J*k-|HS?g8dC;3NgN&s4i6OcRP=PNla43pcox7SZdV@E(1RL!(uSV2p(nbhs&9j3B(R(WLSO}~ zR^;NXLM|?3&pwtt`*@fF(_jm1gILH53wcoiFDkHv(XfQk5JwZl)xdg4=U#nK$km4! z|M4Yk{FZWI9~btcJE6P4Mo2*3<&(V2C)ZK1brdX3;l5}G=>uu>fmQT@RrG;%6l@&@ zTQ>^FxqA?P1K~GphgFKq*)L?y0qztz+$r+7dxUZ4Fh}4)&2p(3+b@#s7rBWx+C&>| zBB4!V-2YOz|53v%GRPu>tOM{M@q&mKOhVlxbOL=4eHgtLy&s+Qa!D`O6VfMm+fnki zqqH~*X>o>bj3$eRBC9S6Sw%#P;DTc9dQ|tYnOQiVS@?lrAs!e}M1mqjf*o{)?vSNn zf|Z+h9993Xj3luoqs0!`zqFFrTmC z2DruPRJXbl!*E345f2mLdbkm8g@tfCtb)7XZnz&FfYd0F8YP~AXCW3$ z#Df2!7veu0pgZ)00Wc6oz?Co&u7w+67OV3AD8x|=t6&Y>4fntU@E|+}kHfR@JRE_S z6_Mn?@2MT3C-j1Wa5-EFqv2YZ0<&NaEQZ@)4cr0uK=WQ42XP#N$KgqM9$tW#;kY6m zbQI!2XXpie;BpuOqhTyefoU)Y=D}^S4DNtC;a<289)gGANq7og;Hmtech z02l}(;7XVX*TRiFl_zK6D1^nZ3f92ga1T5H55i;cI6Mo_!x4B{5kGVg;)jmV6MDfw zxE!v8(QqwHfmtvI7Q=0@2JV37JvjE_I0z5HeMUd2kyngFE0(xEJn&hu~p&5}soGr(D2s5sz^p9?~h|A!q0ceV`u;Bc zxE^kVTVWyG4y)iUxEt<=2jEe744#2!;V>NG$Ao%*Oy~gJp(hN0fiMEDgo$u1o z99ggs7Q-r719!tc@BlmrkHO>cEIbcK;AMW2=)g}B9ib=mf`M>3TnVG$T9^W}U=A#X z+h7e;U;9tngJUl|2oJ&I@FYABFTl%ioTa}bOMhqR1%2Rh7{Vj>0FT^*tl&LZ!5bm* zKOz1nV?3=3p4zd%MJ#Y3kCpyb*a(|oC*%LZ5fb3xW{`)Q&q7%0hrvX+79NI2VLu$; zks+B!hE%u}7V=*CDITiMP>?bTvK{V(yWmN93SNTjN2JGctP~G(VLs%hm(ES^5eLTq zBbe@yVBY%}F!OT>c4r%+$J)A|6;U=zc zIs?xtB8vpFNFa+<m}XYKI+=>-;!UJkIU)Ue_c5}mc{UkllVLXDvkA`= zvv?u~nk#Tr;~>K)$S}u8h#Wr{1|uMyCWlUwLsR4&uo9OP(;3h{U>w(zvKg{QqOyWnof)7}=I_VP>|Ed??D^DtQ+Cd;Eu^Jvq&?XU_S zfnAWAM5`L0|^GP_Lg!4%^pLFv{H=lI#NjIN# z^GP?Kbn{6!|19JGsZh?G!Z~|NfoZS;Vv(l^@Dv$ur3PE6!B#rkRyy0$`J6o!Kuq~G zrYvCi70`zYC}05vEFgXX@e6440^0mXL7YJaL*o62ct4_V{OB}CPu?6o`7-_sDL^3w zC}i9h*1%CXhH0D_9xjj?o2jw65EesfV5SB|u0j;K!y;G$8z7yu2ul=UiDyEDcqRN9 zy}yLs|153&tO8?T9ISGlnLg;0@wjNIf}BQBF`CcByc8`1nXe~qz2DX zgHrTT^yfV|gEGQq*aEr!Jl9_cW-}xdmcnv2LuiU}nxdReTuvwci3?{>Zjb`~gaXk8 z#C8Q{!(7JnHA2jCz_PbS9yi$OSc!#$7)FA|}K2sK2g z!Q?fVye1i@LM&2)MXZjTJvl=PV5I<73SgxGR%SvgGokeo9OX=kK2l2`sU=)3;cBUQ zEj6zlf|od(G6!)u6^x?=w!zDAoHMF&&ZsIN<8}w*_T_NSnj&Extmll0o6OGTFc!u` zOuQ2l{|poVOo5>=9PWTSAr<=>6|48<=*b_V*Q1+%9>>{J0%uVDaDcNXBJLvMu6URT z55dEnHBp0CsKG0dFbYz@S18~sWc&&lH|RNga)1Fa5az=Ih{YPPSOX?+z~rxD*;ldb ztHgh`g7N?AD2_4CrWh`-FCc$Lb2HW8nXHJ5%r(~E4Nq7$l@4^4S@&9jk z=m}F{I&6TAoIx2lgK~m-a4Q^yLmV~fIBL=}{$CHr5eXURuQSeHZ-hAzc z5n-<$Ccq?^3-e(+?0_TiGG|g`_y!ri5e!2i7JdT@zflcqIh%6fY|0H%!De;*H}~K; z&DoU4|JSh{gfy1laRARt4EwrxkVT3I57NY$9BlC*MT(SAJmio=4msqIgA^%JJb3Vs zLrQXxBE^FTVLaqui!dHMh`6mg;}q$nY_>Rq%-U?mrXY(e*=Y`vWtW5vRaugKd8dcv zO22faUmnX7X(t+XqEVJrdFuIZ)HSi}z*lzQt2MbUJF=^pmD9}1Yhu}nGdpp1D$Rd0 z;;$b@<R=l{*M?D(q)_rhEE!rOu@>UEX$y2^T6&Ufy7=an;qbAxZ? zjV9NaCfB%}lWEN^KZkjRV}& zWkXYIT2pIAZp)h9R77uTNY2ZQ|6JuCp6@@EKao#lSyrX_-<$uz=O29j;g|APnqhYK zKWSNzMbH2JnBSO>ODDQ_qI=K%z32Y^t$e4A;@3IL$uRiiqZCt2Gs7%%q?so}mRuM- zH-28A$O4Nj;rr*0-{-^N=%*zwWvZ;P&IX%ou}zH~cK?$7UG&@F*`KP>?z5j&qPb_k zu13?9uUld8b(<@$>CoktK6ebl;3C2hA;XL?${6EJkR-(v)66i-9BJmskR?YxtOOSY zgCYwovcxhgtWu&(l{MDcV3RGjsjznXPk3Ei?*G6Z?W$?bh)L^9Ts~T!D25%h8ba$F~*r7Ns1|Em}QPM z^JK`9BTs=M3oKT=EV0ZAtCT2HWsP+<*kp?uJM6N@KGR{)Q`=M9Q`=M9Q`=M9Q`=M9 zQ`_4{eNX*=%R;A7gL%@Knz=noO`x%@am#^)D4Q`A2-KIVkSah)?-Tyaf@F1Pf# zQx`JK2&0TK9tM^Egh7%NQ%p0%EOVrp$0GV!a^xvcWPwGNSZ0M)N|dRx#yT5pvc)zv zKmY!&!5;e@aKteu)M;?WITy5ObHz0sy4=#|j)7f^5HidNql__5k`z;Z{vW5AVU{`O z!{CQ)YV5Gf9v1k+0Y@Bj!YTDI7^okpAE+Osag0HREIINND6+sNTU4BA;6wu_y1(L@ z4zB3_mOgh3!r&po5FxJW!JG$k9?W?#=V1^=gFFR_EU?HD%dD_Ui89qNT8ZVtXiQN| zQA|-xQA|-xQA|-xQA|-xQA|pMx;^qw6sGX@nu;4!7KSKQ6E22&0U7-nySqMkl?WR6FUjN%JPnnRL8KbqR|} zI9I~r5*CoCq`f#vVwQFoO+J39IH54%#0e)(IB~+k5_Qfv=Ykdu2R`OHj6MlTkzon- hPfoZBqfdu%!l!vwam=UcK6~n2tU=1*K&8c}z%Sn_AIgj5&vU#yZ=#hPaGSY7*EC|muPk%dX&Dv~TP*`R{l}NRSC_Q4hPyp2my75s#`gmF2I3fLg4JcAbU>Nb8I)qNpSR9#>&?OoRgbwxz z(_XtkxwQr{q0h`I_4nXgi4;Uix0Aq9H+oPe_FN_T`KHbT02yPv# zs9^d)BbYweg;bsWOi3&wZeg5`y;8)77$;s@4e_#R`KsVSLu-08L86BWSs#Re`q_ur z4f)UI2OFwwO$>J#81dx~{i3EZF2_+x)M~~BQIGgV&1*Dho+8SyAw)22xLOcgOH`~% zR1{P05F}BLFy#=X^@$=I->o+ac^eoa@ouKtaYagW3{#DezwMwRV`#kA6s!r=%;)cE z+%`!2;aUq&NYMt3P_%)+^%~PsO2t#G` z^>pW`a!0v6Ocxr4qJm_{SOt5lb|#NF+(V{g@N2$@OxK%#Kcqc37eVG)J)*%wxfzY8 zk9#OLLw7JHr-Oya$J1>Nn>|h_%hL#3A<4?}d6O>*&1!9?H6!?XC6n zJO|Hntnqj&2yb~r#us}RDfWu(TF7_u_cgh@T{*&*L)Oo?6dmr8bU3`7f4WJ(AaN1D ztx4;k%ZvDro3zuNTf`b*54=)sCX8*2c9H(!w_eaU&K<5Xc}-gfFAc2^8bHKh z(JbOETD?x@RD<&hF{0Z}TVx)kHPlSjBr7=-%vkYw0)JH7QZt(WN!v;D5Z}0I1eg3N zW73#n-RYhI?!_LX5DR5vv*U!B*%}ZdzPq{H(L<=YwRYlpd%Ph+@Gy)R`3V`j+h&;` zC(K3Ix!Likq91OncCdQz|6V)s3c@pD@~6skQurM_N5XZ#wxlpmOpI$Kq~hh&>>ffj zUWqe|#VfCU%6PlMz9&y7>r2v0((}mE>Y>cVgL3EeC z991Z*n+C*=riO^Rsd5xrs;%suSK6beS;~kHX&7-9sHH|PFnnKKr|9Qaq6)4ei(G5U znyL}MAzv>nV}!}gz)N1jh-sj=&3u|p-^}qUBVGZmdyU_u>(T9RvtHQ6P*pI#jMe~J z#z4!CQkqy)*&$Mzg81KbLo_UZ|D9adRD?-I7~5Y|ttrfpe^LIf`HV4DJJ1l~dD14n z?9Lt`X-G_3H(qzwa4rMf47_FfOQ~G1{YBPF_)ITsV34zETElb0<=?Z@)AX~YNRo-^6&Q<1nhrJ~SHI8q=d@8M zfZzfM*7*eYl>}FBlNIR)856vMTYD9aCZ1QWj(_Oxh;SFAxHj3*Vx9U^Y5hEZl9|5V z#;4!iE2IViYBurP?ryDLx9zB1FRXwO3SaUkvI$BZ@mw$Q6?eyTVVfBtY%>Xb=}*Oi z>;EJRJ_*HkA>aouX$^Y8QyrHqW9}vSZ{|y^p}=Y!O;4G-HOcYgWd3~b^QA8t(F&!R zlvaqEsm4r=Z2(4gv4}Nx^9}33&}@(RfG=W`6mcis&UOm={w01F+c9X*OZ=Z~c#!2K zKCF3shzakRHuI+Dt-Cuv)e8riYFmNzhBZ;Bl2P6r`EnBzlxR5opH3S*h6kTwWpgRmNCo$qE>9vq2 z@!F0oeoM>fN6Vl@85t2uY^srmF&^=|8Y&Gd@<`PQP_+i3YP_M|s!>$kSwpJ6kXK_J z09Awe$)O#3n$fAx%%Tj^3rAoedKM`Z!xZ1Y$cXn~_;%DGhd;-E(5ge@sy9&0_&u%q z-dPNj9YMI45biU2rrV8Yp;=_s7z@9xr9OnsVFWgZXIr)IQ~8OaTP&EdIdTfF{GsU9 zTGH*uPvp3!k-VPgEsS_@t*qO5pKj%dvu`ck;wXH`D8#>IE$?g<+xX-HMr5mX`xhk^+a!%3#F3@A9kL^uJ4ZVcCB3Ye5ETYP(BM6Z_-ooA1iT zN0)@^V4D2gWJWA`!J8O~XPi6+yn{Yof`+MV#F!^%g1hGhM*QPlenYEpeIp2)pL_P)_34Xw2S1Tw=hEV7G-=cH(}=IsZp!>UTN~CJTLPXfNvB^5P1nA zf8aXJq-gwUx^6+_owio$<#482@5g)JPX=FuHlCW*SeeI(!zH22hm62{=nq*V zq5ZF0A@q9g*IuFhYY7eW3he=YQ?Jmwyga=mGX^qaAoIdCdAf$q=ei9t59O}$%G5p2 z1*Y_u=Va{|2r!u9yiL03&uEV@Pw!NA;_sb)tr{csc%Dl7$7 zmS@B!jM-sU#(I_1mr`EN=06L6l#|1SVQ@9j_f{;>y*^|F>g7X;KwW$&38s1W>_AR(45{IZVwLkjS-U<*I0Q@;+~HaRC- z98{HV&Zk;{QAZO^GED&)@j3p3P7xR>?&;Jf$o4DsaXTa7|FA}rtH5vN{NI-FHkDZ__t8D=o1Af_b+ z*5Seecvcp4BiD}ni(jFS;%?&An|QVVRi%(VdDVqi+ilSc>yf}o^HIMsUZdZ}`Q1^# z*pJZdedG~4Tvdu+{8cJ`8t)rJ=nd2edZXKXntn&)jp&c4LlI3r#$B9aqVC=wbu-@HPRI6frhZq3sgmJX+1;=DG9U_3&PM`-62NF}&1)ds1rOH$vFbjU*JEQEgEr^8xFhjCKqbrf3Cc!^2}8k><0tLO2lkwe4M zQndz5Vn$K9rfH?d6pxN(sddMZ$Pt*|bafowPaC_uI1B?ECH7Z1MeOv&Upxcjf!ACHrW$bJtNHW;c!5RKDwq4_jt$ zI=YE*GiZqnMNUf@=pP`HzSZzVZ+}PYhNb#(l zXf4PuXl}S_V-4{J>a_dv9lEsX&}D89AsJ667toA#HV_N6R6?p7*vtAcJ-A5BI}wDVV`!#eq^720KO zPQ?_zX;_@V8-+xm#M}WD8xVu(SGl`t z;Spc^)rlw)Hp49pG0C}nTGv4%A_8K>oE7iJNRqN8$88y*v@q)8z}fS`#L zF%~0KaqipQS~siS6epD8S!ph>?=~pt@TMJ4cZVhhpqUx=x#89%&vu*?u5CaU9`cbLjtxbN0rYFn0(J)0(VOxG~_E?dH*OQm7ay z)UY`iA-;-Ui^2^@K)vv%SL{GZ>~lV`;nE9zAS5+FY*%nBKCw-uP~rTe-8*xMTVdg? z9Gd?eNsmXHEt@S5 z=hw{UC-n%2m-giz?Psj|m=RWe>=EN6jp&u>l15#!^}=qnFf(S$jWYdybaq>ms`Yqd zJ>H1+MKV%~MCW~D6up6lpWf()DCutk|5uMLoDFZ<@aA7tN(Z2q;yP!QyWR-A`7$~H z>V_LjaTVi@V!Uy_O6i}PNOA4=zM-Wz5Es2sHB0_`YgXDQtwHOXYcsGHc{8fUKv)%o z?e+;1s>rxj2%}lX`B}!1#?d!Si5Te-E`&h(dwdogh*KFj{Adi!bfUo(@psPRt9ypE zZ}bTxH2Q=(sTEa8jxo}(>65A?2%gP%?)At6z3{x(CvfOinH-a)r>|6*@N|F`4%1zo zBG3yV#CU{As7iG_Ck-NJRiz?CH2+br4sFx$G!0L?SJ4Ux<B^zE{xKV@g$a0t<8{z5i4k>&U!dD^uE0>hP@Wx9{ zgnxQtbA;cHaIYgg{e52wug!z|KhGmhx#S%}aN^2KF1#>wV}xC63NkU`Vq{ztf<@&; zpnV;6NhvrlTq;Mnej7bv)MZB3itUT)M&YL+ybzcqLT7st~d3r|(`jAqr1eE4QIO2qI{3?h4qT1Ho z-uEkwp}Bn*A8cr;N#)xZIGC=0_X4w2j5nSUeqbkurgv zF1$#2a3BAMq36>}XZ5qwz&12_}{d`_oet2I)NDkh}`II;J4egizLCsW` zqr2We`c|tlHuIFDy`DU~ekJ++ef2>XXY!SO_3euxsQ6Q7$@ly<>3IS_zu)~qt7r1L{W=D{GLtXr*L%)_Rbhq*)Qh)_n4cP}Z9%4BgAN0W zoFz2)HVTGq3!Cfo$MV~jhZtexlxkbNaOGH#aC56H zKP$gF$@|W{X*HvinnnZGat$M*bN?zf;so(O{gUZ8@$^?kX`yp$rxPj7smLOo>>-YCKwc^4ELAH6^}ws_w-MsL6v z^u`w{Sbc(vQ1(&DynQJ}=*ep2o{Ybve@m_s5-X*ATXaF0c3CgDAoCfo%xuW4nQ9a~ zdzU5`Sc~A1t}zvjmOauG&!Ut9%wyZ3Dbaq0X5lkT_I>GDB&BDdS5i78?S(z*Et8a< zUL0QOg;xgq5;R3hP=xoDsq~6BLBsqBLI;fDiI9Z1lkj#&DMD%ohDZ?xz3&mXU6RKp z@sL1szzvABYl{3gmUvKP1H&<5c#7V{h<(5^3Ns;aCItTOR_xneQs>lrep^z+W`r{% z+<7kycIB3n}=!`~w;PITg>O$Qki0H^Rzw&0Cd-&=~_PLpgL!sw#I%=S1FO)6W28HFq; zo(08MxTyzWO;`#0#BIeZv)^M)sSfh0<{?NPg1qRaKAMdBp4)~H6W)tPh-AIlzEoh$ zia;kqI}!S6H+2OR`c=0Rq2u2(AoO5_Zfbg6n$uGBB?w)D(8Ju`@ocg<*G+}3=X-ht z?~34ZA5e{e)d+a6WMC3I-d&DxZD5O3xJQfvV?&c^qtr)8_M(1fsAR9k{N>n)Am@6X z9bg=#M=-r@ul*PT3O`Y9QNR#M*thFw2f_%17-92>$9|$b55vAfv5snw5Q!Evz&IF%bUHI=x_R;=)9>6ifc45wvot><5weyjU@Twss)?OjA?57oCOQjuJg< zU$&oJ7RzO8vDV0D#tC_dBoB)0e}~bvMlCErlW&9n~hK#=2BXW2>mP5E_MtOEmHb znGrW@k|1Fn0$Ke8ZWV>4G>QN+F5kOxSkS;#@`fe-c8#FlE^Szvw1W{Q?NAm(;O>VU z)Ak!y)T@=_VSzN@Gzp(tnFPEBc#VXQtxN>Y1#2CN6xOZdH&>Nci_^`IZPnEj0iApA^=DV&=y$# z1uDW9GHwn$2pA+iZwfpf7$jj0@B&~E@Qto zGy(`@z|N}afF?i?9zFw<1_S~c50n7}0vZF91q1>b4wM4~0vZCe69@z}2&fPU1au!z z84w7lH&7)I2#D(jcoPr=s0U*08X};!K)rxKKrMh0fj~fa08Ih{0W|_j2Lb{8-35vQ zfq;GovH^jBeg!H50s&QWfMtLnKmn*42n2KrNV^NUy^GKfKzbk$P%)4J2n6&kPy!GL z=xd;4AP~@(Ky!gWKsKOsAP~^jE*$b65Cpgh4|9M(K<@)Nfj~fOfXaYCKyLuu1OfrA z019`YAUX(9k_G{RfYN{_0fB&?14;)10nP3b#|i5JL4Z^7Fb@a>Gzn-o5D4gTpkg2p z&?ul%AP~?nplToxkP)cSZVeI80H9DH5Kup$C?F6}ParN95Cj+nm;?j@>HuT{0s*xK zS^xwBx*I4R2n3`BvH*dAG(b5(AfP|7*Sr7-1oRt_3kU>M1ysoaR!Z#8K*c~Hphtnqfj~eBK-YjkK!bs_dr*J& z5b6&U4g><~17rZ=@E>3_U;-crC<16a5D2Ip&|Dx8P)i^)5C}*Ilm!F=Y7Arp0s-CX z42uGRfc^j~2Lb_A16>2U#!2vJK&=y+I_cqgpl~1%&}kq85D2IQC;#!f#w2%sQ;S-Xa)oUr2wq~0s%b*lm`R?8V6Je z1OgfjR0;$FN(8C`0s+MVHQI+(U>~7@Kw&^2pnHLO0fDIh>jjty2*SfIKq){VppHOk zKp>ztKp8+FAQs391OjRbv=ayf6a-WR1Ooai6152k1auAP8W4#3zsrESZ!|=B=mydQ zfq>2d#Q=eTN`VrAKtM-`y$O=>q1Oi$Iq$`A?g@oP)(gT5j{s$BT1Oi$PGy(_&v>0d-5C~`?&|Dx8(0mRs z0}uo_6UYh#0-6j|00aV>2viIN0(uOn5(oq|0;tiq$n9?lJq)A=0s%b;ln4X@x*sS7 z2n1w^H5MXya%mD%cMFJH8fq>crl>>o*LV;?4KtOi_h3-cuv!751kO2q;3kJ3`+9 zMFW9=oInXcARs%C2?zwV9f(T@1Oa{mm<0p^$^j|>0s(yhR00G7dKah~2n6&Nkgf>P z7ZF+oWB>vIEd@#j0s*}OlnMj_dI2bd1I&=%T)j=o%0R zC<%x?fS&RIp+|sv0fB(xff9j0Ko0<=0D*vFfXoLtj2MIL?3I_rKH3NzT0s#dBjRyh&-PEHk0RjPC2g*8#{ty2F{sLHlhajK} zKxIH6pmLy_Kp>!#K;efF;UPlDfMS6_K!q zC>JP~lVB=fAs`43X91M~fq}CEJqe^c3}p@zN(PDs0s)N#N(2G{4FyU80s%b) zWCj8O#R6pkWgV9KzrKJ4fFL~V0aOYE0_qG@4Fm!T2WoT#4b2fkt$_4EAfUT|1_6P9 zngAsMfq*ce_pWTvI(*p=*sA>lBi_YScb67Uu_s(|#teKDUT|-~CJb$FEwJgObAw;L zAvtK0IN3qNmY~3wNDi72Kf)dSqvE!}8bb-z7)r=LQnQ2{G&6x`O1OFnIcSyxFPCuT z5^~UF0cT0LdK~n-;BH^MXaL{lAQUtzpm{(bAS$3cfj~f1Kz9RyfT(~L0u}zquXrqy z3q211;BloG!7z9PLO`k=B|sn`svTuOARww86+j>$iu@W72#6wYbR2c%I3bE$2LuB0 zM@|T}gY%Yp4H8z~yBP>x-x=`w&Y*P$g)@F87HwxHArBRf6&&kKi;AP2g+;wtE)^#o zob*|2zW=RWv$2XdJ4wai(!ffaZBelb!6}^WQgK4(z(#Y}?S4U%z?n2BNyW(lCufdD z#c4DbyJP0MRGdU`66dlz{Bnx9d2ln&OH#4Y=0lo3fF6@OU0=Irz(|ovns1K zdI8bBz`C2Oc)A7fnJ!@6EmSB<;!)yC8>u#rFn!z)J*Ival zyut{ES6FwrikA*vI(QvayzoVg5Wa|YcU19A;F-Ydq~gV-Bi?k@&FNLlG%(Y^j8O4P z!7BwXQpF2jj7S!TRbZ#;N?RJ@$!DDlf#w?W0L2Co{tzAE0J*RU7!HP+ov#aj;E za`5iuR7@9`E-+(Myzmt;^$ON~pNf|PUJ7{qRlGd#^1!=a#j63Y2E14mFJUDkB&=lJ z1H3$rO1}k63z!4d0aqd5D%SmgisuB+3Em(TFZOlxVz0CA!782wJPUXas(59qk#(zC z_d_aPum3Te(CdG!+o)m|WS}f$ulzhbHN*-@Hm*?1*QwkkqQ&Mu(xp_@om;UO2xB)X8~`tidO?(4R}c^ zo{2|E=UMj{6|V@qBJjqlc+qPZfs0B77Q?Kytb4qQ7n+4^%3|FU7z`tn`nd+oHDFFu1uO-x6uc)@yz%Q$ z71y!uNh;oY@YaL(l!{le9t&#gS@+W_p78_h5Bz|2KjY(Z*eksOg=+)rHu;!FAqTu1 z@FuHx<=~ZrN23%)>Eey(zBaP%sVbhy3iDf8cZ!O44ZLgMO;hn!Wn=#>m(9ATtC%U9 zP`5X+?inhce0+{|&s6b>a$x=();&wbGkl0X;zQOwTg6)s-g@xnsCap~Xe)AA_gwH$ z|C=E-7`=jd6HGc2pztPbMK8aVb$-3wH_*w4_=e8#$8RPhSHD*$hyigy#do8Y~q z;>r6wSa+I==d_{9+R*8|tYRATQ9$xp_bV!%bti^eJ6ZQ46)*8Cr0y%$ovz}AevMN7 zHS1oi;>`qaCU{F!yqG=c75AX)B_8KBf3zLj>g}xCtO{5LUKw~xRXoEk@Kh-4KaS+3$GJ27~1vhLSZJT4c^TrgLtm<#se29~|7d!>pO>wx(ktb3J; zR|Q@bc(1E?#@(>sZq~h8#k&UHHSqqY;uRr|qP;BV&QLKI>_f!+Soa$$o)bJLcyFqB zbH70|`VH%TOT{YyuK+xYikDM}YFx;=GgZ7w@G8N3TjD9>zi-jPeapIeRlu0!6;F2(W5<)M+os}WfR_PYzKZ7p z&jsFgsS)tD0b!?5;7+mb9jbuo;H87NQ^hL;uMoV?RlMBOsK%#R_ZKQ&G-EmV3oY8(!&zw&K5#-7VGq;7RKjFQgm~0?~GTjiH%gmzCkf zttzo2ePW-N#J;SEtqk!V`&Pt~LnwhQu*T}*!fsd#tQzfLcxn6|p0sSOE|i4}&l~X? zM7-ws1K9!w9mXnf<_~VTh&)XsA$rJOs3OQ?;#c{`2`e^674?R?tTGVjKPK zp>-!h1l@_-LtkIu&yaOKrM_-*opR*cSNSid?c#n|Qe#!N^&MUkn;m@@-9{9HwjkyN zZG!K7-H8(xd$H*>@wyYQjeeC}R(Ih%I8I?C!IgOeuFMnt;2~QT;G}yj9Uf;q8-Ier zUtM5zbfAL@;*}+|VgEv~cB~7h653#01_ zmMt;cGwqweo0iV#&bGAT*USYr$Desg>lkTcunn7STZYkf5k_GWRG)O>22|fKo#m!7 zcu6|TeRWw&y^=r^LYWW>+lF`GM0afV6{N6KIwO5p}M*dMPEe4fyIK{&c9_uXV|pzL>XWx8|}QHe*vJZZY}I<?P#aUUcQwXe9Nj&w z)nBn2gz+x!$$XsxG5-rPZ2VGxf$)2*TOi z@+0(@Y-g0RqdC$WqRNhjWWADJGtMV$OC7?>6aAUckg#NxVs3uXoVMJT%G=V3e5K;m zm8f3n9&!C)B?K;B@RlyBCuvKCb z-7`dv_yFJG*`6V5Flt*<%8z<>P<$Z@S0M^l>|cry>Me^|8;WIP6w9}VF}iPAi@o_| zt+oZY9&yIWB*$a+e0#j$IuQioi=Wl2x-ozMSb@hCCwRNfUTxD0g-!h(>CRN8b;1#d zE6Rbo#aCQt&6jh7^=Q>~22}1|rCNi{j!o#Sq8yD7Jfa@_cyx|Ipdmt3Y4B+Lw^oX% zZ+?*B4nrF>NXt}_bd|0cpyvNk>574|+#RUL`RGVI;=3oD_H6t;aw5s0M8ofz*VUUQ zvS~NH@_^zWgQP2Q&n*oW=9Yd}E9w|k)TPzR2;lE()NZj6_k>~7bZYx*tkm|M9cpwK zrG`pAmC;mbL}D>QsVhU1UZI10)KZN$>{XSmW$|(rXYgz1_u(uUG+R!3#CCrws#Cto z4NJ-i7i#<_RcpC&C|#K$S5zugx&{i>jhCsFlv_+I^q4H^QDddnvODR)A@}aZB?O6j zo85(D=D1f*d|)V}yPtL0aau(jnP~MHn-uHGX4}hge!N@2z${y3>Gdarh4m*-AQTOR zluVv8-(QmM_E|cnnj=#`u;d9typ&4W)UAfnRUwp0$<$~J=wz#6pSo^m5V>?M zP2qaP1=2+dR6ExFYJ;NI#ld=uJvAVMh9E<=6)d9pLuBxOvkJYVhp-zbH43bB9^=6w zlo+$_4wi;w9Jd&Hi0O-Qi1pXg6iUQc0aSAKdry_-Th7ogBibemb zv<)MFbwOS-#t_~y2+m}LV)^x-hFW+3Y*fZtqx6i(@ZUe*vqduIg2|`QiPk7l^ST#$ z5AFDaPb%7$A4;&AX}^jd)^sWuL=Ch&0q}?~*HGdvrc>H3q^q0meF?nzg-}(Kp~RpJ zzhcrDtQAwuWiT|Q+e*>Fi9n)G13%WezEyt|NjH_s;_noH-6`2W^e0?QPAaQy7 zpX)<-_kw6n898ckMUfI~pn1|zhSE@mhN27&QyJ(x>Ba^s+*Q&o3coGV>W`wDI#C#$ zC=4V2P~=fNGz9IFM_hUg7uVVMp$xcC23)5YPE`n=33#C=UNGZ4B4$U$K0& zW!Qb!0lV)y;BE*X&m%Iv4Cx|eNUufFdXLz)TuBhE<@+nSY(03MXzNA-B1t%X(Zq=3 zRRT+;iz>)`e@hotG+LxC)92#7X>QPJ$w=|GcpNT8ZMiE@9nN_&1plQByr`6JRT=Q{PzI!{O(@H{R8fP{>lLXCob%;;tula> zC#4Fh%798>sdR;fR0gEmB^tfr6NN(CjE=JUvY<51Mn(bSUVmw~p^34be#OLy{49m*5$~5S5uwsP zNxDR2YFa2dOx&YXjBW^OAC<;0<)?#%^3(09Tq*;Y)4!=pX%GIh^j7WvdA_-xKbPL- zkq{--|045WdExds@3sfztSjIjTHJ~|@eqy66gxK5kqwvRc|`WNz>aL^LtY90LZ@i8 zPMkL{CV7>b{4S{!NzC{Eot_V=^xRWP z$D658R#ZCCre9ikKPK||D3)mle2p>h;l!2)F;!BHPqn(vtl!<8ToxiEmu<4|u+vO2 z@PiH&GyG;*CEdtE(S0i2$g*=Gp`P;R&8h;*ltOS7eZwV}l5I_$LF{*B#lD+_F8DZAZHV^ns!enFWaw3F;~cSL}pZt{JWwW?>{GEYhe zSp(zLI;>JM_`g_XSlw3P#Fq!ih4R%4vQ^$1?6=BS0al4=&?<$nN?{#V*)!c=dZzlU zvg$&$y*X|WeomXwj8V;kTf)QSi#@%YWv>53{rBSVI`(WN^onuN^I~d5f-4tSA+hG5{6WNwdq(# z0eRP_UTR|+!Q9EDarM?5tt60IqtS-A8B}x9q?$9(t8@bHg?R-PCutC)n+I=0KH8er zlj+i^*r`S#HqL+HRF?_Noq-M|dA!Dv*RaunoYFRjskQPdHSs?PI|5;fEVd3=F?Gv&y3W2oS0!w2trW6#3#wDj za{lg>?YXLf|30Hks+gTcw`cnP{~&9iEQ^y``7Lz_v;GHRp(@2T)FJB?m8`&Vbg19m zrHrk9d6t&U+UWbst!9r3x?qr&%xG=mUVhf9_Jdb`gTzZqV(F;T=~9*Ujdw50OK28s zys(_{h+8iQt`bJ@dsnrrr)I5rHqgg@@IG0O648YV^@bUoGqi??6#x3pF7NX~Jg4=Y z2QSO5yFB+72h`cHa{n-{9QQ0P0SgfD%>ZS{L9UpV@Xx6i0Os9yyFw}V`QPxCEolN| z6s$0b6()IA#PQZEc0C%OT(KH$>1WR=uhcb4(mktA(V_u*+)ASezN;a()Lim`273J> z?=z2<7IJ%usg9+X#h7*TF+i4&<_*IC5HX5zg$EQ$_VIHNt z#ambR=ag5585mqH{?!1ZU_*j!XGR+|Gd$vz^K>r`x#nAoEn-Ln{k z;&V;G+NJ{ne0=I-RoXBddpm<;Z)Y?Hi*!Jz90&wtvn$?^cwAX{ zzh8}!j8DDYg!5#4Q>p>$YyPua>PV~skystu;hxZ*#o?W^v}AX;FQa14lf@oLRcy#n ze%S1ErPJ1XXtisK%AeW{x#ssUwh1FwP-s8(ZA$m~kjqZ~NVzmQrQh4I#Z}rD4 zG_WOOIiKTRX~`zese36Y<6b#C-W8l^QUs(=kM!x!dcUNL#Hm{a{^3sjWLVxF!gCW!aES)ZF?0pI7XZcR6MrR4I@yw#@f z{{G5RpFI0(Xi*}T|LCpGV^h2`=9OEe1Xcb_1;;2?Y1HV9{(&1lYGwLud46jaA8u*a zw6|AmEdP+DO}}ydRatg>$+=BPktAenO<&ncLFGq9dc$%%_DhPr2CG&5E5_@_>?U1)+EDW6&7_(> z#_Emdy(B$zg$pj%Ezb*c&ZDzu z;bs`A9uIZ+rfL+;U+s#Z?TUPV`* zu{j>s??o39gDxZnUC297{irm~*@fvRJ^(cbA6mJW(G7(6A4|gD`})Cv^_KS1ie)?_ zt+|aqi;bIS`(a`4XO;hC))^W=Q6K*18S2B|nbTbF5f6S}4HqD-otw`FgZLirw&R|; zSMk52DQ?hE$EH&^iR)RvryPq7SUp`2Rn|+YtW&Ad_Kf1-dhiT&lMl}cDB_&hNwIH( zOVewn)8c&KaH*)bTndhrSslxzkA)V(xP>t8nKE*C(jYSEj1v(zg>k>{$LMBZAaw&i z{Vo`xsy0pUP>qkO&ISopXKT>0$TJmOQ$NW+K*}#uwmlq&8w(pXXZ!LAL*0Q8?-3{0 zn|E^7>CfTX0q)#z6{Mw|;4Mo7z9$~3CGTV21? z`UUoa_18~~L@!R0^Yl+_53HT1bD`s0NyU7XL!@t+lBeU!C{Lf79gwHu{r!|-bwhPI zkAHPt`{;|OU5<9r;414JBV?WPh}TamWBhhf3=y;O>4Bg4{p%v@aiGuTA6nOjZ}(m^ zu3=Z(@M*N!BXEYcB!~4`JI86!OGs`3XR-v|fR$otfuv`^^%O(r@DlLr(F6=O-pk7DZ1$@~kt}ml|wYgEKgr1eqbMR^Ta#ehdAmp?K ziq7JneXkGqS1&nXjZZswJr$w1_q7`xW3a_UKOJk2*hHY0szNhVhrmr6OgXMdDW8o3 zx-i9G{(nDZ#XZi{xU@fQMI4c{BtvA&v*^DK{@S3`9f2R9OdGE?gz3@ne0;@6aFS)5%zw#^^YCL==!wuKVfut zL;VGixBwDwoK)KUj;CDqx!6fRlZD``@n-zriGI_UnDBe_c)tj(^x@$Qh{%A5(vwOH z@%Kq;AsWr3>9G}0t$2FiBvl={Q~H;a)p&Y+h9ZZ5`h(W>6w8FEjJTl>X{(;@(N!Jo zw|m6KU(!__t-n+k`s_YRJ#T2J-Fm8bdd1bMbBR6WqB-`Y(=iS!aI)*@NvJUtYADk{ zMjCZtH_(208{ZJ2xI7p{$|$X1W6>X8tLuhQ8g1FCnF=q>A+4@CD`Le8mnA93L(0p8 zgz|Fbb!>(k?=Rtc$%ItI9+pfvVn*O#zH1-V5DL9!L#^mb5_K*`@ zQYsJoMx76AKd<)Y^&9Kku9h+dyKm2{v*Kv)f14FUp-f$yCeyr1Eh~jff^veBymsg`Axu=-vl{Z`F_^ceV*#AGIfK7cJUjt+ZckpDbc~akv?~1Des+D+*cBvtR6%z+=k{Tbu3z+_dlb<&pXfY@&hw^(&L?@q zbRjU858lJ4W{1|(pADiYxq03w(*mMg>Wk7@sHCP4Q5FV7*{@cVW;k2a$1WPGwpUFx zT%Cm_%BxiG6HeUHq*UAcp;UjAmHM_!lnJr+}6f&2v)X|w8nHX5a zZ>RM+>{{JUyAbm2*j3&1PFDJ><-6vDj+EO~ip;+XW;u`5>hsI&yxnTgueGwD@wlQA zEOcDyeI7qfz0V|mWlk4ww-P83M^ywy+-Lv6ZpNvwz`X*GsU-gKqmudI$0_qW#MpQ`O_bE;zoGIjQi0hO~hSiDPhWH!54d~XI|HX>)$k5`E(B< z`kMbZ7$cqohs6Og`Lcgk6YS&khVfqi-wT`K4toR12i=AnA_WS_KruQ&*6hbv_uV%W zA{en1|KXNS+yW7U6p_C2h8wV;wEQiO=pSv!l|EB@2*zq9I@)meHe?eAx5A0I6;6yd z(BZ<#UT&tHJ`P~>g;|d<>k$T@arW|-N+CA-LgX| zgmfXK3nA$Xls`Yk|M^j5yN6O-4&`wT9@mJ+B>g{njPIY@@hrFPXkrP~n9)9kk}GhpVnw`xw*0StN|r8L<)jzk;32}KA`E7)5|2K#Km{QV zA6gg)nX}L0LO8^^2ObBk?oJsWTXFYIWy(RHm#e=7 znx0Z}L60vS1fIMq>aIM);*a+pFs}ZYCnLr_h3bIuprCS=%s*HTiiQnI0bdJUAUy>wT^MaiZ-hVAkX=y8-O8uJoq1N{(;=a+6Thwq6F^~jEp zX5QJ~52_JeZbgugTR}&96hBDou}baph`Wv{&GxxtRMK$kjH-3p8_lUlZVg!>#%qQC z+iS0?eGsh_sD>Kv7Lp8Um`!Dh|1`U4WP;ZSqmIcfdC}>>mV9nB4Z`Z#OLX>0>Jd2B zE2o`T&YD_sVx!d~E82qAs(~$NTc5=DolMkW)1s$;3)<<j6HST3=YC*$-+?7s*;a3|H$tfKr;898t`fTbC^f+}RM~r!n&6^m{LKTS zdmY0cjmhMA4nrU(PPyz=MdS~s#U^M)P290-Mnq;QqRNR18|Q0|D!#Zkj=B)hnrEKG zkWQI48Zfd_!s0SmNO1lXDU4+B;Ublcp+}Vg&77muJU{=;0LcP+M_-4@{+#41;pc5@ zp&H}RD2X2VM^CIfM8N%N`OoDC8>($|2>_fgNlN7SY~WF)vh+Jjm1V#)R9Te$kfGgJ z2df(6)LGv-)fi{RL~>Zu=x&(7j6rIHDn)e3AeiRPoX*Zno~Jc9{gT$8BYD4nyuMSO^omhw_vJr=u54^VlOgUuq7fDWX29;CAv(! zaXpp}JgPZav1SzhanNn`z{=DA);R$4w0*n?EL>R*|Am4`nXD zZ%1!V{z(s=xCVy$*6vuvIMv=GHu_R~=SpOc93nIOm{R_rwBdjurFl7AElC|4)o_|D!T-n2CPTzz(1X(5%# z+w>=tgP8t}NVG9KtCL(IHXU|4`rw4%c}$X5LDy9m@MTJzsgP^L(Zi%->636SbjCd+ zEF*Sg$e~HQkGw@0CnSg8qZA|@DD81eU3EU_95`sf%@uq3vd@+6oizO*ht=65>RWYe z$VuA;M*Mt)k{axtk#wRS5C>JD(`!%qyCr|qphFe&=IdtiGQgAH0iOI0xS1X@Yc5=^Vn3xz+?3{y5{afQg7%YJOQlRCEKlhbk)q*sm>k_7v zdz=;j8E3_R-i|Us9v-DM%T9NE{0}_&q#)KQ4k<&oUk;I#u1{!jA}@^1#~4oZ=1 zzL_RlO~cUsD0O}ZK3MHhH$USd8tA!;l4)$?6R=s{im17-_N1vtgujt#X#BAuxmL<) zcjU2fIq79M&k+L$FT4-fq(LdqLdvs{a`B+j>T0Ew-;I?2sFzdzctFa>+?Mhrr2KF| z!+T8cpFi>K)-|hV%#{#egCwsF7RS`K!500$w?VtQY%t1egYiBaJnFSU0c=nJ8$9E) z!SaJt-2OKnw>@}maP+1+_cL#^fdw{rB)|rv{=E&HkEzRn#cP8b_tv&S`P zLLPrG7jbLiMKs7h3oJfBrC|9JSipb;poV#)YxAI4w^(8R;_5@b%Y0WL^ z`0sP@>X^C{80Af1Z&d<~NT3l3jP)h(DJg*|NMH|d0zdvUFo71Ql0bI*82Hgb0}_a9 z*6K}Q#+ci3klovw`=!IbPvDe)NZ^{bat?0z&Yy!RNMH&QnERcQgNMJP94vX95#Q?| z=U}^93AF815@^|e6bW4ZmpTVu=dbLoF9&ZX-IhSZzSi8+ssuLFA011o)efQhg?JOk zen*$GQ8$!9@t{7-Qu1P_h)58DIHfwN>_&=8>d0}HQ4JQC)I|e+K|+Z`;}ZQ+)uf9 zD47v6!{wwlSCT5F^yqCVbs?p%|EX?i-^A|Xdc6cpKuTS=rF6O~rFA;2RQ{?{qi=Um z-$f~wD%4!8G~hX%LW#@At^g>B?YZT=P};v^dxE@2JgJ~sBJWXY&7nld#~bAvW-G-v(bG%8~sy_;g@_D6MfLe2wcfan@IMsQ>5B|G5Y;Wp7u9Y=wHs0O@kNy^MfD`2dW#=( zpuVWKjFingmtT7zV(vdDfBDGUo7aL?axvTYjbh<4Xi^4E4u7Lq`06*5=o@1^;ys7e z*?z1owIlUxV@crOI?#sO*7o1Gi;+kQZBe4d!M)zaK^lZ5d)0gzYSQ_=(qgqDi`)8# zj<@Z}YUx`xRt8hmBc#JNkzSd-Ad_w?-BKL5Ks216f3Uv8HoGC_V7r!8q4J9Q@B3oi zXFa76jHuxcAB^i?13T7S8iPjVMgIj$zrw0^BplLe zI6Z#rtJqy3xUM#;3Oh}zn(yi%tb#)l-{%81R5dNQvYRb1rnH? z3=^)9>>aSePtO)@$Hm1rX87-N%&H0&vQ&}Ew+vFWT2-`pdlkp-(Y-cATRM7<-i%8$ zo`=Z0^2xbJca-^)Qii0Isie|EC&@f(G)DPc70dQ2u8NQLx*&Ah=r{-^Lks-n!#%nC zx66V%s|43TaE(fEIX1v3!ap$j?G(3H>6oVPt%mGp(F^$Zh$Ob5;uKqPRyoCq-G(h{ zuhY}Q5TojB3x?NBwW9ja6_6HGp*U3)s%#&JXF*;x+ofhRpE^S)F7@X-d z3cW5fAVN5_kKeJE6(lQ2YqfL>`Q9J zmPOY zy(v!NFMQu~WGd85z3dUM`R@pTlA&xh6xZgvd@5RfD%yN1(h*YinXa+?Gp_oYhQdd9 zi>r0>-sbn(0;pi4_4#rRBS`CgB4b?KK!5O%R{HxU9 zJhR7%m#2>$sJGZ@yNZ}cZFb#NlHNC~T9;=Z^sCc+4-I~3IM;tqxt(by4j$PYBC%VK zKYXkk*Q8bIuG9i$;MLGsyH^tHE;)IuoN-@#ZNag2SjSOrXLXIRdW|oJOOueWU(j0r z0w;WtVhxr`6DJj?qo4k_;`D#w-aag<^G^7`@5yn55ph67M8uIyaKchMvaA8DfYbgj#frLoKz$Q0wCoO9&C7#IlxJ*Rq7V)UbwHP-=)F zNLWIML3}>v42Umj)4hJb>w5n9^0~kF`}?`i_nbMr<#ogF_`da3SJQZKEj-RO= zdBE;TGmZ9o#~}+suN@QZ8sR(9?*Wvd3Zd_Ci{2)I6LIr%p0=! zJL(nxfW554+qQK)lTzw6cih$!%1DPY(!1ZEI1e3te}Jic{QK7~44=5Mhktrwq2Kz0 zD)$E_jyl&aoIas;YlMCJ8P_G7XHFcK)DQl8@LjoON0(bCzsmbf556xhx5u9Gb@d*v zzRCW~nP0^mad&odb7RC&lS%zRk@^~ZQa?W%>z{b92V;EWM6>!E)n*v z&Cor{N_T#xA;xM**~yEya|v-CVeK&;L4V`*oaXzrAse1PzQ;CB4p}KfR?3hWuD9*G zTHBV;wv6B2IAk+CZdOW`rn(C`vY}y&oc1HB+BNHQ9c0^sPj%Z$= z_|1(Ynk|jrV%s@?pK}xs{O0CSjJ=`Z-}Yu?(|xzCg9}5`oC7q*C&j1PxK!lbRIz!+ z|INB6(+aqDVf8JQyfR~QbpBQ)r>HL}XW75^r@6K>HzfJC_grJ{%*#}&(${f~cIIP+hoxmdg2bBR~Gz^LGYy4}5*&Yubk+oj#MVfUEuT(QWDb8`Rt% zxs&f4ztN^W|Cs!8PV=p?Z5KY&qDS62@hGCK^43HLZ%uUJeJzb;GR>Rn3*LMLB%tz! z`;-7yVCijXf3Br9jHlIA&9fK&+1r+VTfCRFc>Mtr^=iAVUaN0Q^OTmReKO5>y;j{; zudtibs^-h@Yl#nEPh7U|5BqL>t<(7c$?xWbr2DRxZco6q3r*!Weu>Z-U%4&*Y%Ts) z;&)w-KTmyc)R~~q_0|b-&Hi@RyqWE{`G0Kh?wT|6*lqrQuut!vV>@u0|IvDNVgyof z$WLysXxVM?-_+u}6aV-(#Lv4e{%czNVK!HpQe*!`x5u26+v04};+(VpynFVX=-Wbn zpoN~Wcb}g*C*-!!`?b&-HPq&JTj+PS&^-&(Ukd(o_pNhSxh?)|E&kR8>}@~4HTGvN zw~m3(Vn0pWw7B;7&rh5A;cc-l**`iz=jngH&AU2SV~2LI-^;4@nAy;`vC z-);*&rUl>q4Xu3rwzvnhxHGY!jBvRg>F?&AwD#SJ3-*Wasu%2YTqM-`g!OzqHhv|W z{PD$K``noIo@*CIj@@{5`PsCI#DD7|sP6Ti_c(2-ycDl(7wQJPe5&(G9sjQLhZd*C z^S1k6)Z3n!_P@DKpIZ{K$D_N{dJN35kce~>HwGLLgEORLa6$d!bKpoRTn(#(@`S=XI%*?G^W zV;biEqh?RJ13QpC{ga^BZ_d$pQ;x=)a;zlB%JCdM$?>0^IjR|+`(({u$CIMu4F=WEzV=ua7_G;(za_xLxPPom+V4024GdslIcqv$)&A$f3*?)-x zf#%$LVrHR?H->ofqS{0%7k)1}?#8!+ygC+^@y)QX$-ce*TAO;#58)lNZ|)Q8O--=g z*o3*%f3giBwBeD-HthX$t-g=3>AP$nTNY@ue9pUWpR3hO*pVQxxej1+9r&t}b}vq1 z2Z=(D()4qSu@8D5dY`86U2H@bR9JkjR&e)X7j!RlFHPURc;dSV z_R+rJr2~sa_rPL)yQU3BKzE_wjQ72W?sCDW>vyLd;RVAZ6GOl+O02GF*!dUp|DqP# zQ$Jf0J=yE7yjmE~Qi;E83|ac|pRc(vCP|kKNR0KLFaG)3#HyIRgB{Ik3}J3uxD<|k z<8xNP=k~78Li7WRrJAo#zuD|`8XwYT#*Tk)7)iM|(IurgqUpY^iL4W6#FYM^#K{V% zU%R`$xQ?in@g%B~M0E_bz_}#7DfENy8bj1d{2r>6c!o;kQHi|IBfAfL&d;bmx1Z~e zvZW95-#-T@hx{Zxc=B_8u{&lw>Y>>)pBytXX_D_*x`6*;KxikS|2SqkxlB2gj_0F1yE%&>=#H2%R++ar9m-bm>^c41&LV&vb%E2_F62 zUUS(;uTUpt(B6vE4X4|nz3;M*%?qd3p!yP{`lhjJX&t*-Nb>(#_6It_k5E5CPhC|X zC8?p8ua*(ov+Ovb7D6qA9=$qYkM6pv9`paW>>WZw2@NH*`s##9`43lX2tBc^iqHr` zBL=U{yYRECs?k`@`uNo*g6o&PPH;5A(S!EN0Uv!l&iFz5F`P*_lLqab10}v~3;E^d zLiK(8Yx=eZOPr5&Vj9{DKlcv1eS2_j1Rguu8m2b8i0iY`-qgTb_Sa{rz4i03iEYMh z&}YIKG#I$(nUD7{`+!q>=j@jUrQYoeChiyZlCM_lO*loW^0E%MRPm;S9wYI&2Ra4bms#OdPhS zj>hYYaTX8T8%6{5RXD4L?L9;ow^w>y4Y4{K<*|eR;`Ai{i%Lvf#qRBH8J39p-9jGq z-96!N-+YySpRKh{y}B8A>NEL?)jRksK{Y#_Gyloo*Q$o8uWFV~{_<=oT-N2+nr8|^e=ZwAAKiX*SYX@ ze;F|0TrSNM&g|>XclXF*8RLws_VX*oi0;fU`Ty%*Vnq|`US*+}Mo~$n{`5}~-T8#& zf4QJrXVl@p{4VwROc=jL=Tb{Z@t2NFoeWzuo}YSl(5j*ST1t&mNgU+D!@{|d@e3r; zM9z+Xa^XZ5K?ghI&t&d9T^>95$G8u@7$4EyK-z{c9b-CaGI!ucE|`S#g&!W+i!Sn6 z|4-^?e+CF0_|g%1hfLKQM|k;uL_1r=e#O-PYVtx8Kf-1?qF%Z^1J$!dI(oXM8v@m{ zMG<I&d&S^()*Yqs& zMCa6pPn82YTNiV%YhgpB`d!=}+&v3NGb);I*TQuD*Kpm+r^e#S;Vo~h|A3)GP+L@(6z zW`3OIyofu>+~ih$Ga=2R4xi~V$X0okt>WrrGdl?D7~O&G;OjB1B)1^i496X2KT?WO~;a_+4y*IYJ!3&6E6K0K?F?AdN=(`hh z#hY2J_d2r{v^Tg$xb&dje8LaOm&)%z!8h7cf7h^PR%+ca5{qy{SV+iFy=TkLoTw7Fcn9} zSHvjp(eV`_EQW4jajpmjw_0$HL^^%XCuj$tL>Ut?dFVl3(eAbJty9$pg&BHWbT`vvj z4VvyVUtKRP=q;LVoUg8zF7z%ImhOlOzQtp&wE4gS-^?uqWZ)z{nROF-0{yWpO5nJgSfX3A*2b1pkvyf{ha;h!fQRxeqgFB7u6OgQSiWVX$Z`R-?NUSUkQO%~@B z#*EuMzMd?&E#vDc7QFd~b`GVpXs6p*wBzI~xz^|`Lfv|t1vr*?%iwWewWr5@bG+s9#m)lMt;?CSx^+48 zRnt3jRns_|Gjqq6ju+kK?A^1ak9jibUr*o&pUsKH*?vd%Y`Jtim3sPf7O1xJ*7T0n z*|PNSi&@|^nSZU1wCZaZzZ&7_^^y7dlZ@XC;^a*J@0Y#CDBB0}b>TZ9SS zr0GF()h!|%JzUcR=BisnJbJvQ`_5Ijh&1#xP4}FuZV`Ftd75sRt8Njc=%t#jo68ol zs=E@8O3mYnuewFlq1S2pps%_`oJ2pV>6d)fEus^>Q`67;s$0YW`hcdN^_|!v9BICC zx7pdd9y=N;i(PzKc23>6!)U$2zuXGdaca{!{O8KZiE&szS1vQ9;Gd#%vF^}rQ`6AW zG>vl`?rfc-SxvD^$0x3I4mUp;uCK$tPUnd8liqRR%-rzt)ewO@Vth43;f@+#4bixx z$5%rv?%46w5RW^4d^IHEPP8~`{bY>3jk4Nw+Gx2cY~ae|Xc_O|*nEdNTI=Viqh&$2 zX!_bY>S#rwM``-%IqGO7p(km2+#GeZGSM?Nefb=9vt~2C?F=z@A%;*bXUCcOGG@xCBD+T&a-Ljh3)6FH)K5;C z@F_H6iaKT5XRA{t5j|1UTV|_MhL05?YIyT(b;=Z>7ioIqY<0?%qnB%X-E4KrRHIjG zdi88|$~2)jX?oRcZOXLc(XM$^%vPri|I!9g3)nSVoid~7qnchiTb(jSDs0rN;YG96 zDPu-AYkL0d8>h@G6Tfrh28E*uv5*Uu3!Rq?^}nC0{{CeIAQyJs5TKpM@NdvN(ig}W z_mg_|Lw#g-vPFkDnifbeeJA0addJxXGBltMcc1>=Zqro0(LGgMsF|%keo{XvLG`9m zy{QgsfDF|q;ZBM zAMa7?)-{h?3b&8uvUd_U)WzX%mI?Y4+$k>go6T~I)bDa}?cU{5KYW+m>ZWf;X?LkF z2$2`{dM{VkZZFsRjDMD`p87;rb~o4hWwFwvi|h*G%oj8jO_bfHi0!hr`yU!Y4VRZ^As4GuxWVabO^4s+HT-97koG3|c;r6WQ&>YZuNKI^1fg z*p$jFQ2hsT)VSP41gL3?SS>}YLzgt8J(gHgt*$9<(82Qn>kWB1^HIzE>vpSL?+ zdb{*4aG~P83mpFOa(}4WtaOW-ZOW5sHFRhbRZ;yXnw4%z6%Te7T3ivwNW2U)s42!P zvh-ouY)Q9FCGBK)Iy*8#>(raNGcbXh&_YTnw5-}O)g(klb$sQu3*zdA9rwF^HCx?G zt#9+di4T+H&x`CXoHy8rIhC(xQg@mU0;shjWJUHHJ`nUMRRQM>p4@$O9%>aRII z8l5^l(B~2L+j2Sg)9`_uAJ=5?`7CD*XIo<$W9E~{*-W*G&T&o^kMOkwXT|FK6J&w3 z1qYN@mcQNcw$Iy1Z*#5;Fz!gI^?5x#dYRvI)@>LCos&YXfnF;|9Zq$a)3iykg7E2x zIw_tIHtW>!6r&4t-J=VpYAMv1qYK!g7CgbU8DZc?c{G-T~nsxbPOeO z(`gNu-fazVm{!T9s}l`;&Czf?MV;B=ynU(=eN)t|?!{N#o1CF)#_V)c)j6t#!10g^ z&rh8wFqTTL+Tq4uN6ji}@=r8m)vDD~^XF!6>UR#^@Ae71qqBOB{#7!~|6A5f_G%f- z6e%2^BK7-M%WA35GZ?z_4E0G#(oO1%=DBqj&2wZt!cj7P75nQd$KFTe5`8KDrSlwT zACZUjnFdY}hWhPmWQ5K;%-nXg>*z1vShqu@-;ttE`OD+R?l7~XCt2>)caU?3!IA%{ z+-5GsU1$*Esh`CEM7rGJH9d2R$&iT++HH6?hY+$XG&lm+%0OF_!L_@Icb|laCT6G? zPXkEXWblZ3&{~`#U8nfnYfXqAc+y4xV0RsH>kJEOzk0?sli03T$*YRIsti6M{J$vD z)sgPiH7ohS)GkBx>+HD(*AV0C9cvzb-6iosaveCTmNvztrWbA}W~V!TzgB+7yUQ@G zyUXyj^|xuuyGINneM+bv*1JC@tuk?hxiPXp?_%-u4q2sbTFd^fO)FLC*;Bt1Vb&>b z?q2FG-{fF8cBV+{w+&!diuAr=0C%sG7Tez*^HlLg;}ol#HIafdWtdg(=6XxPse)O> ze68aD@D5@6nPpX3%Yd?sSAjO^gxcfMy_wIZp#_3iOo?=zsF}HGp77_ zMxzV9X?;2R*U503*d(;Q$u&jYor*1jO_gmHd&@)#BTw?l;+uLdRjAdkqxu)PkW4HH z_4j|P_%*M&Tgdy}O1yL?CFOpaGXp1SVT7N*_U zIIbJ&7ND+ub-#Z?%nEUCH=_&G44fN?dhKy;9%@?W>fHUf^zjQ0aPC${x9NT_T%Rw_ z?sbGdF2j5$W4QX=+{XHCkISw*+#}3F-C05;*R2S%Blk%e7F!xLwYxM(-Cbr_)lZap zjE`rS`hS&)9ogL!q(hv0(iu-5>t|C;-T8!hio2~#t#=q^8dr1=c}zzfBTur{m1%s^ zY+8M2x@?kquW8u7rqy40N^(!sv4sDf(A}}bu|88aM-1I?g&pDw%Z*up`cgbMX942E zRi-)C94!t<4jMm@!(4N_hY8Xa#3R2TN5%#j9QjST%vQgiIG)SRx&Hbaa&>fUkW1nw z^Z9PiHPwbhjsEhCntFwn*KAh6G2y}lahA@8{*ddA7hR`&P1I8Bq4AnJlCxyc(gC&B z0qXP{cX6wRF{v2CSV$2u*Z`pw8V`tjyot2aL*Tc!8pwfDv=uft`dEOZYu z`&i$r4Y686T-Dw8*mmhte`urhm21?ip^--flMC5so;XXW{u5^jqgh>X%?wO)P{NK# zw>$h;4{QZ$N;STE(MaX`uC8`dq5*LPY?8_P7E-hXIf^#PweE>#?k&t*qRiZ1m>mO~ zq{+LT@OCXnou67l2YN@4BQRHn**djpYv}F_QctYDM)kSwLg;CXnpmY)G=1kqR zk}JW=NH<0M@<4*N^3{i$7qn*W z&v5)HSI$nb&>a@D%MR8yM;-OQSz7V2npfFfc0A8|n(Kze2cKZG`hPjpv!l+mip<-C z^4?UNX0(5w#!f@j#%m2<{;V|988`XmJuCh6ZYwYpuW;-ke7xi8o1f)C?PBpTHpp&^ zhr>T##_Gd8T)M+O9NGEYUxa(O;;uiKFW2hy|KK6I|G~rIZj(v+Fx+7tj!YX*Kgaz` zY?vv=-KTA`cEVj!DEEEar6uM?j*nqxaU}bwi#ml$UzE-IFtg@fy;Y8myX%u)l9}>` zYmlS0h%KXt$`pCj8(x+^QeRA!i#;5cZF0N56nCkIqj4LpFC`N0bK9hOd8NlI@3?kX zdI-Vi?|qSC{Fctky7eXzTpl=U7uF3c`Jxq}OP44MJ)h+*0ky&`?}U8L^vsPDop#~X9_ z)k(L*R3gKTy(H-Mn8LyRQ(T|Yy(K(v_>82VdDQPLkttH|y!h9Tye1oTEroUNBq3{vK?}-v<@(H z2UrQIA=1s=Pkqm62%jO%M~~Kv)*CbhS0ApvAjev}JpOINx@?!+dgExF+9j8br*Yl| zs28qVZmj}emr10Fm^daDzs|!deYDxNJKF3pR>-AudP4XD;=~V_YY-HOMif1v!iKBEyJszYv~?30Z`MBQZ!4vL4ArwjyQ7-ut;j zs>X2yIfdXPaxEEmEZ@k4@;Fl0HBh@>LfNC8rc>_HA7hmmIFG}49iBcq7n0U>;l zKqM52MBn`jy}W~|NlbNFT(#nDEJBucKJRN-o_s@ z5`sh^aY!<1ZUSt?iVwv%X30Z`MBQZ!4vL4ArwjyQ7UZfg1 zf}BKbXZX{D3?gC$Gam6nf{-v|Ig*H^BH2g*Qi|+B4j_k-X5=)|h4dq%h#`&{j|3v2 zNF)-EtVJ@BEl6=3#tP25C2x=B61dKNA69V`nc)Ath6Wc92>i(cm16o$v0-zcMix7x#-d*_H)GWDVqWk zge*m3kTpmKvIQwY_Iz4@eo%T!TXH|M;quL*8~5w^jA=a{w(J|?-I#6*;fIm(Z;5wf z8r-(q3cn@7|F7Y(w=}f)GP}@?1!mk9;pXrg=ehoQMqVlovRd$NHfxcw7bgs7v7QoA{P}Hq}Yz^MGhgykXGaz(vOTG z?$f03M;1+U#Er>wo{F0kW+VzpLyFw$mtB*qb&K>yDZG(DWC^kyS&ghmHY3}R-N=6A zu(AHQ)V0b*2|iM!B00!bWGAu@;nA)*j+{o$BZG);PW`bvbZ1!(bEUX~82qI0MS_r} zNDQ(D$w0OsCCDDX`V&)hV{!?fj}-pMB4im7hpa`ikOE{ovKKjo97CRXJpCDy)e*1P z&2fCsMdw=Y=b}?|wxGM{Tr;Bs+YpsU#;NLRm@2BDs+Zp&zPLR@qzGFqMHOPet#a@N zT@6!3^;5%};e^yImiLH+Few_AI;9*Q8kcZ5p{s7yU)8g2kTpx|&lz+(eSE9|I+2ak zAQNttj;?7sA4lb#Iqa0UMz4LyDzlC&e z(T*64E^tbdgE{Pw3w5&{H5Q%XDC5tRq;e@PUiWm-Mf}8Z#G<>~c2qx?ty#ZAy^BK!xNB#R#DI@ zu1Kr;Aq`ti!&ZAjZx{%J6q{JR6vr|=;$Q+yh3nyFxCNHL?Qk#L2Wio2TD1BEJO$~& z)%4)%emJOzf7J=`uX^YWePIw>1ed``m;hJ9^)SPRV+)P~xE=0<``~_f7#@MAU@JTa z&%;4DtcWB%Cp`o7h5m3641tkwIb03bzzmoL3*c6`6Yhrlq3s}!BRG!1R(KkohZo^6 zyrPIl3_?8O4*g*O41r7Fau@^Gz_l<7=D@9R8{7@|z=QA*JO+=$)9?(u$T9ShOE|9J zF{X$$?wk}nVE_z-OW;x%1LNRYmFl zKk$U!FpvYl4}x$k#bX(ag9$Jdu7{i97FYte!@Y1Htc8c+33v*gh38;D98^TIj>Ehj zdP83r1Q)?&FcK!f)rwe`zyV;L>R1mm2!P2dx4;6p9qxqt;C^@*9)YJ|D?A6!!$CN# zh)4B8JZgZx&>t>>AutjyhpXWlcmy7UwpJXcah!)2;V`_Sh_!1tv9E<$Fb8gh+u&}v zhjNXHdq4pz`gJgtcAzn33vvcg_mGI>;JJa?pJk+ zNb!W;Fc1d8rEnRHg9$Jdu7{i97FYte!@Y1Htc8c+33v*gh38;D9At=f46z=1LtnTI zMza3b1>sl(x4;6p9qxqt;C^@*9)YJ|D?A6!D^Y9`ZhF9E#kc!NW7BV+hk(;7~+!U?Ijcr11 zY*!?=oH8k1kt>!6xgrXpuSkFeumtXf`{0m}ae76@c|jjV+8)Xi@}X^te5f2&@OD)r zugo^X)38I44`&GZa5mfycPVmZgpe!aUEZ3L2lmm!P4uv>g|3aKYiZfTMUa-RWQlW)CpK4<@M6wzp z!(jxBQB4t$gG(d_m&o-n1Lnd!xD{@LWpEc{Sx2(0BdcKzWN}2YI3iEN7I+4pg*}kB z!XjCPk*q=tn&Li15w`o>ad_h42ThP=ejm&HzAzXLm%|vC2$NtcTo1EhE@YYB$1=UI z6qdm~a4$RntKnhDws0ROtNS=v-FF(EfnBhNjqSdE9D{g_ax4{!h%!KT=mY&=APj;W z?V>o^MMXmPi>P>*2-m_?mkuVmX%Ooy3pGu#4;U@>GvyPy5+{z_=$ z@Ol3s9JR0!Ho;S{6?VW*coANLLvTb9%XOH&^w0>spg#E&%$%C7xuwnctsHpDndNy0zIKOw3%?2aV&x%FdRm}7#IhWU@}|}Ghi;v zgInP?SO#~&y>K6_hBfdAJO)p~7I+4pg*~tr4#Hv9KjnxRMG-OX&=dMW6AXfjU>FRC z%V7*mgh?41_^26o$b_xE#jAM7S2F!c3SAx4;5e3`^l|xCd6j1F#kzX8nJ^2}d(* zg{NUB?1GnIKOBLhiip(<5o>^6&<6&MzU#!-kz5!?=U!U|Xk55hyR0XD)D@Dyx^9q>H72nXO09OD6jP7!f#&Rv#<4D0H4Q9a{m=6nK3EU3LVFla|55hXw0FT2Huno4ubMQRu zg9Gpi98<(YEm;hv|(38k0a{5-2o*LK7%7fkIbO=t>G* zNtr7tbEOHI;SqQYCc$L59%jH?m zqlh$jo>6$hP#6YJ!B#i|M-}nJ7!QDSidb)f!H{{eo_VpJ2Cb(->(9aSig+?jh$qt( z@zh0L2fPGFG1Ci0Y|sg@LC+H2unb2e%!B!m-rUfmh%Dw&7V{{xiHADPig<>2&k!%0 zie*!=?8ESgA~wbgu`y8*o6?2Yl!;D38!0G<6_T?VQt=!ro_l~%sfHb}6ViZZZM5Lo zSR4%MW-||bEQ-j3d2n+vdMP^0gU@*j@tm(Bo@Zh{&&1r)%fp5~MZ7=(FHk_fo~Mxp zMf|Wwh#&SUqJW+#peJmkvyrZlp)HJ3#EbOEi}c7##IwCb#3EWyL<@?^pqLDb8QWsB zB3>oIt0X8%;fY2XWGqV<%h&b`@!CN}lp1(k=8n#adW{uT>VxiwPK92hLZyM|L5ld1 zBE*ke6!E&B5U-oydYAz#Si-MYDq=SU@2240Ow`>>)ZMM{v?3ggy@RoLWWX$V2A)+! zIV-F@MG-%tqCcUcKWTw&ir7O>?x81tx?6~!?omVqV_cz!i7*M`U!nR_;R-7Jvs#w$ z&ko}lgu{yX`5Ga9z83C<`xH@W<+)oZY=$Ql@kWvmZzMw|(LSMweN=EC72MYc2Ndz< z2_fD*rHHC9p8JI>Vt+Ufg(F}t%!B2y0>|*`DdkIIs zA`a7Khv~AzrLYWk!5&4_FA<`CDJ+7;umg7TQO#hU*;|PhM7%|?0B(h+;Thsth!+eu z!!7U>Y$csP=>p(RxSRFgK!OGmyhlslqowcV!F)v=p(l>e6Gy4>QEJ@C4%WyH_CAy7 zeJ0T{y7CxZ`Rg-6{Q9gSnudACdqok)jl2NhrHJ2<-*3o|sUw;h0`=92W`^vy%&Ffp zr+&K`+O{a-L<(;nq$%QeW+8rOfxWO#5hoeLlZ@f1Z9MQTf&1WoMYPhzt#t7RgnvNz zX$n3~!Kctqp|{f2t#tJVhY3HTi2tGj|3w8(p`Su;WoTL%nh%;-{~t6H!9WCeMf{$s z{{AEp5{Zz6-iF=|yI_wZT8P&|yg!^2;twt8$>=GNcrC>H&p;vmGl&Y&^3$~ZKdaCW zkY6hKt%q4K2Qp_`nKK`hu>L>Tu86ic-j_&#rLYV##%+x8>2@;eP{bd7h4`btBF@ml zGqkWHgvZ}Y6!G6w^uMX-N7+Jrl&gpyD%wLuFJ9r1?wBGzrr?h$_~Uc%ydrvu-%ETx z$RK(NzvRXGzvQEczBRn3u~reE#R~CRydpmL6ykGlMGVpPLv;NR6&j*KUn~;hix9XS z?o`AmLp91!ecVR@17u8ry%hKfJ@5%Va4CTN1Ia&w{IkfPaz3M+&rRfSCSThwGA_q) z5ndwWa584Y_@V+79Y?u!VVJR$w6|jv-(Sf3@85%CFCGoB5uSl(;Sd~A z#ASx!GDC6M3PT}t!L$M`Pgu zSgnW=dTu0~^*_Q8j4%WvjO7Sp`Bk_OUq!$&xC{2cUPW9X!4l{Y?uqHVGYDcCeOeDIHX8jl90M&xC@rUDtG|a!3Nk2PeP1t zHeCk}3er)KZU~Mj@(xAFJ6xa_^nqq*fuS%AM!{&}7ZJZ0y#~EbkqQ-1sKAt9A*Wa& z#oDvU{VG7KI*)U(&yK<+7Ubqh)hnV}O_d*Pr?ruW58(|m>hsiKSku$I}&TxbD&{@?btJhNZ9^R=@+W8aBX2H(oWO zun`Iy#gASy(rcdN;Yl8z42LJfF*8-jnd=pPtuEy3J&N@45&R+nCc-3`2Ge0KOn@b{zJ{pfZ-CY&D=&Mz2RVK|I{u`nJo z9DXS<6K2DFSO`mD8LWVnP| zKV9oj%l&Eje4~)_y&w~EJ`-}j6^6nH7zIf`pY-!nU>eMZxv&rx!7{iDR>CUAe|`;) zIy{$SV0nCMf7TBi9 zJIzAgX;GxPN=WkoMJ^5&alQ9I$76!0jI z3?9vdw2%j)k_V#l(Q5P>*Z`Xpx&FM6>n|!Y{eY0^wrWLgq3gD^De{MnLjI5l1z|!K zFeeIVc>yg~=ZH-oe{F=tRi2|5c1_LSPIJ^ z4SJdIms=p^yxajh;U)5YxgWIh5F{l=EZ{Y5_a6&!%x;Q;hbC=7$? zFcWedc!%RaT?qFZOCXp1IxhQlTwLq8xW0RW+l^D)CUA8=%+>iYSK-54gb#B#K754R z1dbc^95?DyU>f9NTwlvw0$1?{uHv@$s<=Hkz-vtzFLGe|H5vb! zjDMX9sdvLXog=?m=jyQi7_(6WiS$E!5qj*t)7!w{c(5#cEKJh;!TAZf(BaLK#Tc2plGP#9+&uU z6aQ`UeVcsW^`k;2bQ<{ zQX2a+=F`uZPy0Ci?c?9kDnD;}peTcSyL7Tsz&0iG4BIf1jS&p0M6!9;N#=kHc57UT;X+%OQ2E6r< z#wF0Wgx!!~O*jN=v9|?cZwrE3;WpR-JK+!gw!k(x46k4$6c`B=m<&@O`8-EH&ymk_1$z|nL*oCC_&+Ry#jp*wW3^-&*b12W1yz_Y z55Rsn$PA}tHd1F#7;V~?exKcb>P zs)jX+*zU(q08Ef{+e!Ch=AZbn3ywUP4=Lcsy^1J{=Z6-FkcyR2u^que?65+HWJezC zfSroiY2qgfW=I8hQb9W{wbN2NU2UhU?ewUf9^GZ-2Oyzv7c7UJu#2I6eK{857%apT z_&No?PJ-7-usasRa6D{)jTnT<*g?h)FX#jPVF0XzRTzqCSvf5$uYi@X3-(|zPQhTD z2KU2*7>>g*9EZaq$f;EPG#d+YE|%nCSc=7%mR8Wx3My7X#VYWxQ2nV`1r@94g9B{$ z(QNmzke2_9mjCP|Y*EBsx_mEPzPB3Iz+Tvgp&9?5_{a-nXrCDHU zE`z%u3Em*VzAUaIIj{qEVsZAt;_L^Rly5RA-^_&BkoEi~>$%E|CE5b%;wrkhiV9az z;a||=UxdRdcmRtut7Si{TsRmfr!E-~UmB_&+W%4W`2buo}y=3zla$ z7z^VeU3!o%{Wmuu{>=#EVIpjRjaa4wuuKQSa##Twl4^#e`V#ENGR-8ny~QklD;g7Z zEKGo_AuV`|7Q8hAN3mF^W3kSJyWt+lm>*)y53$D|Vvqk-1eWY5*aVvuL9dG%8cNwHmbD}GRZLpn_9Qtwe<0oMYC%9ZraCwj(_zgYK zY{dc{3acUA(L4Z$utcX|iB5x^unU8<&4fkTjH41(L0Wc#mi;ab%XB)VXMRV|oU~w} z4u_0}aJPRz)=%>(I=z$h`poK}=!X#}~FbKQA z7TCu6|G7*rp@)P1uCPn;(g8o85e~E{QkPQAp27e)gzmUPj zY)s#|uoHH1-i+eB84asp4Tj?p49BBbDY<%n&DC?1Ys6?4q=KVVaI_NMU4^-F5$4Je z5)$!aB7VX?@Co}sUmge4d=9AVIiO}ZYEpD_ZQD3%mhi}xJ!n09PzAei1-tO42eBC+ z;tb0ue!d4gVFGr-)tK+N@tnea=QQpYr*Xe%Jb@kQ6lNRlpyzN0?Z@q)-yv)dt=J$= zD>Ckska66&#&H`Mhi!pp$&zQuGLie$#3XKz6Dx33Dst_hkZXq(nS!2zzAk{5?gAnA zlk2$QEaAqpgd5hCo5^4c+y+a?2wOtp64GrY9R;N9gu6+%i*ywb8^bzm3@ZpQPMs;Nr879DFm`=vDFmX81G?r1bXj(|kl9qAkQNtGp%)b)UvyFUO}F5;;fj2Pp?IZMk;SyE zm;!#3CghK@u_2hTAy}~~_+nFF$bNhUTY{p<+$%J!7dbJ;a9sYV42NNKhLlqFVL4l5KfoXSsE*OQ(l z`6^4YWH0ge;ZMH9k{-4cOPw-O*<-EoWHZA{YW`(F|HNgBH!8MaEGf zJ%l1XnBE>tZx5!wM+96BV_-8p37O6wW0=UPn9Y-#c``>mgP;|LQXoCzPLFt06R`%J zh33ve^YBLZg{$Ej{HdTj74+DSz7xF%y%)U_odxPXfIdXNhspN{dJ}px6<$V#*=uLy zU~`|bnFMr+2VLTk2GfbyLc}(7hQfoPaPL6xL~lhujZq(cCc0OYkY3S{F889#XJraG zD;tu27U{j$3hAAS@!uWezbEOa;7ls$g})d6vo>RMpS6XE=|s#VB4ak2F`G%vXHs)7 z=7bk>VpbvXiXf9|)>-1`5TA~+D49Ra+3GvvfX3>CIG{8Hb_=Us| zCcc$;F2r*qoM*0b7JK8YOR%2+F9Li>!1m$I_Axt!1ZiB34skiEg~#A=o)!?#mv~+# z;+x@Fc#eF$$;TI+g1pp%Xt5V9o<+P_#G6Y4=h8sGW-e`& z=*=f!KLH2P6?7L^0g1SxnhR_V*UJ>HmsBie1deijWDcxj4#Y7B;+O*|R4j#xrS!o; zt{%i+PyF>;;WjQ?2f1t=;tH{zD@2AOb3%m7u`R))2oGA8ONO~*n8_GrGDewXlsUll zFM;bHE!;o>8z^AIAy`W~3+aN%sF{pTqIaQRL~lp$KqtRV!G$UdR=`Tw02?`R(q*60Wdn=2P=!FMH9)ln zj=*EE19o!3qpLort3JXSMq%P;ux*D#5+u=@F4QsH1(j{pINZ+T? z_i1F5Mn-AJ;R#4Z)2QeZUP3(K!=>4eOS1`v!Z4T&Q(!jCg>|q2qiH5a(`?TD>3F2$ z@e~Q4BH>eIa2M9n2&|=1uoRX-T9QFap0;2$4Tfa+G#NfkPdrUeFrft#T4XXHnGDDV z!Z#4UVK>|ZNxy;g8?Hdk2wAy8WT|GgEFxqPA&be7#bkJf9(aZx$fo7lv^<*vvneo} z1lh#jD6o(!FdD`}3fxG68_&V>klDMD*_*?#=P>L!1#qh(Hc`P%RB%%YOoN-b@87gV z5xFKIa?P+3RzX^nON*Y3!V=0c>)ADMEv$kEU@z>$0!oiwBff1UWR z6aRI(e76qEsTcHt^vG^{WcLYp3Q~dHwq8u9RKP(69PES+c0xxrtbt4t2b07>LosUWxvO3l>s0SOF^`>E0mSJ_D9g zcen)>KpL=*2J9QfLMpJ7Qo%Q=;G6NR|2HZ4&0}~RhZo@`Or};$rlF87tD?)Q=<+JM zyo#=^qHBLa2EQPKU(~=lOsTAv{j8P)O;}Ewv6LFIlzPEzm<#J*1C~-RETum1|5kJd zA&upC9Ke%DSl%I&P&{~$qLOuU2t^ht9;8U|;6X|b9z1yP;6bPqDN>|Z5*8`4NbwLD zDYAqjgAA^lPSZB)X0|e8cWudJWNK#OZVpnMB~zpr^{p9fR`^@|Q|G)SC<_)vI zb+gueWZg$4&;O&&iI?(~mT9+^X^)(iGx9(lYL)&_tMo&;CAa0C{8HY?I~~&R>5zKP zKb?`Y@|W^g^7rzgH2zcLcjG#x37M9Ivh%N2c9$IN%EwZ{T?Kb9NdA zvMP_XQr%(E9TwMRULMPamg=OI>Xa-=H};2r$eI?b9eX@3y(b=fPn4W5IiLMgPK$L# zt2Hk-v{*mZV*Rc3CM$cBl?^N#`1y!d>!@^LpS!R<3+`EP&kpR_fiGO(7cQ_8(Q1v! zNjas}>IR;;fhTtKi5>kirPG?0%QENr|LeF`>x7o;rYvZ+&S|yIODpZ~YqhRwwXVsg zJk@IT{ZrpRJ(dlvRyXj>4Lq|m&+N>>kF{8TBE5MJym=4GvLf%aS|eJnKbOCdAIaZ% z{{Pl;aIWQ=)^Z(`JF+O<=~wRb>jkaXMQJC#wiAa#TCT%#NiIt}aA*hqKBDzHDhqN; z>owGRjcd8uiK?Bb8ecWOdMK;%KQepimv(>Pmv;N5=l{9q|M{jYNbiN`-V3#a9&MMF z?4XwHkW}!6f=4S_v8(cT@)LO^kL9(z(USF}cSU2-HKU_CDR1Tf{0e}-FSPu9q1Ea8w-z1PnwG73 z>%?0p-hL>5kgxZ7$I>IbkTXe zhhCDT$fkYqnfwoZ^Kh6EMj2xq=O1>?4~5Y`PBX(SbIh~AB1^Mk&bi>48}7pB ziwLnW8+{Qvh?Ag;ZhGh?Ns2Us3^B|Iql_`m1Q{loVwxFdnPZ*>7FlAM94nootE{n3 z{x6kZ2mgvb_&6729{lv9;OxOSxnT6cC)waUTUVv7N?nz@Ds@%rs?=4ft5R2`u1Z~% zx+<@_=%$BW+|8>L=`ebt`iY_^il3N&vVyB>*yn&lsvL1l zgC?h((c+v7uDMYxLX40&3A*T}hhCDTNHduAWr$%$7-fucCde?!6w}Nw$2B{n-th$n;k0bbHE{0jyx)t#||1aIpvHN=Ui~j4KCs;LX40& z3A*T}hhCDTNHfR~!;CP>7~@Qk@$~8$fkl?W=&kv;=HHrsdyO@2 z@51Q22r)w9BA0#2wvjvCR%eN|dSKuI`PwH|E}$dt>g4VGs$4 zlc0-ke9~E@mn13D3^Ei3{=>mA2uuo03QP)23QP)23QP)23QP)23QUR_7c(wqoKKbx zVx5msGcIOa%($3wvCcS)$A-h;y^aw^8DpFYGE9cq;Jqma)66g%2H^%J%51X54oBoU z;E*cYR47nnp9a_5(BzDBANZCaMo8RiE$*_uoO0pCh&+~Eq!}i|7~@RP%OIm9NioC- z-SmV(()USolU_?2moz46y`*`4E~ZbdJ{Q;L0{XJoVbHHg-??1J$$pdjP3%{=U*Ud* z`z_YLM2;0!S!3D4^K4L|$z2${--G$@FOX*+1qVV>SaZOQlKnCTDGzWC{h$PExlT~Co%5b^-hIuc z0~ZxlUDSQdHA6;7k`xbROSW>K6t^Hxid$JMNwTCrORbOc&UVLlhkjhHj*m+&%uc;w zV0k@tVEM29LFx@W-B8|lqg&mUB?;R5#TO^*|5J4>xClyqR;sKgNsjLF5Y;u$0lC%m zc@i|jb-kLtKpx(RzlEE6CS<_Pm{(ZYGdW{krkb%pARGUWk*-rS${RvTPg}Zo#DYY1 z!~(g{R;la9-y;9!4Q}<=QxYUAgVkI@Ov>j3J`jK zRH(8b&Rbt?ph~KeSZ_$T1YQ{OZAPv1LBtIgKD0Awy$S@UH zx7Vhw+q)T?R=sbUDrqaF;^0<2+O1MC-+Zy%v_&ba*S+zvry5}LHR|rY36PQ)->TD< zZ^ypAQz{GY(7&E9mGO09?CZhtU7MI+PuCLE=~`T%snRIEMUKrPpuJQcRCNJ4QaJ+t z6%`;{d9l;2R%?Zn+L zM-y8oZ_YkR&Dm$mmHP}Y94@)lAr%sI+$U)dZyJf3Ga0H+VgGy^e3)lmXrX-lF5-n_S>BaG8z=Z%T8zy=n!F3Z0R)$w`13aE*>H-;@k? zprB))P^ix)8SDf*b=-B69h?qM*Kz8m!D?Q9B1DpFJ+_!-qJbnbVWa%w8_I%do^q0+ zJYcgYC6gugdC3#|b_DhY!rHZA;X26^)+UFA>t>eNJ;lL#PKm$80aI8r$*qz}5a@o6!i7KapvyV}pjn^D(UfdVN{%Gt$o*lh_D@klMM|ce zDkEIaPb5!%P`I%mSO8w5v}oAdd;e_lykNE`I69Dr8Y{e5Y#V&7gXxg&`02oV_%$Yg{saoyw3zdyjgv^KY=bYDU{e zn0dLLbTTl{8u zu&Y{gYWb~u16i&VH7rS5^UcEE)^8g8Otp%zRr|ACk~ZwU>Y(g||L5{sj}Ttca<-W7 zg}#}*$6CkXrXtMEw`Mj|tNFNke^<4dPcmJ@`DA85x$L5oGK$n#6!}cabTqy7X3Djs zjoR2%Ek>nGbzr3p5)m!^Z*{PpQ@FDIC$h_Y@8-Q*e{bJ-t;;#V;14GJ!$I?Fq1gTZ zRbF>A_dbHHhTt4N%&END6*oZ$e@PT6qxmI0>P4GY(eBifC9NAAqk$EbwdwnK(yif@ z8AB!Q_$QJ!{!zQ*5_0a4N^0NAu=dkQvo4CS6>2y6$nHgx2S15LRJvt)sCcjH#>4aBrzfm2->7GnG$e?*7rJWr22&)|86 zcz%AcT1&*WkBIc3iCm;?Yuq!z`J|-9Kc&<(Zky=*H&rrp$771~VrSxAizV#^=pRdz z!563Y`1~=ax++{+}yt`j0N?o*z<_|BWnzC|hd zrnGVleT%7q)B8(dZQ=?tz1|f zBzut44BVu!nEEMRmOTF81gFUr2`zG&;{Z+Sfw0#6gsAmIWq-wqGGfg6&`$Up2p`P~ zr)7-(=w!T$WURY!>L`&hv`rtFuS6om1c(S-MCc;IJ;%*zv7YW8S&y)JRKX^NZgm!6 zXA!pKxLFAvJTBaELb6#G9qbo1@rx)fizLKJGcGTnS^MO-cB}v*VGwrUKgN^4WXBz+e1aFA(Jbz}a z>CYPBrNoH5xqLe;B5wln#)wE}2xdg!sM7>G5$HsqKPvDWUEtoW zh61s##}UvQW+;G?TrO;@$r zHbT`g3 z15wR6!we@sFLJ1f#8;BTl`PTY6**IC#6w4lnxTS{+x(V(zfceS67Yq!wtom$iw0!S zALT@pTTI7#Fhi-1qG2iW*+!O;_0tKT{)@7wdGmJti+2P>H7IE-9;&O8;H^`dws7|( z^a!M%Kz_;ZW;Q+edo}V;yzf*$m8waaJsmY~HPS7(!zN0Bs(F$a*&}|<3yP3Tf{w{2O z`h7d@8$k9NwuwNS^gzR+(Lbn1Kkt3B@hI}iic{T8RKGpAHOqMV{z2past4_^B47T{ z%$p4Sg`y;POE79CWm|HW+mXNfmzk?KuMTS`e>2r^>T2{r4S(9qq z>3Xz!f5z&-YRvqP%Qb+UVziy29v=UaazpDjO%JVV;yUV=T?wv>>7(plC58esTV9&f z_>2$w=^rG$SLcIkpO>_;FDbKI_fZ_J97+4m`0Cg?5lzygb-qgAtJIg2QLTE^uaeZH zD&@&m&9m-&PZ%^4gIq9ORfgHEq6S_4o5&GE-ZKo!d&z20fltzw>oE;+)`_Vl27R<{ z#>T)#r}_oiL42I5mXaD@Jb+giuI~sM0tcQUaI7w{Y1Io>4?XZ4<8tNE)>kHvL%@l3 zr)!a7*!xPIkNWb_&~-{&n{J~pEhl2yZO6bq+JE;M@(P8#rmgD8Tl*{% zBTCApSGHKn_i1N*GgN$Y)vlFRmyPC|N7stdpI+dqPy0v#^o*WH_h#JmSe;N$a*rMc z@7C!`*`>`}+<^FswWoXcA|XC$Ssn40B7VSHrDxmZ5PwlSfgjbado~rxI)qz zu2r6Fo80fv{iYV#HmNdRl14W{5AA+N5o?oODK4ja3M96sQcJ0zeR}j=gP!B<`Icg5E?>SmV&>6v84*^lJVWZB3n?<-;gzIzEY>I9^ zT28oeOsEi!oc)`lDdAQSZpA^x?@VelGAfp8^^&T5 z#`8X#J&Sg29a7dEQXK7j4dQ9rp|JM9YO{hlSuI4_H`n+)bZbudu2_Aot9XJr=|d@- zCpj*Xi+p1kokhB=v)enp#-lvc$iqJeFLBn4tqvCX%s|E)xp1gUy-U)z=2r*GgXMLG z!je{yZS`oOW~f*XQOuarRy!IPu@b3h*<)JQ_eKJ^ zl0{#2C*IwOcQ1;1*QI;+O1eW^BoUpYy_IKo9Umf|R^(mla*va=PV+IkQNv`xTPNNQ z7Eg=vihSmHH8ygMsz&wFfVh>cj?E?!Yc;W!95xHl!NZ~uohV||OVPLwnYJOu^G$hO z$W`%&nM^#)gx+DZIPE+v;#4DF+#Y+L|EghgC9am&0b}y5X?MT(=b|uXk#Gcl@kGHGY=7R-(8W&joAc=(D_f*lK66 zcMPu?w#FSC7Q=;}=yQQDj~?d`A{>Gh2M&pPOANLeANCPl>msFR=jK-}n%Y&(2`|6Z z9T*lcTBa;lA$9zt@Mpod>C;RffHFW$bQGM*yys!&Jr65$I}hyq)w?xgCG8+&OuL~5*h*UoI&=i%jK zJn_GRR~?LY9Mxg%rb8kfgv3V6ijK~~^q{+~Oi-c56rf2VEmA}+bQ31YrKXr@5;phy7+0*wi!9~p#*=rbxl4~uln zh_uZ`e%clmk~S>}__91y{u`+Lc~3hg{_$kKH&eep+0UsyN475VWjHz~7x@%_mxkA( z!$3@09@SuruEF+qL?%zvGx^n1?XJ;!Chst{p;H)qnc(P!qV-gPdrn>2wWBa67g3`R zn%-G(P`p&$5&m@W$(+IB>By8;PBDyYK^l$Yn{j+|tscGb=wvFN&Ti{~Ui6UImBdHRv@25LCfaBb!YftF4w=I=|$E2?+hQ1QG-=d5f& zFmps^4D-axN2Vy3cWZUEF;L5W_S!+lNbiv;?m-QhbdG(HImoRRqf;?Dy;CLfgP6?u zp{g1om5S1>r}qfC?}!-TEv*tINW6Zx%E#+%Z`(c9oA;1I(+QJ)#6@Y#;3?yXo2P+1 z4Lp*|Q#Mc8M?7Qzd!NDC%WoYsb$DT7Fk`jkXh2#F;q8zkaxlS}spcNBK~0!C9m&(k zBQ?HizvAxR#x_s6y?bg)LgpU{Yw1;@WC=ZPsS>tMcw1S~y|Z|`j<-owW{Db5RmR(E z-d1*X@7lOzYAS=!*wkT@gRPCih7F{`(Ps&YPP`nJt;WOEP9I!1_Ngedz(_(i1d zZ@&n?#J#O}dZad9@o-`kWl#ulje_@Z6>3a=ZqRl zqIa{%J%@?liUOloYKvQM>6Ko$Owv-GD<>(8gz`lb${$H6$G{`S(Uem5^z6n0wL0pk zNcBTMo0+1iu8?z+(xF#|?Rn+)UhPSJ(I)EYZu%FF5^5D%3*=5;-q zsmj0FAf?#V%A5VxVCI+;A;}}Alg;NcKe_x@a`~@fb?A=+X69-0b2;&Jd23Fp(GW>stdS!AJRZxsfT^>FEbO4{HDYkaaJKAFs-xtJt$1zpN5y<2tT z^M${PL>n1yBGfimPitqkaM%^+S^{z^HE+IGtUVcUc^#UQkqb6TL7)hDqY8Gno(!ZG@s zQR}jG^@hEve9))cAl^EU3H56$g_nf-DY~SdZ>E!>^BuiOv>Za^96RA_$lJt_Q4`XSu7MiN==9^x8znky(@Z4aM@?d&r zFW*<9T`G-tSWAt%=Gsc(Ie_yhh+5Ed=ASiMbw0JNA}Sb)#Gs%B@%W z_Pe1iag8G`LpT3^Gugh`FLc|hyx6aK{om@T{@;|%{n`xw*e~KQ3m*4fzS^nojoMv~ zxVtCT)vAo|lO~G4ozcRkH^~kiw-Z=zZsR8^X_s|rhYsbxiAg=-pPc<>4xO@JeEqOr z$-8WHuix>>@4_dEQ5}2fIu7(7A3G=5RnK0n$X*Kxx$yU;{hPP!9veh3{kbekm-`i(eqwN#cR4elaxO(t< zxBmLseP(U)-aZlcXRkl}np|jiE_-sC2x%Tgu__ zEu9`-+a}mu1z49)UpC7f=Q^=LRs{byW!mMPyfu`x8e=xK(>}AL{c~S60Y<)VWZpQN znRz9fq=mR9T1NR#5q$p&K zw|iY~bsbTxBZ_}VZFr?Z_~+f%>g?grEqAM12)%{SQ+0(z!BljGe6JazlZmP!BP0=h z?Kr18j{hf8Xar6a?-*~1=R@O!3SJwmmd`%|M-Bd?O$C;Kr&Xy6)Y>wp$KOruCEsYSjIP(H?m}0U=B26Q7 z8liV;=4j}+R!r!G*Ib0oB6LGf;ZQU5z~f#zjRgO%Cd!FO;k{ZJ!4Ge661*G1Gt~si zriLHVKat6JL@<#r)@f#**sh5@@jpf;9_Ab9q!VJsap9k(n#h=C^Z@{pWrQvyZHIoMA?IOyQ@54&n*wea`dptWkGCn{L<81DQr?$9$08k8%6hA zdMpuYS~!ByeJ#C^TBbF~FXPOha$%Ob<#-%)#P8Zz9?07m=eo$1Q$0cLx_j`ro_P=@p_Zm|i=FrfoE|h3e$Fhf`Hix1m(15YZdsjE_W2{;< zDWtWwPb43e1w|If7;ATB4i-S&BiJTZm0MAIey)l!l73<8+yvob1s#d z81FBwhYlf_5%_*@#3IYK<|A0z&r7$dvXfY_~)b(6rm#|&m?f!JLj7pCnXiXo(@ZnHnJ#)FOCrf zcLt$m;H|x?S^qWAy_NK;GBC5NY_4aUkth#lwlx=Yp37|O9EK1v$P`;xqGM`C)Mk<^ zyE5I)%>kWzkdJPR=?A4}R&(27k+1UD1y_w1k^|zd0!x>?ApEz1XXEsi3!4lgXZ-|p{SG`x9s;@yA z^NAVkk;}*zEZ zBf#bq;bTM$Y1KAoFh!59S)7yTK7HAYNCmuxfk#7g`Eu^itx%GW@lJ>dH&9`&;)-X!w zF#Zf3Mj~e<-wj93O|l#iWwgdO$1a8=9%Mq=Y@4wKj}=N=E;2{HT+?-IMrhxuds6sd zoZ%VMsC)$GpX{n`Vzx=_R$8b0l-e{?-nRAO0Cah9ZY z95GnkLglb!fymPX$=?In18R5FmuvL2n(f4|7sWj1WkUdIY_Da+Un};_7_FhCJumqY zox5JtpB;D$X?HQDBjy4nZHd13H*-C8+UBN|-$;}!x*qwL-W)WtCztX4C5h#m#s4Em zmKUWk^=P*zB#WoKQ+E448jLLy3|;x~UOk9-(T2h_kSHOoCo^s;t-Pe&sPFf+uea`O zefoI@UWA0S{x7@LT%IAVsbo}L)Xq{h(H~S6UE4lx{QoJZ;*;YZR`jjEqiSvHsM_WF z*54I>GIshiwnDWMIV)?A`&h$OM&f`?;7vMirHDnJGH{uWFHv&972paTCn{p=ZwG-RqcJO@gd>wzf)asyb6g8)%x2L_xCyFQg7L(cdk!%{8sh0d{6Xar3#NHHp zrn(CZ>9{4h3JmGE3D|y$9{VW+Hw1S8L;8CgI0Fpn_;>?m!oa!S2;&Hhi7+5Nzya_q zFr;G@TmXi2{2kZ_hIG6GTm*)6yd7KyhIG6Yyc-PZH~_8$d-39)%1Q^os9PmUiq~n?3Sz()3{LvZHU@Rd3q~l3o z9~jc{XmAl2((x_eZD2^p!@#@1kdChdSAiiNXM#D9AxOsqz)6zV#vg;x8%72JAU!}A z@F*~(;}q}=Fr?#_;ALP)$4$U~Fr?##;8HN8V;guk7y=*fgnAP8^9OhoSj$TY^b5#g z!}&IWDnMx<2=pT;8w7#=2O0^2Kwp9;gCI}|C?5oYwt|*{Akb!zALQi^@GW2|5CUxg zm4hJAOQ2&Q2($`hk0YnY3A7y41_Xf$Km$P#Xc1@x2m;Lo<$)m3BcO$#glKqVjubSG#h2m*}+m4hJAFiRpk<(uAPDpXXa)!ZEdZ?mK_D-v z2n4yRy}=p4T|kJJ(?FFV2y{271_Xh|g6s)oy##?qfs#NF=wG1jAP95=$PI!(*Mf3E z5XcSkfFO`}0B|}G0`>td0YRW{pp_s9)B)rNL7+=PMIZ>&98?N|Ko^6`K@i9eItGG3 zHjtwMMZ1AOC%hfVi9iVWD<}g5fvP}5KoDpjXd(y#?E%dKL7;CzD?kva473RZfwqH+ zK@jKzP$>uk1v_|gHxL4D;$^&@d}$ZxHBd4L0{sWn9Rz`11Pug1pcSAIAP7_lnhb(K zi$U{25NIA~B?tn|>X7MG{Xhu#057+JAkb9MZV&{z3v>(wfjl64Lvlhxfo=h{0YRYQ zAQuP%{S%Z8fIJ%V_y;f>1o5&OG!g`X4uB?uAkbb=J_rK+09pou zKs!MjKoID2&^8bR`WUne1cBZMRVC8?Rq3z@7=IC(UL;;_1hoM{pjSXH5CmEa$_7E8 zl^_oY0zD0y4uU{Wf);`x&|{z#APAHXT7MDkAAf)|fm?V9f$js9fgsR5ph^$~8V8ab z)awp`ZU-fSAka;qG!O(D3UY%WP!4DW2m)n-CW5^D0bUNA4}?H{K|T-!>JHijfW7Aztp02s9p)+!X7Z3UmjkI|u^Z49WpPpj^;65Cpmoln;VH zSt+!CD}fO33SJh0AW%AJCkO)d038ECpiZEqB+5vVKiKoIB<$k7aUHxp<-$OVEx<)B;;1o{q?2ZBIfftG+E z&}X0xAPBS#1wo)ZP;v`WyM;iLKrRpj8UxA!L7>|}9uNc? z0h$GZK-Ys-f*{Z}prRJEe?>aH8n}~}5HB-8RUin|8{|mF`N;xx1$75Op!T3_5Cm!i z8VQ0x%|O#Z5U4Sz00e;=fYv43t`mQN(fMHZKe|;{TS-vloVJ(?G|p)sTE*-!^TlFM zaRceN|MHDu=M~Fr+C8iE`J4R3`uxqfw&eG=#{7-19lMd*nbR7qB_VrVTQQxIwph&H zYyof4v2(GQzu5)erQ_tqV*aKIT%}`qv6#P+kSDbh-`f|9`I{tgl8&XtV*Vx#oTlTN zMaWu0|V*Vx`(kCM0vx`fH9%?5gKviP7;LvxCc-9b8Uj){e@o-F^7;7iIvrF~7EL zfyAV5%%@_HsWCHXhfkJRK$cj*CMb4)rt;mvq59@ccD{&XAlEXzw-YHlS#HR8B(kVu zq7?Nb$=>kND40)Ps}??fkya85HDQ5*0IBA_T8X&?wBN{0&sfkf%Z06`!Tc@78yiO5HSAdraM z1A;)Y$OWQscq6&qhGDyvM98g{=COA^Pt4_-ocYt3>YFCE@|c`bIHl9X`B0OSejn3` z_mx>V>*1`wPu>^{GxC1UmffFg;ds}O;D}`4IuepV1&u1PzUkXIh1DM+1XKHUo3~ZSa{{|%Hegj@X{W~;>YEXIDBp@vjpA}c-<|$ zosW~AJ7M;)Ff*30LvD#2>S^KS!^?-)%fhRGR{_su;klk5&p#oDdRut2;LU>9$HLnN zZyUV6UJKLlBr66_%As@%Zv?y%@cLPJE8(q#cbSD(0j~mHe+$p`6v{j$hcYa@S@34T z8xY}nMTJuWvjpbl)_?^BERaK2Sa>z?YTymD@bU^-l_-=$S6X-_@JiraW#J_$G^dIj zy4u1Ur$}CP989-`S-p(vXPF$zwD3kgL%sEk9Lloris2Q*8)V_lr#+m%Tn=ShcsVP` ztSjWuKPD{zzcHdItwpj z6?tZr92#ul?S{7--ajq8v=_;kFUp}ICeMreOJSD6yxwHOOZG{S9J;~6<2ayN0B@*; z$F@tg241d(=UGj$TP=r%S$HMzO5hE*@Y2?>1w3ty9JWJL^r}LpSxl1hIy+cpz|fx%wCd1 zw^?{Tcs_WeEW8SM74UAi@VdV&soh_eLw8ts3*jw&cch|KrOmK4vn|)Cc~TTg*m~(+zE3h zyt^#C+Sh3#UYA1?Exe33$Z&7Sp-C2=51tR+-4>q1Po3hIL-$yCZQddSza@tz!=wBs z>Q(S$n3G{nu>_p4iN<-89GYt36~9ffds`0OYvJX;L+$vE9Llrsw!zy5Z<>YI{aupe zT{(1LjOSIC!CVIO{uonDE+W$u$)V{Mo(G->-UAk1IlOXs;_3&}kPZPBt^;!DAq#IE zymjzqSa_B2Dg(6TGcC-Co9PX1mO~F)chqoTL@RktAl22rBXo-cHQ9`aRkwZ^dc=O@Shxep~7r&k2 zv|SE8W#Q$(%Yj#5;g!HEfmdkZIX=bHpUR=7Ixo`yTLNVa zlS5Bic+21|gZGSumsCnJmCB*z7T!pBBjK&E@OF7&?t=NOh1uqF%ID{D=s62-CA^jJ zp11JI;g!Q%Y2js;k#uEp=miVUxr17Cha6gE;kEgOIKCkhzGz{l|Bu@2e{#rY;T?l_ z4Bl!BZ{)XF@~s?NW8oFUD~7k$!khdZ8SXndw9dlo{ylZT_j2eZgJ<;rmcd*G^FNk= z(hrQse~?4}XW`9Cf|EnTk6#)a5fCU6BAmC;TuL52Lyr6~W)W}?#9NJ>#{Q~b7IrLu(Zxp;y@ZPiV zw){f>Zwt)#EljD3bgz;_#TMQyc(dSbweTw8Rl@tg!pl8K@jNJpKD6+P;1$8!X5rPs ztA+QGB9{0ZGH)STn3?-+;sdCDhq3*XRxnIBILfG!mmHcFxVf#c*AlfBydBcf~ zgBwJ2QPxlC;EkzOw8rj8mc^A2Cstpv=33(Aipk~IsOc#Q(4%Xr{k=EdxACow4P1>~ z&Dczrmfym8W@rzgJ!c8s#G>WDqguX_pkKu?UKutu=smoMqvf7deGc-#qKwsPjm6b^ z3sdMnrijxJ7ynkwF~F_t%ufHUnB8WF6*1M-b+Nel#GcC(XbLMIDSbSWwyw_P-o1}8 zQ_Z^#DI$F1d|&WVQkm;=_|mEFuV)`##y-F@d)#rc7y0dZNu zszv#M!oV7Ma~_i%dzy;ffb+fn;E4^n&q~~Rla}mfXLeK0BKU)D)sM#hl;ddpX7pZ; zZ}odQmMTp->t@)siBOyLP%m;XN5<+S*tIP|znH_TT$s>AI7BO(WYjp5m!)|la||X!?qNzq?m2;!rIM5Z)|g)rN`c%P3%ljdVMWD zaoC=7U99*Vx5ef(#ayQ;#8fP9QCBs&cKNL$4aIg%u9{oeRdv-^In{7P7(?m7E+f5v z%+7Zt$YJfzUo%1%ol14${i8XOqlqj6iyfUpNG3ZvyNYss$}CQ@V!RO(*J4_=rAKUn zJ*-Tb)?%EIv(KjHe-;i_ySGh*K+tZkV|r6<~HE8iW$?{5?GZtBUKDEm77Wss*cm9U3Jd3c# zpUJK`aveC@=$=_#B`h>sr2De!&?87rY@odUfd*~JYJtXewT9HgT1_qhDYBj(I<9nx1xcPE9fxQqr>3fINz#ff5z9x!E^*PC_d7xZqg6i@ z&o+AwH2*KGRnt*Cwd0rJW&hk-p-ad zp075KFBVsq1thQb$Wu3BK!&4XvWO~yo9)8dhu_#84xTa`SLoafS@$X2zICG4ztG>U z`bOramHdEA&Z_(-W~sY*{Zu+zDd1QrS79(_OKeyR*}LAresBn`}BGzkNM5zy0#loKYB! zJFL~OHk;Y5`t>dQp1j$WHNi<0P(u|U&RmY3X*T+2D@z;Zldpo}JhHfrCRScoxQ+5! z#6>Nl^||JF-TJsV+gcxs;^sJaaZAwq5DzJT&TQ=+9T7a|a6vG~=?|1~42z5XwEMFq zM}N62fFHGgU*n7VN))cuH>o4NqO4tzTNgDxQ9rj0)3!feJHzzT%(N{F>^k4OhvBi-T?TD?*xH zQ$~LHiso)cN9Nr+azknKnwcx~$bWz0X4e`^>zk0RxF1Q1bk5F}PVdbNYj@XJ>&$)T zWyh6GE}*Axo_QirT%#(EkcPDhn#@fN{hlb}*`rB~I*0=wUPnru!eM%k9TFYcA<^+u zGSrB9CYR%mhs?~k{ZKXOHvfrw+>Gl-WV0GGON;bNr1W>va^b(V*UjHF&4U`TRw{px z5&DjS`e~Pol83rRPY}K8h3=>rMHH+NPoSkX?1?DXTwo`)8eYH)ZRd&9N=}TVR#$Gu zxrfv;D)UPRDSKvh_nO@|`#CFBKaTKsOjWOuIO#Jt=8AezSET8#(3aSpDjA@L3{XP` zc;Szj&f@aga;k(k%8YD6|EClEpH7mp=+V~Rud|9N5`VQVTr$^a3orYlZimyKWj2Mz z>dI-3hWog-;`G8wYr!k*_)$=W5TM5W43dnr$kSrqz~t8cu+|=oM2~XZ92x@3seRAsyLM~J}X5o>W@QBD% zQt6p_>UX-nW>Tig*QKrBynvN+sXWj5UZ z&~M$59`E8MQyt!IruARTRR0%^hPzmzSLd|RlknTcQCXCOL~-0TnxLw?I9T5)Dmpu7 z^Nd2TteoRGPdl(IU((jQ#Wi zkx%Ij>%*!K13T#e9Hrij@65VDXQgpk zSclKd;^qX$gGzW_i|d}dI##?dWZ?)bJbj3j6;W`Ea_9VJ-g~b8J431ty1cMfvHkQC zf32z21sm8nWE9hloFlrCq8b&u(W)a@OUtx0sC8)iRomy|$C_J|K&k z!?RhP*?!rX`|mB{Ki6*^5>3NV{jQ+b7B-lR=2*Hb)u_L(W(C*s`Uig!UX?`>CEQ~W~Rp(Ny$)A2t}n(ZLf zwpu#>rv?~_*7kru*hlXprPfKNnC~j^T}9_q^`DY-xAxJa<_kK22h6VF<@zN`zdcqT z2WD>PMrahqH~_wFyKuH9zQ{MAZx2wPSuhOm!6*5Bz1Y$Q7kv`n&uJ8C;h z=)PITDRxJDIX1uTN=r~(X^MMc^KR1pF~3aLZ%+~#>skHwq!EvaY?HCNi9TI3UYWD7 z#iVmr6m1@jRcynzpE+wZ@Jcg72|qe6;K$z-+oBd;_ND6cjJ8T&a1bT*kAY$!<`0M& z@rSGyYx4Fp4SqB5VIXGoWQ?AiCI)e?jng*Pb5;Arw7#TGxi97cb-$T25`+i5+SUbD z7ko9)oQE{7V!lvKxOi5~B}>oZl2-U@m9uJ+X3A0ic>H2-QbeQlh_gO8Y<1R^e@nyPAC5W8 zRdQyzZf?;sQXtMf^Ic{UmUI?j)tAS-f1%R#ibdA&I$XB|QGXa9zr zF{T`jC25JL37Y>m1YKncLQd#V-Av*63v#?>jnT>?=!4S)4g3p&OgX>LjOBrKpPVHR z)Rh%mZa!O~DYFP$d=_EV1O7%Hu*jMnm6hSv2Qp&y<5P>U3k?hB&lHPWE%N#qHBCW9 zaj>txY$T@C=P4}ajGgywx4<)KwAF zozs+Q1x?R0eCj&0ZcnFGM32iW%7U$(+$MgP-IX#fHVv8>dEb@yV%dT%2$8tNB4*zK zXRQ%AP;%D#qiRN2uq(5Cd*7m*~?$McMsx-equ!WGjR zCkBsj=?ZsDSJ0Sf+vl2}oGquUnPFAvvkWKqyqJQ;j{=R{Z+S`Xjv0CMFiq!NXi8|$Ls8Kz2aAN5GV=7n zRc-%RF%-Y>b8cr--M;fs%~)glmg!N8$Jg{V%F+jW^Mk9n+P;kL?>qe^#}qno+=Eun z-f%#j**EJ+BzrQ4P`hvlwTsPFpr2{U20(9oQ z!wVM&^UcI%j^X0E$su-k*X=1*KPc`*t{Iz80Z6eV$L>Bxa@4B1949QqzWLZUpKRD* zuX&we_q{&+v_D^rPejF6ewj$F0?NuQ$u(ocTFrKGgQm?sJh=d`9AS2$@%YXD;8sQ( z#%=VUGVyQ8Vt9~rY$Vy5f@N-5eiU2Lx@JC?Ur(v~~={Py|THK;*@ znzLvS{8^c>ylsawvg#Q*HTwZ&@`_I0w219F<+;JZEOZtIirMk8krgvH8UK zf!Y(FdxF!%6ypT9-WG~J#3lU{*Rx6InKAiPx%1if4gD@7{n%FZY&-Afbjh)RhN6fI zTgjr0QqD0;F|sRX__}flrj}{Z@$H|?YU}%-M6r2#wuiN9!}0{#6M5=VN2c*RsgYVS zUG?DzU)O5Ca71iv_+m>W^L{cNvHmCFh_TA;&$aV@_(fhIpF2MbSct!m=_E(DdXVUL zm<6flfvtftyy?!H?seXz91um!@SN!K{3G2RbelztEO)+EMAA;(&m^64<9#jKRrWGm zY5ysYGs$8Rwv4$GU!+F*L+Sl|(<_XsvF^5loNlbmblZz9vnRz8{3uHW#>zzt-OjHR z@AK_@xxVnR9JnL!CYCJ0k|o`&mBkDE^r*EO->U3*{(O^W4=ds4TYJYv^q#*bpBY6T znOH0$mqqlxzpvyNt7qeQvhlgI#0IR`(Cq`PI59D1#ne4!mQePHEOEo5SJH#2Qy4_& z&Nz5$wvETSv2&r@*Qb?+FD+sRMV&KokH`e=AH75`4D7imEeI+Ui!3#}dmLnB0kO&B z&;2*MQY|%UO5c3Fed;1{wpvs!O)gO5eWzr;(7EA%dm5?yqcZJ<6z|7Uu19sNzV4h{=x(VxuaDH7 zA7YzP_>H>r={{yF5vw~dw94?$`@|~4sQwZAZvN39?BYaUEW8v8#k#^zpNF;Z=VBx! zu&CCJwS`USwaKbiM6G-Gi`*%81BlLjRv)EoRnmDT<4#PA4cNBn(bOG9w(4Vc?*7WE z$=Ay5t6JRleh(wLe%fuA^G)xVIZtEG+h;MS1anHxV$L5St2v)4U#@C)o{`a9i!~3Q z#hNv}O=~W^)IJJX#dM9t*kDeiYm|jcb4EwZn}~VMB6SXz7iza+W_`UOmb4*P3AN1) zYV`?moHgegfv2LSxi9n6 zin=8x+ZD@W7gFZbz2ZjZx&!8_Zbkw*`k`7Yeg8!{g`>PX`viUvb(a_d4*WsXU4P6B zYme7aJi(=utxLM;+>`I`-D_;Mn26SUEj9DrUKiF{Ikcuj=U2WrwTkb-SiJ|u`Fm5V z@4pvXJ&jgflmTnow?DTUqatb~DBiUxmz)_+d2?-tw47*E-HEC@QQa7gYK9(FU!wX% zQ%;5dRWs)mWs~1HuS($?m6!%Ip#HStFzE%7TP@jopB>?SSwEW zt^hYbqV)JrFYlnPMs6AVUGe7IQ=Ea`0r4AN;s?|vt>r%?hqF%4&+H_y7pez)p?ciS zo|X8iCO52&_|DwUIrBRoaikmbDyxmg=Ns_`UK9dvcP1$7YnhqX1WVn1TC zXhyy6h&~?l5qm%nmDiOz(JB?W7uu8LoE+9l%dMWe_I#eYc)29zpCU(h;&h!-4|O(t z)HtHk%F}de-d!np^?c*VFOfI7QU|<u#L(^RqdG&=7N4Z zKY(zv`C5$4sL3Ofb&~dzMd(N0h%4#E;``6vIzng5qE5^Y7P2C=>ou{B0O88X z*E-)|)DuE-Y^l4vXM$SZb8bKhh&hzH%iRecGky*!d}G#1FMcCxC4N3Q@AVFrJ@qk> zxxEt9++ND-uQ%`h`JFKdncs+-OK3ge8&PwmOczBcBhn)D>8ez}o;32@ZTQcV!rC)+ zc7`?SdV!iCTIfnA=@mgyM6{#vABoSm(=R&OGFvLGwZ_Ye&40cw=9o!c)wE;Q(_y#3kvZyR{Jub01Fpu8gfTec zezI#LVPYr9M7VTR5hut-?92#VT$`ODY1eg;9DSQ~5&vPJVfEkC@Q0v)$NQI?SA9gcZML5I;%$Kwb^T z)bwHj>1(rbZ@jY@L$=>%s-5KGK0#NO>sFCQsC|*J#?b0ZMcvq}#SMGRpiY8137SPW zX{>m6W5%9zrxB&F;>zh|K{IR)VRKwx>DHy(A-Ja-((0^odkMK?<9R2H&ehLMe$tfd z+FV@M#uUnwuSL-leTt=Di=uaZ)R1+=xDM^ahW7Y~{|!5Cj393KBup`3NO2L*WhFnl z)tyM*=@LJ=*Z*s?hdb(PQ7Bs=TWH~|b7ZhXn&NmX`8=JA@9#2G#>uZL)ID=m+u3}_ z@>rzlzR<3&H}4YL`(vZ-R1EZa+Z)BV_$z;Kw3CV2&XVI_%#nn(U*CvEQRnnh-3@Xz zc%lYBTz+{Nrbz@(L-f?P&-r}T& z(Ou#2tVQtLugu!+|GpBA9W%{Z^zZL%oesFr5?uGY^x=zFt9s+~mA9dtO_yG1q@IXN zPhaG$Ni{s0{8ceO3WNc8v=X?0RC+iH0GW+cW&$*kuw1^MnGkoyR zs1MH35so&02@^!~mwGhCNbO5@7|oyW`?}3vt4^ZNd7h)VUyawB(f1;9_Hgb)^rt7E zCMVRfZZmqJoVjW|zr{x0R4MSQBh9Dipe>HX^GaDUn;OKLi(B2@n+qCt_YP~D%FK%E zyE5V8W%qLE<9j1_8T-7}cC@t3E-3I01q7I!azBH9gM#*H9Jp85U>m*&tFQOVNvPO#PIxf+<_>c zIlo8@-olLp>z7>+W9gh-gM4CAhD{!a-?5)_98rK01${0-iRUaz{QQO4N?rVA8PY$U zvJfRA>))$~uQp~SX31UE^#})*#2KfT+L4qZ^YMT(esZX_EbOf%s#jTd& z@X|iU+re})-uc2z;~%~dj(=u~`DHaMABqVIO{bZkCWG zt*s<`INO#)o*XD8|q78ZMt&Xe_KWr79%8aux-?r*0Vhs zeYst=FWtbAvE1?P=VnD;`?>JiyOX0G5wowOPokS{lh=wNq+1*cgSa3YnfZN>V)&>r zEHrts)YsQM;}h1_vy{G-pFrk7^5-J+Eu1Xw(3lespU*`u8m&vaIV!EmYOk4Wvo%`*{>bncQ){{Y>6qZ=_cF!>$ecSuiFub233do(c9!&nQIv|r&FVL8`b8Yz5U z?Nq7oTi~ANh?<_x)v@UetxJUi#Dv`8QsIDC?lBJxij|#aI3im=J}5F3*ZA>O0bjjQ zDl(3+aA&E=I8WVUc4*Gsn0t-OK*o$dvw_LI)F?K2=$fvd-QAxl)M8$h2)7a8Lwba1 zM7UCq@aB8?F|!oO(TqXiJ*UK7B4!?KvQ~6_8zxhLB2|q17C&zqmKx~|qA?Min<7>j z&QrkcqeU|mm9W;>I`(wt={>m)Db}|2?9GxnceclKn&sD#u%&Gb)2lu!iyT`X8!^2C z($~~=^KY!x!CvPDta;93G^*L()NNGXbN+ShXPmA*%1?+WzX0Xa z$Lk6Ar`t%l_ zYNlI3B;8(hpPp`){|(EJ-FcRD+uPbmx43A!&5T%{hUIBk-Y{x;Pu=nZ%m6*Q)0%EI z?JkgR{yU9yyLD&Xblcf3mTu?Yu*i@Q?a$UdeK=ykb60+vAG|u!Rt-V-A?UvDQ!~$P z|5T*f{7FnTw39em!`|6i$As$1{%wdW|GOP zhpiTS1w`N89qqzqTMRyLe_WiKJ$1*~E&jQckz|RV#yaGaF?cctCq)e&pc{N_B0mEE zwUJmxf4p8hYnyv6!=n4qx7=Y`#-(Ln*R^I(+rOTCE6!oe{D?8@*av8)-jaS&FLepl zyv_+ZW102q?IQV}oXBvbt&x0dPS#02=f|B|8(kjx&0%jcxmjy9dZse^|AxVxbc5^KnlUJCw;KXI%_mRnnpJSD%u{O!`u6j!@~1`&D=kxwojtNn zpLXcnI2zeFA{$3!Eu)cLrAKyrJgu%W?bGuOZ;Nj;oOrkL?x$xR-u_Hf8$LFDm`_ys zMD^~+rVn?2EbLlNRNa(*pPetNJ0elpl}A21YgDg))*)?hG^&+EwUVg*6^-g)J*s|0 zwf#%w#AoMoVePGkS^xP`ahIMoz3waR(7Ey>)2=Nj+cv+~Dpp;jTwojM3}oc9`clBukQKy-e)zKlMd)D8dGY z0K3nV`!iY6-^~q&ZFp+aKbI#bPtN`xp3-JBNz->tes% z<)_mvu9PzGZW-XQ+Z)K&sX6@{LX$QpFp?P3KM}fnvs=wYUT*)c>PiOpZw5ve9r24n z{F~cE-%)h(zuhLrB1^}L-D%>?@5^t9c$P4UxKU|Z*6hwnUs&smCtK!j&Mk_${Xz$3 zuDL~QiW8gTVxxC4Mc=2H;r8LmV`crk9(45dXBW-qF<*&20Ags}*skeO3_l zna}iDf4}wk%K!6rK44KD=fa;^kLyZ^U6Cjnq8mynQbIP=YYCzOLJUzfNRSXiEFoz4 z3>spnL8b0Ws1iS~MIjz*h$YshG&P18D~QApLcP{{En4d(mTOtD*6X#F7-Fa)^8MzV zT>;IX-skzg&*ypl%{yn#%sVsh%$YOi?13^IW3zeVxZl=^U*;l{y-(cRGJBqKV5}2~ z$KZs8=I^3%$gDZgd@Oe6gP3#w+4lz=5|BJCcqdVvX zv!m6YdpA2;TsQiiQ^)+|GnM3m&~*u(Ep$545aB5`_G5OS@A%%mfBAFYM~$N1`F5f+ z_U!3CUXz&RHomj<%{OgMs%g88yV*waX{58&nK}DZNBe!CUIkJeefJ0Dbo7OahyQT< z0Qc^H$Nk9nES@9YbF;nAD%4jXb7%ECdt0;bouAK}tI4hY$=8jqo!!gZ<8D4j=B6Ej zvF9I8XY<{&s6kKR)Ugr9u|yZQ%;v|>{9||zJjOIw6>5F}O%*$FK(Vhj`(E{FZmy-+ zA3pgEuk$}?d~WQOU#ZoH`hHP=RZ?Rtp40)ks>d!W&%PA1DigZ(zRu^HeFJw(b1RuX z@?-*;K8KYB6>CpS$cs1)4zL z{LY9Ck{I@dVwA?;r6;^I<{n;%>g#NOUm2l(=^_my8Y_PF$2(m|NO2@a{q8;QcLPV> zI7Z$vV&DB$Ir*4lFO`t##@U2SH!dJ#%vaxYGxi3)yuEp}W4~j-*!#j;r(1CY-?DIa zhWc2QU#z#D^WLwh{V>RN76Z@5@I#_O=8d(h4{ZMOSFP8LQ)ZgRsp-HpuJ*cd>UVA1 z2fV*HdGvrAr!Rj!NSBMf6T_vs=BFdNm=xY0aPc@b((IM1P3DWCWrqiL?U2y}o^E{E zJ4n|XpmDD8$fU-bR_#`Hc0w$}R3a-0v1P|Cg>`yp#)=?X6tEY;X7V_O4je zw&(ufd-*er_nOzPtusu2+PhQD=<>}ju9%niMR;~FO{o?$hYdSiza7|q|EPHK!%<%` zGIpmcml?jzZg#?finl%-`{*QWpL8!fRsCN=;q@8QV}7->6&p==E+_QQd(75~38%j5 z)3a&m>V0WfoY$1B_ssXDFB}?Jp9O&f?~}gnW^H`B&*#k7$_M(L&09`5$foz8(p8T-m#ys&gh#(x_%u*P3@Bk!96UdMwT>Uy5%tyx*c?d@;5{JmP_f%yFnhx)`v zD^IQqap6K-*nDc=*LlzN8fP3(H6Hl{uY>-Z>SEtdC>*2W_wU*lzi*l`^%`+hgj8Q>eL6`TKa zyz8YAW`^bpMtvSyWx8sFFHzdY*uVZ~U(DJ6y#CwguXD&{Xp=E;pZj~-|rN{ z$;UVR)N}3aDxZnM{21BS?aXA&F@80X?5%Jf6;@voxbhpbO6DFP-!14EmHXw}T@eGU zIsTi$)}#!m)z=wgHH>jx_BUHUz-tVDW5#G-)0o>w4!Ed(?UnjO>J6LJG*GiQ|1&F-B>L!23~kg2!-^WD1? zt8W}R*z21LOo8rs%Yu~%R@^D}0_LhMo=#J~>4*!~O@3%cX@H}a+Nb8Im`?FhY&W?Sy zR5g>B)9{gom~)?9d#~c7&QYWO^`@hHE8goIJL-j-;;SqEyL0S!p1di3osruQzZv1_ z`pkC`P%lvCRNQ^`w%ZeKO25cR|HLr#IhVNWgv3>iT?dmmRwY6ft)S5`4|8dia z!Z`8c5TBu~HyQfwP3N53ryBah{&T#BW?VPanCn$7e|po&hm4c=Uq88g`>`)D^u?Rb z+i9HlQ$B`Xw?%!0K&>76EB4Ib^e!%bmBtBcIpIIP;Dkp8pFsLzBmJ{{<6QEb{>B2P z+>}1oNdGAL5BtfDojWS@rsT6KHl7>n8gWzn_l#^J$j1GXn~S|N{KlT1V5AQqeeBko z)1SU6{V*f_)jN%9RZRTr$WaGxO7r)MS%1A_)UKQ2|D)oEe;w=Ea#Q^K^~wSGGauPE zR=nhB=}@(5C|*?eQ_Pi;5$qod-#&)+fX&o{-} zDsKO;vCsVWrufTss?Go6Q12@Zo(s>yhSlNEzHqC%t znmqFO$5Z9|U*nGIA5WPx!kq(t$B=rL*T#aq?)?G$Nr2b(wX##i8`3;y=J#XonXO^2 zx|ZHj;W+hGZ;?jKtf;;?ZeE}_&q;gDyWQsZ)ZK2pcl{Iq_H{QN>t~p2yvgJ-aE(_x zAdjzE?7BJ^&A54KnrSuNrs&tcrD;AE=g0PSzW8gON7wvXdGu51bkPB`i_DejQojKU zW199h5%X)`9i)0qNj*;y+3x-K{(Ocf-ks^kf9lIt>Mu?V{u&Y=s`DUDVSEi~JsN@* z^Yi{)+sasrr!v;O-L_y(!+pMu=L+Ygh?FnR&^{d)}?OY^=Y zL&u;D9fLCLCBt5Ch9P7a*`Hy`-$Mi2`LtI%pY{^|W7wE2)OqbouPFU{q^ppRN)_tn zABzvzxN%=kc0#%>yDYvWgG~nGSjoXrZuN)U19)A{myIp=dYIS_GVfSZ&Ig=gjK((F z`ufXlYX2je=RRN9NZ)fh2UW`XrIm`NQa_z`z1bIb&9^$H@Vk~N`uveH%#{_#AHs|C z{lWQoPxcg^+f4aKH7zkMlgY9Oy~xl*r=_A-qE{Mv@U&#~8uS`N51bZ{-iY34=>F4U z&|A@44PBe&L_dpu*3f&WhCAZtdU}ZHF(SIBI!NG;LH=>dfQwUu&>iRwLq9v!jy?%} zlA*UxRgdM8(UT4R#8lr8cq>{yiX73sS$MiP`+B3|+DAcwW`pzVW#{l*{y@oQ9$0Ly zh`2mCxxbBv2l1^d22*LQJv#QUf9|u<1M6e`kQvT<&;7Yi4GPsyWB85m`Z#+uuF-k^ zp#;zRIQ&1ZqULh6wR94Ens}{d%95G~Hj4&L}YxhJPFp)o+0M(Af2% z)u0{#tjC=7nB&*rE4;$}anOjJl(;i4(bFDhK`LJVIB9g%R386M?eEN9+NL*dQ+JTn z&Jp|6itz-42nJ29i0ck=g%b>)%7>1x#qUoro@c~fi^pI7k$UT$@g65fogB4ZOWi-m zIQpGysT{qKdJU^$I2yyzPe1ql$T9d@Hb?)I`ge}Tb2Of#=Rf!TTJhFv1spw++M)W4 zqsdeI?&$pRbNBw$M%LFpcXRmN)MFe@<#6iMiY|=JBA7L`V#Fsw);xlFQ!64r3Cb=c zSV-=#e(rleyZQ4bPG6n+GN%`Fw3wqCKKDHhdgt?2jxJ4I!_iWXmU7hfxq4ixp5g5H zyn~}prM|$?^&DM4wPMF7>s)PXcs9I7y)xZrZLJTV9pv=+lCM9HUGL8?9`&ZXjojE; zKdi+jeB<3-(Nu5CZK5*=x?@wl96m0fl_lV5w(w5($%;3x+!;D}mf2T5*niBU6_>As zeTn~c44NZ4_A`3!WAxltG5yo=DgR8~Uo?mH@N+Nke8ya5{$l=}+E3dpUt&c3AS2>2 zA{ir+@2hCI8an6{-@vmu=Wq&rVfek$;yrFoao<hG(_ z`7Ci~7_9u9H?&C*d_f<51Rvq8Q+}y^*fBhqi)YbR-#_Mt3FFv-CwsnoV zcn)K>FtvBK_r4*m@$n3U_=>b^8P;@y>G2i2uFbZ(3A*DeEPb=BH3VzoD>4YS5^RmH zc!OX!!S48qYXpN57_A8}r^(sYB!Wo^FTYMOk6>QH%U5NDwTxg{f*v7dsQF#TTznvq(q0 zSt)fL^y7W&{tsae;m6WDnH0?u`hVl6mNf(a@Tb1bB1h->QrY;pJ>N-ZNObFdNUHI( z$6J~Cy18_A>*mi_)k|T#jPsfLiNP1okFA3`y_HT6N~F0G_2412fVbAkLu9cvH__tB zP1Fw$ku$8Ngi90kahl9>l~d>PMD?x3VF_LP$2z*03AW6zGt?_NQfVA<^9j@Jr}vTO zlW7U0R%eK8(RnG}c(2+2+$eQC!BfSNs>G|L`;PCc)#oMcAf5HBu+HKnXK^UwPjb#y zQ%KkTtNJIJ9Az~R=_7{9P+vHvKU|kHRF=s=-}%CSEh~{~>RFwrU$e^5j#|RCiFbM| zb_-Umzejz;FNWXCaxvyeW1>E3n2Z_kJs&srsx`_78a_U-ti|-4@JUZ|-lh5r7hN_Qb`SHhO_07X&l(jaAzq6E7cX+srmDUcF zjwG{nf~RBL^#0ayJir>~0cE}aJ*stL&|?f;yGON7I(oXH_c~SU*M}ZoOxO46$}`3GG^=JH8hJ2(I{U@s{Hp;V_qvcXfKH;Z-MB+cIj~T+xPw)Rl?w0 z4<@P=#4o3)zw(zlomWw&>-lyWnRSD8{DAhxl5WhYIT7!t`KqShf@OCKb-$)&lj%au zJ^K>})UMkubFE#}qHDV8H<8K06PeuaH_iuf>IYRfoViQ+O)`42p`W@-`Asf*uAv{l zOZiO^dXb?YzDxPddi3>%-h7wxn`-oGLvOfC`OO~mJ%+yfF8s#jIYh)EBjSy_l;514@ev?%?Vv{0%l~5DRja@F;KwID z1~y_s>d0vG0^z6Tv@Ej7O4ip0$nh@I*L)rm;~&c6-OX`#GJ89HzO~`QeND7%OM+_I z!Dooh1>dF&htjL6y@6#Oa#?Wt=trA$}(LkbWXiMvohKzN&?4{7Uk#d`NfP zCWBH2ALqwm5%tx+_Anb&HMMW|OwFdfTq1kbceKsNvc?Q6*7|wGTD|l(8Fl?H+g;sP zelAK}t59zn_!-}wG|y9C@Xq3_ zEJ|K&3ubv^=Aq)ViO)9T?Ljkm#qA3VQojQ2<Y05*aQx~2;yZcd#*TfGBFq%}k}-00(ib&u5=QyrO{07bZyIH4 z$|y6HerSvgj?Tk^Ji`KCJ13-GHY~V2$(M5E#xBDG?|GwxHzs7v zAV-y}88&j2YxVXZ84?l9f#9`i8&BD=?%6l;VdhuHQ~N`D_*fZj zttDLhke)qOW?Q=$hg}bOFA6icD9jviQJBF+VTPJ>cTF@d3h2p({`y4YqJW-j=-Vb5 z7X|bpL*G2nxG12nH}nk?jf(<$wV|(>Xj~M~_Za%BiCh%sdJYkB$cR`r(YPp}w;TGB ziN-|%z01%SPBbnG7_7}y2F{;oTollQ3_W9_@1meLjguwTERJN&)RS+Q5w4gN)nB9w5bcSwX24)+d;NWzicA>kzKG=>B} zeJ4C=ZI3ZjVhG2qjoChMsAz&69m+yF?=zM=;n}=`Y%F*FHf09o`pw}#HI7U()Hr(L zV>OPMQU=tYM9dYBp}>(SR6 z`nIs^!^G*3fv#4Lw9e+&o_#)VE9z6;Ce7Bpsd1mXtQyzsTXSL>+|V;Gn+;vZhN{^m zgByCzp!1tNPWFxWG92vQjEk>ltQ_5RnvomTmF0iO z--2nTOJQ2NdTZp9k4$r(yna@{IeONeGT45jk$Tyk(rN9cS-NNI2kw+vR{l`1$NsSH z2$8F-;SWns_`~{+5Lw`g!(rpRjvr4r-s|{Dgp<6EpG-K}>-Z^zQ@oC!N;uW)`00ex z4acA1$t0Y)wrJ2GP}d8yEM>bH!q30e>FH8^VHR!ng;}&2HjCElzbWV2%_7tsVHTi= zg~~{8tZGJYY)+`0evesznq$nI)f{8ytIjubRp*%18MX0K{q0~mM(+xhL81NUe)$=C zazR~Wy`ZTxfoOdKu zA2CrT`Z^+GqMYXFA-*To=GBca#HY;B zr$xxov$OEsEbn;8CYW&cNVssVzCD8dwmizp zn`3s@jx=W7wEpg@q3oJDs(FL%RNd8t-elPs=JEO ziw*sdLv>d}I=~1Key^Gi0I8@`+epFd7OAe_4%3!%4aU3Uo`Yp6O_-`NN-D5$Cph|J`;={Z0JiSD4%hn zI}Lr|1m!bH=t+h?e}eLvO!Q1c&zNBNOg<6$M#St1%4gi@ZbP3wLHSH2dZnRHo1lEA z2EE46Cr?m5(}><^=ur~}`pmuG_TA|Y5iBU?vY?pDa$=J2PF3Az#Cyhva{%c)Jm7$_ zs3JafuAX_foG~JME>q&%L{ITr3!>NFEd#BE950-!AHG{o3MnOAIyb>nPr7>Y$}v7P zpgy02c^qq;tMj$PN!BjHU32w$P8ph9ycXAAE3?zGMd$HwhJv9dctSJyeoBV=?Bi?U z5uT1~>I*}W#6@PPy|%wasQqU%XJ-a2ouMCe%JISG*&A7ww31f}M^Z8pRQ|~3d*rw% zU-r3Vm7Bqq)*THy?G*^FrXIfMaZ29xQ}pC}Si`O-ZheNHe~(NZQA4hCU)%rdfLk_hje`qh(xfDz}uWYLni7xSa{t z(9~=7zwi55D3yGaNK7;Tz`lcU$D=c7{TIT7|F@YPWOh@-u?G9T5Psiqk)szMjqud61A4iU8;%gW z|E)m*`})o7Aw>@#!*<+0F2ug?{rcneqBDGm&EFCjfX)U@rbJYqKS=&zM*h_eZ~O9h zc?(b}xn$lWG2n=yGF(ro=WvL-Ii~Y?Uu(PJe9tlxzp|+U{u>@Y&FJKKc?5;D?_GV zB=tq3DMpc{*Ou@TW^XVU|VH2ewnTNB^Xn^XMY$m>?7JRrA_&=t-_~PpU`H|8<*8+b~Oyk9n1%W{T$%5v&1-!Du2t%pz!<wth)h&Efh6PxYbGbRrt=sg!q{Cu$uH$;YPOpDPjvrs}>I{$jRrk|={4YHP zua0r%a1UJY>M*At|Lfh)$cX6$uO@n`+$x<)!4Pz-qwZI81P)Go!K*4Qj_y|H?qKD) zgO#T(*ItoAs$tII+5S+^&6myrd71gB9KSrT8uF^~=B3J4d8yR;seBnbE^@imgE(e+ zqL$x^{D2j5A+LQEy7j2Va$JOS`4#>s_*_0I>|D-;OsEChuZQwV0}D3ut%m})P1Vz_ zFI_BOpQP$pwpNvs{j^!rGRimWsp5V0EL)o+9`aPL9ggTJOJt0nI>T$(h9$Bkylm|- za(a*lOJ@73+{QTLjaDAizAK*Py^m^2A*VN834XoHH6# z&CL3!x|ltjBOc=$a;63JS=|E#a;0?bac`;K@^;(XL2qZi?dRFUtEHK{gI>-{o)-Lq za}DoMm>!{Quo@+)zEpjjYk0&gj^BzXk60jF&SBm&O5MECf$u2WRLW8}t6frH7ro}D zl%UE|swv$qV>`_k!kZ)tTZ<#V{c*4pmw4 zMaBiHW6h%~W4`D$OgX4=1bUBjE+6JAFa<;AZuIAWU3*?S#wRaWvRj#_@)w<%!|vMk zfd7Au@uk)ipO?8`H(*+xmyx)G+v^T>SD%+Vr8R#6_umWZcK$&6Gkll(dy<#y2bQsS za-@(IZlQj8nVf7*B|dez9`%CUWzAl|cEp0ZGcPdrjczSz}|0+Ba#k`>nF6icT}cjF0ex78LNJUV*r_M!f_1x|B5xS)UheA)bz zBdpvod@5p`L;XhtKFIj*Z+iXQ52bV3SI=)bVkm!Mb1r!>ik(*f;Wy@yzDkC>zAleX z8dWaoxrL zn;6Bd_XYVf!{fafmAb!Zcvn05$a0T)#lv7H!TprA7wk{GqNp=G>vqHH~>>qnX~CeHU*c z2@&+NGdVUGPiJOP^B4D5!7K48f3vmBCfCc{GG<(VlHtLF>s@z>*8zr(Xe$wFvWb>l z$J!WoYh+CL&Xbj5(@`|*!QDWP|y7A@GX0gSuR8xBVN8iTT zn`EfP*8a*jP}^V8n=55Y{CfWMvhUiueziKGY_<9U4om6PqVsb`H;+|}G;AZR_9HDL z%Ktuwfn%K?q91%&MkanyE@PY{D96lYaIWutL9Y6w&2sYW{(SB}+t;T`%n^TiR-HY| z$ZHJa{D81A49wEGYCSxB^+Vtg4^m#tQV%o}2}Dm>{}@+M@;e?6+9{Ju_tYQ!>(7^zH!YX%A`F;Ix5MXjjwoL zBh|Tec~p+>Ur`KPPw2Tnk(DD_OM;yHc1JtIqla@vsk3fnwLVYvc@2HrKQYym_@Swe zQSrX6s-e$$5=s{Yu1njP=szTw@y*nx&Q$5uH86(-i<-SkpZ7!bO|S5fCzvyW*XiA_ z$oV5;UX1s|yvRqJU&Oc<_3SF?7#+&-P$Nf6uqq)OJ$#+Mxk|>kBG;)Q#}m$VYQJfm zUES~bI>O-*cBKi9GXVX~vqLF4^!Y@8Em(C+nlY29w^}=m*8?0_8$|v=>w12s&Na)b zCwymgKy*ZOGM3s9|NNZ!2^EXA8#7zBAmDyI2Uz zTehE!WYKdEBPVw;4@VY{OnS`ukY^=lu3T(kkz)JF5EeNz(EN~*Npqqf@|1G4bg_Qq zEtwf#xwz>qKTqZ2vC$>-V*dJvzL)>f*O$y|L$f?PnACSHzMn^*|8|WZdIeAXNf2+E z-x921wqN6VN{%}g*X7pAane`8(zp8+eaCJYXWvOKI~Nb-Cgv?dZ!OllcJpSy+noFM z;=0lA$ZTmfS4VZldt{)+8pD(k!)Vwm(<0PJZD&N9H)igq`GpB?XO2`AuP(4EhV^Yg zoeYVJi?_=HUHn( zr0;zgUNOYM_N(78|6%Ic;5ysjqP-=X3#@n5y{Z1QeR5=MzY*%1t7>U3fv3Dx{IkZl z)J$yluj*UX$7-HTr4>`x>6iA&xbbFK&5=U_*Khv5_{m>p%l@yn<4l9hxWSIy*KV*QW4{dhC+w)(wqI&;e!;67 z=Oud5*Qphv1?mh%)jU?GS}!i3QPS5br#BlVo$lwE7>$z8#o`~^`#P^S^Nt(Cp}Qp9 zX@5E9-2Of_bgbTm%I0@vsWGC|x`rG2g=Wk5aDq9a2CsMYUGK`#k;PShp5m&sjmK!Q5Ni`_+m}<)c<(b*~?gJn`OBd03ZM#h|$L0%NtkB^2cLRv!$(Tg1Q;D1PSrNz64LrO4UU*D|rYzj6ePw_y8+o|Gc66Khp7w z`S!D)(#socL%9-}D{BAzn)!C-TU)NJqTOb*`>HZ`emlFqV8lf#w#!nbI8T_7`&m4%zv?ZM+C#=HNYB z^}2bk-f>7~SiRx6-|}q8T>FOj*1ijWD|bsG_wByAyKBG0SP<)BzmqNYz~v8e+h_3v zE+3jVOx*xp{T+QCxSVzG^17HKa+`D(V_z}$V(OLCn5@Z1H<7UVx$uwZH3#H;eDQKP4S|G@{+zn}3y z`ols@|NbN1aNW9FEf@S;0W*aNL7d1mBn6p=q+<-azV+gDJu#P7pYQbRpLe|5-weL&A~CND`8UWFt$E zVq_h%1$iCWgES+p$Z3Rk9>rC}Hd~0%NGKAG#3QqjEMyVFtBPXHZ1#{V32aAdkpsvP z

    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 tEBQFIH# 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 diff --git a/slsDetectorServers/mythen3DetectorServer/bin/mythen3DetectorServer_developer b/slsDetectorServers/mythen3DetectorServer/bin/mythen3DetectorServer_developer index b46500b1dd8535945bcdcad0bef5b603c3e25817..d63d03585474bce4f27f95458cf8e01426038338 100755 GIT binary patch delta 38981 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 D7`n;2 delta 38781 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 sR?AHpyO8th8hHrAUfCaO

  • f=X?C7s+_cVb{NDNE8^Vn%#Y^FxW<9F8S@LcD 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