mirror of
https://github.com/slsdetectorgroup/slsDetectorPackage.git
synced 2025-06-07 18:40:42 +02:00
fixed segfault on loading trimbits
This commit is contained in:
parent
43012e4f28
commit
38bf540c1a
@ -6,7 +6,7 @@ Created on Tue Nov 14 16:49:07 2017
|
||||
@author: l_frojdh
|
||||
"""
|
||||
|
||||
fw_version = 22
|
||||
fw_version = 23
|
||||
detector_type = 'Eiger'
|
||||
known_hostnames = ['beb083', 'beb098']
|
||||
image_size = (512,1024) #rows, cols
|
||||
|
@ -176,7 +176,7 @@ int64_t multiSlsDetector::getId(idMode mode, int detPos) {
|
||||
return sls::minusOneIfDifferent(r);
|
||||
}
|
||||
|
||||
std::vector<int64_t> multiSlsDetector::getDetectorNumber(){
|
||||
std::vector<int64_t> multiSlsDetector::getDetectorNumber() {
|
||||
return parallelCall(&slsDetector::getId, slsDetectorDefs::DETECTOR_SERIAL_NUMBER);
|
||||
}
|
||||
|
||||
@ -849,7 +849,7 @@ multiSlsDetector::setSettings(detectorSettings isettings, int detPos) {
|
||||
return (detectorSettings)sls::minusOneIfDifferent(r);
|
||||
}
|
||||
|
||||
int multiSlsDetector::getThresholdEnergy(int detPos) {
|
||||
int multiSlsDetector::getThresholdEnergy(int detPos){
|
||||
// single
|
||||
if (detPos >= 0) {
|
||||
return detectors[detPos]->getThresholdEnergy();
|
||||
@ -863,16 +863,17 @@ int multiSlsDetector::getThresholdEnergy(int detPos) {
|
||||
return -1;
|
||||
}
|
||||
|
||||
int multiSlsDetector::setThresholdEnergy(int e_eV, detectorSettings isettings,
|
||||
int tb, int detPos) {
|
||||
int multiSlsDetector::setThresholdEnergy(int e_eV,
|
||||
detectorSettings isettings,
|
||||
int tb,
|
||||
int detPos) {
|
||||
// single
|
||||
if (detPos >= 0) {
|
||||
return detectors[detPos]->setThresholdEnergy(e_eV, isettings, tb);
|
||||
}
|
||||
|
||||
// multi
|
||||
auto r =
|
||||
parallelCall(&slsDetector::setThresholdEnergy, e_eV, isettings, tb);
|
||||
auto r = parallelCall(&slsDetector::setThresholdEnergy, e_eV, isettings, tb);
|
||||
if (sls::allEqualWithTol(r, 200)) {
|
||||
return r.front();
|
||||
}
|
||||
|
@ -1339,7 +1339,7 @@ int slsDetector::setThresholdEnergyAndSettings(int e_eV, detectorSettings isetti
|
||||
FILE_LOG(logDEBUG1) << "Settings File is " << settingsfname;
|
||||
|
||||
//read the files
|
||||
myMod = createModule(); // readSettings also checks if create module is null
|
||||
// myMod = createModule(); // readSettings also checks if create module is null
|
||||
if (nullptr == readSettingsFile(settingsfname, myMod, tb)) {
|
||||
if (myMod) {
|
||||
deleteModule(myMod);
|
||||
@ -1392,7 +1392,10 @@ int slsDetector::setThresholdEnergyAndSettings(int e_eV, detectorSettings isetti
|
||||
deleteModule(myMod2);
|
||||
return FAIL;
|
||||
}
|
||||
myMod->iodelay = myMod1->iodelay;
|
||||
// myMod = createModule();
|
||||
// myMod->iodelay = myMod1->iodelay;
|
||||
|
||||
|
||||
|
||||
//interpolate module
|
||||
myMod = interpolateTrim(myMod1, myMod2, e_eV, trim1, trim2, tb);
|
||||
@ -1404,6 +1407,7 @@ int slsDetector::setThresholdEnergyAndSettings(int e_eV, detectorSettings isetti
|
||||
return FAIL;
|
||||
}
|
||||
//interpolate tau
|
||||
myMod->iodelay = myMod1->iodelay;
|
||||
myMod->tau = linearInterpolation(e_eV, trim1, trim2, myMod1->tau, myMod2->tau);
|
||||
//printf("new tau:%d\n",tau);
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user