mirror of
https://github.com/slsdetectorgroup/slsDetectorPackage.git
synced 2025-06-13 21:37:13 +02:00
semaphores , no usleep in receiver
git-svn-id: file:///afs/psi.ch/project/sls_det_software/svn/slsDetectorSoftware@660 951219d9-93cf-4727-9268-0efd64621fa3
This commit is contained in:
@ -4346,7 +4346,32 @@ int multiSlsDetector::stopReceiver(){
|
||||
}
|
||||
|
||||
|
||||
slsDetectorDefs::runStatus multiSlsDetector::startReceiverReadout(){
|
||||
|
||||
runStatus s,s1;
|
||||
|
||||
if (thisMultiDetector->masterPosition>=0)
|
||||
if (detectors[thisMultiDetector->masterPosition]){
|
||||
s = detectors[thisMultiDetector->masterPosition]->startReceiverReadout();
|
||||
if(detectors[thisMultiDetector->masterPosition]->getErrorMask())
|
||||
setErrorMask(getErrorMask()|(1<<thisMultiDetector->masterPosition));
|
||||
return s;
|
||||
}
|
||||
|
||||
if (detectors[0]) s=detectors[0]->startReceiverReadout();
|
||||
|
||||
for (int i=0; i<thisMultiDetector->numberOfDetectors; i++) {
|
||||
s1=detectors[i]->startReceiverReadout();
|
||||
if(detectors[i]->getErrorMask())
|
||||
setErrorMask(getErrorMask()|(1<<i));
|
||||
if (s1==ERROR)
|
||||
s=ERROR;
|
||||
if (s1==IDLE && s!=IDLE)
|
||||
s=ERROR;
|
||||
|
||||
}
|
||||
return s;
|
||||
}
|
||||
|
||||
slsDetectorDefs::runStatus multiSlsDetector::getReceiverStatus(){
|
||||
|
||||
|
Reference in New Issue
Block a user