mirror of
https://github.com/slsdetectorgroup/slsDetectorPackage.git
synced 2025-05-18 10:20:41 +02:00
replacing slsDetectorMember calls with generic function
This commit is contained in:
parent
2f8c1b453e
commit
7702865409
@ -3423,6 +3423,24 @@ int multiSlsDetector::exitServer()
|
||||
return ival;
|
||||
}
|
||||
|
||||
int multiSlsDetector::callDetectorMemeber(int (slsDetector::*somefunc)(int), int value){
|
||||
int ret = -100, ret1;
|
||||
for (int idet = 0; idet < thisMultiDetector->numberOfDetectors; ++idet)
|
||||
if (detectors[idet]) {
|
||||
// ret1 = detectors[idet]->setReceiverSilentMode(i);
|
||||
ret1 = (detectors[idet]->*somefunc)(value);
|
||||
if (detectors[idet]->getErrorMask())
|
||||
setErrorMask(getErrorMask() | (1 << idet));
|
||||
if (ret == -100)
|
||||
ret = ret1;
|
||||
else if (ret != ret1)
|
||||
ret = -1;
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
||||
|
||||
string multiSlsDetector::callDetectorMemeber(string (slsDetector::*somefunc)())
|
||||
{
|
||||
string concatenatedValue, firstValue;
|
||||
@ -6252,66 +6270,22 @@ int multiSlsDetector::enableDataStreamingFromReceiver(int enable)
|
||||
|
||||
int multiSlsDetector::enableReceiverCompression(int i)
|
||||
{
|
||||
int ret = -100, ret1;
|
||||
for (int idet = 0; idet < thisMultiDetector->numberOfDetectors; ++idet)
|
||||
if (detectors[idet]) {
|
||||
ret1 = detectors[idet]->enableReceiverCompression(i);
|
||||
if (detectors[idet]->getErrorMask())
|
||||
setErrorMask(getErrorMask() | (1 << idet));
|
||||
if (ret == -100)
|
||||
ret = ret1;
|
||||
else if (ret != ret1)
|
||||
ret = -1;
|
||||
}
|
||||
return ret;
|
||||
return callDetectorMemeber(&slsDetector::enableReceiverCompression, i);
|
||||
}
|
||||
|
||||
int multiSlsDetector::enableTenGigabitEthernet(int i)
|
||||
{
|
||||
int ret = -100, ret1;
|
||||
for (int idet = 0; idet < thisMultiDetector->numberOfDetectors; ++idet)
|
||||
if (detectors[idet]) {
|
||||
ret1 = detectors[idet]->enableTenGigabitEthernet(i);
|
||||
if (detectors[idet]->getErrorMask())
|
||||
setErrorMask(getErrorMask() | (1 << idet));
|
||||
if (ret == -100)
|
||||
ret = ret1;
|
||||
else if (ret != ret1)
|
||||
ret = -1;
|
||||
}
|
||||
return ret;
|
||||
return callDetectorMemeber(&slsDetector::enableTenGigabitEthernet, i);
|
||||
}
|
||||
|
||||
int multiSlsDetector::setReceiverFifoDepth(int i)
|
||||
{
|
||||
int ret = -100, ret1;
|
||||
for (int idet = 0; idet < thisMultiDetector->numberOfDetectors; ++idet)
|
||||
if (detectors[idet]) {
|
||||
ret1 = detectors[idet]->setReceiverFifoDepth(i);
|
||||
if (detectors[idet]->getErrorMask())
|
||||
setErrorMask(getErrorMask() | (1 << idet));
|
||||
if (ret == -100)
|
||||
ret = ret1;
|
||||
else if (ret != ret1)
|
||||
ret = -1;
|
||||
}
|
||||
return ret;
|
||||
return callDetectorMemeber(&slsDetector::setReceiverFifoDepth, i);
|
||||
}
|
||||
|
||||
int multiSlsDetector::setReceiverSilentMode(int i)
|
||||
{
|
||||
int ret = -100, ret1;
|
||||
for (int idet = 0; idet < thisMultiDetector->numberOfDetectors; ++idet)
|
||||
if (detectors[idet]) {
|
||||
ret1 = detectors[idet]->setReceiverSilentMode(i);
|
||||
if (detectors[idet]->getErrorMask())
|
||||
setErrorMask(getErrorMask() | (1 << idet));
|
||||
if (ret == -100)
|
||||
ret = ret1;
|
||||
else if (ret != ret1)
|
||||
ret = -1;
|
||||
}
|
||||
return ret;
|
||||
return callDetectorMemeber(&slsDetector::setReceiverSilentMode, i);
|
||||
}
|
||||
|
||||
/** opens pattern file and sends pattern to CTB
|
||||
|
@ -1045,6 +1045,7 @@ class multiSlsDetector : public slsDetectorUtils {
|
||||
|
||||
|
||||
std::string callDetectorMemeber(std::string(slsDetector::*somefunc)());
|
||||
int callDetectorMemeber(int (slsDetector::*somefunc)(int), int value);
|
||||
|
||||
/** returns the detector trimbit/settings directory \sa sharedSlsDetector */
|
||||
std::string getSettingsDir();
|
||||
|
Loading…
x
Reference in New Issue
Block a user