esrf changes: Listener, DataProcessor, DataStreamer, Fifo, ZmqSocket constructors return an exception when it fails

This commit is contained in:
2018-05-02 16:49:27 +02:00
parent fdd19bc316
commit d3a0319863
16 changed files with 120 additions and 141 deletions

View File

@ -176,7 +176,7 @@ public:
retval.append("Could not configure mac\n");
if(slsErrorMask&COULDNOT_SET_NETWORK_PARAMETER)
retval.append("Could not set network parameter. Should be valid and in proper format\n");
retval.append("Could not set network parameter.\n");
if(slsErrorMask&COULDNOT_SET_ROI)
retval.append("Could not set the exact region of interest. Verify ROI set by detector.\n");

View File

@ -6030,9 +6030,10 @@ int multiSlsDetector::createReceivingDataSockets(const bool destroy){
uint32_t portnum = 0;
sscanf(detectors[i/numSocketsPerDetector]->getClientStreamingPort().c_str(),"%d",&portnum);
portnum += (i%numSocketsPerDetector);
cout<<"ip to be set to :"<<detectors[i/numSocketsPerDetector]->getClientStreamingIP().c_str()<<endl;
//cout<<"ip to be set to :"<<detectors[i/numSocketsPerDetector]->getClientStreamingIP().c_str()<<endl;
try {
zmqSocket[i] = new ZmqSocket(detectors[i/numSocketsPerDetector]->getClientStreamingIP().c_str(), portnum);
if (zmqSocket[i]->IsError()) {
} catch(...) {
cprintf(RED, "Error: Could not create Zmq socket on port %d\n", portnum);
createReceivingDataSockets(true);
return FAIL;

View File

@ -6420,6 +6420,7 @@ string slsDetector::setReceiver(string receiverIP){
setDetectorId();
setDetectorHostname();
setUDPConnection();
//setReceiverUDPSocketBufferSize(atoi(getReceiverUDPSocketBufferSize().c_str()));
setFilePath(fileIO::getFilePath());
setFileName(fileIO::getFileName());

View File

@ -28,7 +28,7 @@ int receiverInterface::sendString(int fnum, char retval[], char arg[]){
dataSocket->ReceiveDataOnly(&ret,sizeof(ret));
if (ret==slsDetectorDefs::FAIL){
dataSocket->ReceiveDataOnly(mess,sizeof(mess));
std::cout<< "Receiver returned error: " << mess << std::endl;
cprintf(RED, "Receiver returned error: %s", mess);
}
dataSocket->ReceiveDataOnly(retval,MAX_STR_LENGTH);
@ -47,7 +47,7 @@ int receiverInterface::sendUDPDetails(int fnum, char retval[], char arg[3][MAX_S
dataSocket->ReceiveDataOnly(&ret,sizeof(ret));
if (ret==slsDetectorDefs::FAIL){
dataSocket->ReceiveDataOnly(mess,sizeof(mess));
std::cout<< "Receiver returned error: " << mess << std::endl;
cprintf(RED, "Receiver returned error: %s", mess);
}
else
dataSocket->ReceiveDataOnly(retval,MAX_STR_LENGTH);
@ -65,7 +65,7 @@ int receiverInterface::sendInt(int fnum, int &retval, int arg){
dataSocket->ReceiveDataOnly(&ret,sizeof(ret));
if (ret==slsDetectorDefs::FAIL){
dataSocket->ReceiveDataOnly(mess,sizeof(mess));
std::cout<< "Receiver returned error: " << mess << std::endl;
cprintf(RED, "Receiver returned error: %s", mess);
}
dataSocket->ReceiveDataOnly(&retval,sizeof(retval));
@ -82,7 +82,7 @@ int receiverInterface::getInt(int fnum, int &retval){
dataSocket->ReceiveDataOnly(&ret,sizeof(ret));
if (ret==slsDetectorDefs::FAIL){
dataSocket->ReceiveDataOnly(mess,sizeof(mess));
std::cout<< "Receiver returned error: " << mess << std::endl;
cprintf(RED, "Receiver returned error: %s", mess);
}
dataSocket->ReceiveDataOnly(&retval,sizeof(retval));
@ -100,7 +100,7 @@ int receiverInterface::sendInt(int fnum, int64_t &retval, int64_t arg){
dataSocket->ReceiveDataOnly(&ret,sizeof(ret));
if (ret==slsDetectorDefs::FAIL){
dataSocket->ReceiveDataOnly(mess,sizeof(mess));
std::cout<< "Receiver returned error: " << mess << std::endl;
cprintf(RED, "Receiver returned error: %s", mess);
}
dataSocket->ReceiveDataOnly(&retval,sizeof(retval));
@ -118,7 +118,7 @@ int receiverInterface::sendIntArray(int fnum, int64_t &retval, int64_t arg[2], c
dataSocket->ReceiveDataOnly(&ret,sizeof(ret));
if (ret==slsDetectorDefs::FAIL){
dataSocket->ReceiveDataOnly(mess,sizeof(messs));
std::cout<< "Receiver returned error: " << mess << std::endl;
cprintf(RED, "Receiver returned error: %s", mess);
}
dataSocket->ReceiveDataOnly(&retval,sizeof(retval));
@ -136,7 +136,7 @@ int receiverInterface::sendIntArray(int fnum, int &retval, int arg[2]){
dataSocket->ReceiveDataOnly(&ret,sizeof(ret));
if (ret==slsDetectorDefs::FAIL){
dataSocket->ReceiveDataOnly(mess,sizeof(mess));
std::cout<< "Receiver returned error: " << mess << std::endl;
cprintf(RED, "Receiver returned error: %s", mess);
}
dataSocket->ReceiveDataOnly(&retval,sizeof(retval));
@ -175,7 +175,7 @@ int receiverInterface::executeFunction(int fnum,char mess[]){
dataSocket->ReceiveDataOnly(&ret,sizeof(ret));
if (ret==slsDetectorDefs::FAIL){
dataSocket->ReceiveDataOnly(mess,MAX_STR_LENGTH);
std::cout<< "Receiver returned error: " << mess << std::endl;
cprintf(RED, "Receiver returned error: %s", mess);
}
return ret;