mirror of
https://github.com/slsdetectorgroup/slsDetectorPackage.git
synced 2025-04-22 03:40:04 +02:00
some changes for quitting gui and continuing with acquire from command line
This commit is contained in:
parent
dc16d52d49
commit
1545d37f36
@ -5058,7 +5058,7 @@ void multiSlsDetector::startReceivingDataThread(){
|
||||
void *context;
|
||||
void *zmqsocket;
|
||||
context = zmq_ctx_new();
|
||||
zmqsocket = zmq_socket(context, ZMQ_SUB);
|
||||
zmqsocket = zmq_socket(context, ZMQ_PULL);
|
||||
zmq_connect(zmqsocket, hostname);
|
||||
cout << "ZMQ Client of " << ithread << " at " << hostname << endl;
|
||||
cprintf(BLUE,"%d Created socket\n",ithread);
|
||||
@ -5537,39 +5537,41 @@ int multiSlsDetector::enableDataStreamingFromReceiver(int enable){
|
||||
|
||||
if(enable >= 0){
|
||||
|
||||
//destroy data threads
|
||||
if(threadStarted)
|
||||
createReceivingDataThreads(true);
|
||||
if(threadStarted != enable){
|
||||
//destroy data threads
|
||||
if(threadStarted)
|
||||
createReceivingDataThreads(true);
|
||||
|
||||
//create data threads
|
||||
if(enable > 0){
|
||||
if(createReceivingDataThreads() == FAIL){
|
||||
std::cout << "Could not create data threads in client. Aborting creating data threads in receiver" << std::endl;
|
||||
//only for the first det as theres no general one
|
||||
setErrorMask(getErrorMask()|(1<<0));
|
||||
detectors[0]->setErrorMask((detectors[0]->getErrorMask())|(DATA_STREAMING));
|
||||
return -1;
|
||||
//create data threads
|
||||
if(enable > 0){
|
||||
if(createReceivingDataThreads() == FAIL){
|
||||
std::cout << "Could not create data threads in client. Aborting creating data threads in receiver" << std::endl;
|
||||
//only for the first det as theres no general one
|
||||
setErrorMask(getErrorMask()|(1<<0));
|
||||
detectors[0]->setErrorMask((detectors[0]->getErrorMask())|(DATA_STREAMING));
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
int ret=-100, ret1;
|
||||
for (int idet=0; idet<thisMultiDetector->numberOfDetectors; idet++) {
|
||||
if (detectors[idet]) {
|
||||
ret1=detectors[idet]->enableDataStreamingFromReceiver(enable);
|
||||
if(detectors[idet]->getErrorMask())
|
||||
setErrorMask(getErrorMask()|(1<<idet));
|
||||
if (ret==-100)
|
||||
ret=ret1;
|
||||
else if (ret!=ret1)
|
||||
ret=-1;
|
||||
}
|
||||
int ret=-100, ret1;
|
||||
for (int idet=0; idet<thisMultiDetector->numberOfDetectors; idet++) {
|
||||
if (detectors[idet]) {
|
||||
ret1=detectors[idet]->enableDataStreamingFromReceiver(enable);
|
||||
if(detectors[idet]->getErrorMask())
|
||||
setErrorMask(getErrorMask()|(1<<idet));
|
||||
if (ret==-100)
|
||||
ret=ret1;
|
||||
else if (ret!=ret1)
|
||||
ret=-1;
|
||||
}
|
||||
}
|
||||
|
||||
if (ret < 0)
|
||||
return -1;
|
||||
if(enable == -1)
|
||||
return threadStarted;
|
||||
else
|
||||
return (ret & threadStarted);
|
||||
return (threadStarted & ret);
|
||||
}
|
||||
|
||||
int multiSlsDetector::enableReceiverCompression(int i){
|
||||
|
@ -67,17 +67,25 @@ int slsDetectorUtils::acquire(int delflag){
|
||||
|
||||
//start data streaming threads in receiver if enabled
|
||||
ret = enableDataStreamingFromReceiver(-1);
|
||||
if(dataReady == NULL){
|
||||
cout<<"getting datastream:"<<ret<<endl;
|
||||
cout<<"result of enabledatastream:"<<enableDataStreamingFromReceiver(ret)<<endl;
|
||||
|
||||
|
||||
/*
|
||||
ret = enableDataStreamingFromReceiver(-1);
|
||||
cout<<"ret of datastream:"<<ret<<endl;
|
||||
if(dataReady == NULL){cout<<"dataready is null"<<endl;
|
||||
if(ret){
|
||||
cout << "Disabling Data Streaming from Receiver" << endl;
|
||||
enableDataStreamingFromReceiver(0); //no call back but streaming enabled, then dont stream.
|
||||
}
|
||||
}else{
|
||||
if(*threadedProcessing && (!ret || ret == -1)){
|
||||
}else{cout<<"dataeady is not nul"<<endl;
|
||||
if(*threadedProcessing && (ret <= 0)){
|
||||
cout << "Enabling Data Streaming from Receiver" << endl;
|
||||
enableDataStreamingFromReceiver(1); //call back exists, threaded but streaming disabled, then stream.
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user