Merge branch 'developer' of github.com:slsdetectorgroup/slsDetectorPackage into developer

This commit is contained in:
maliakal_d 2019-04-26 16:53:35 +02:00
commit af5eb9fc12
5 changed files with 311 additions and 733 deletions

View File

@ -166,18 +166,18 @@ TEST_CASE_METHOD(MultiDetectorFixture, "Set readout flags",
CHECK((d.setReadOutFlags() & defs::NONPARALLEL)); CHECK((d.setReadOutFlags() & defs::NONPARALLEL));
} }
TEST_CASE_METHOD(MultiDetectorFixture, "Flow control and tengiga", // TEST_CASE_METHOD(MultiDetectorFixture, "Flow control and tengiga",
"[.eigerintegration][cli]") { // "[.eigerintegration][cli]") {
d.setFlowControl10G(1); // d.setFlowControl10G(1);
CHECK(d.setFlowControl10G() == 1); // CHECK(d.setFlowControl10G() == 1);
d.setFlowControl10G(0); // d.setFlowControl10G(0);
CHECK(d.setFlowControl10G() == 0); // CHECK(d.setFlowControl10G() == 0);
d.enableTenGigabitEthernet(1); // d.enableTenGigabitEthernet(1);
CHECK(d.enableTenGigabitEthernet() == 1); // CHECK(d.enableTenGigabitEthernet() == 1);
d.enableTenGigabitEthernet(0); // d.enableTenGigabitEthernet(0);
CHECK(d.enableTenGigabitEthernet() == 0); // CHECK(d.enableTenGigabitEthernet() == 0);
} // }
TEST_CASE_METHOD(MultiDetectorFixture, "activate", "[.eigerintegration][cli]") { TEST_CASE_METHOD(MultiDetectorFixture, "activate", "[.eigerintegration][cli]") {
d.activate(0); d.activate(0);

View File

@ -234,7 +234,7 @@ class multiSlsDetector : public virtual slsDetectorDefs {
* Get Receiver software version * Get Receiver software version
* @return receiver software version * @return receiver software version
*/ */
int64_t getReceiverSoftwareVersion(int detPos = -1) const; int64_t getReceiverSoftwareVersion(int detPos = -1);
std::vector<int64_t> getDetectorNumber(); std::vector<int64_t> getDetectorNumber();
/** /**

View File

@ -299,16 +299,39 @@ class slsDetector : public virtual slsDetectorDefs{
void *retval, size_t retval_size); void *retval, size_t retval_size);
template <typename Arg, typename Ret> template <typename Arg, typename Ret>
typename std::enable_if< int sendToDetector(int fnum, const Arg &args, Ret &retval);
!(std::is_pointer<Arg>::value | std::is_pointer<Ret>::value), int>::type template<typename Arg>
sendToDetector(int fnum, const Arg &args, Ret &retval); int sendToDetector(int fnum, const Arg &args, std::nullptr_t);
template<typename Ret>
int sendToDetector(int fnum, std::nullptr_t, Ret & retval);
int sendToDetector(int fnum);
int sendToDetectorStop(int fnum, const void *args, size_t args_size, int sendToDetectorStop(int fnum, const void *args, size_t args_size,
void *retval, size_t retval_size); void *retval, size_t retval_size);
int sendToDetector(int fnum);
template <typename Arg, typename Ret>
int sendToDetectorStop(int fnum, const Arg &args, Ret &retval);
template<typename Arg>
int sendToDetectorStop(int fnum, const Arg &args, std::nullptr_t);
template<typename Ret>
int sendToDetectorStop(int fnum, std::nullptr_t, Ret & retval);
int sendToDetectorStop(int fnum);
int sendToReceiver(int fnum, const void *args, size_t args_size, int sendToReceiver(int fnum, const void *args, size_t args_size,
void *retval, size_t retval_size); void *retval, size_t retval_size);
template<typename Arg, typename Ret>
int sendToReceiver(int fnum, const Arg& args, Ret& retval);
template<typename Arg>
int sendToReceiver(int fnum, const Arg& args, std::nullptr_t);
template<typename Ret>
int sendToReceiver(int fnum, std::nullptr_t, Ret& retval);
int64_t getReceiverSoftwareVersion() const; int sendToReceiver(int fnum);
int64_t getReceiverSoftwareVersion();
/** /**
* Free shared memory without creating objects * Free shared memory without creating objects
@ -1257,7 +1280,7 @@ class slsDetector : public virtual slsDetectorDefs{
* @param n is number of times to pulse * @param n is number of times to pulse
* @returns OK or FAIL * @returns OK or FAIL
*/ */
int pulseChip(int n = 0); int pulseChip(int n_pulses = 0);
/** /**
* Set/gets threshold temperature (Jungfrau) * Set/gets threshold temperature (Jungfrau)
@ -1485,7 +1508,7 @@ class slsDetector : public virtual slsDetectorDefs{
* @param f max frames per file * @param f max frames per file
* @returns max frames per file in receiver * @returns max frames per file in receiver
*/ */
int setFramesPerFile(int frames); int setFramesPerFile(int n_frames);
int getFramesPerFile() const; int getFramesPerFile() const;
@ -1844,6 +1867,8 @@ class slsDetector : public virtual slsDetectorDefs{
*/ */
int writeSettingsFile(const std::string &fname, sls_detector_module& mod); int writeSettingsFile(const std::string &fname, sls_detector_module& mod);
std::vector<std::string> getSettingsFileDacNames();
/** slsDetector Id or position in the detectors list */ /** slsDetector Id or position in the detectors list */
const int detId; const int detId;

View File

@ -200,7 +200,7 @@ int64_t multiSlsDetector::getClientSoftwareVersion() const {
return APILIB; return APILIB;
} }
int64_t multiSlsDetector::getReceiverSoftwareVersion(int detPos) const { int64_t multiSlsDetector::getReceiverSoftwareVersion(int detPos){
if (detPos >= 0) { if (detPos >= 0) {
return detectors[detPos]->getReceiverSoftwareVersion(); return detectors[detPos]->getReceiverSoftwareVersion();
} }

File diff suppressed because it is too large Load Diff