From fe73e09aa492599692b4fd7f9faf98afd2d3f2c2 Mon Sep 17 00:00:00 2001 From: Dhanya Maliakal Date: Wed, 21 Jun 2017 17:05:47 +0200 Subject: [PATCH] removing unnecessary printouts, ensuring lost packets are 0xff --- .../multiSlsDetector/multiSlsDetector.cpp | 157 +++--------------- .../slsDetector/slsDetector.cpp | 46 ++++- 2 files changed, 60 insertions(+), 143 deletions(-) diff --git a/slsDetectorSoftware/multiSlsDetector/multiSlsDetector.cpp b/slsDetectorSoftware/multiSlsDetector/multiSlsDetector.cpp index 30497581b..d87899bd0 100644 --- a/slsDetectorSoftware/multiSlsDetector/multiSlsDetector.cpp +++ b/slsDetectorSoftware/multiSlsDetector/multiSlsDetector.cpp @@ -41,7 +41,9 @@ int multiSlsDetector::freeSharedMemory() { perror("shmdt failed\n"); return FAIL; } +#ifdef VERBOSE printf("Shared memory %d detached\n", shmId); +#endif // remove shared memory if (shmctl(shmId, IPC_RMID, 0) == -1) { perror("shmctl(IPC_RMID) failed\n"); @@ -414,9 +416,9 @@ int multiSlsDetector::addSlsDetector(int id, int pos) { void multiSlsDetector::updateOffsets(){ - +#ifdef VERBOSE cout << endl << "Updating Multi-Detector Offsets" << endl; - +#endif int offsetX=0, offsetY=0, numX=0, numY=0, maxX=0, maxY=0; int maxChanX = thisMultiDetector->maxNumberOfChannelsPerDetector[X]; int maxChanY = thisMultiDetector->maxNumberOfChannelsPerDetector[Y]; @@ -432,7 +434,9 @@ void multiSlsDetector::updateOffsets(){ for (int i=0; inumberOfDetectors; i++) { if (detectors[i]) { +#ifdef VERBOSE cout<<"offsetX:"<getTotalNumberOfChannels(Y) <<" maxChanY:"<getTotalNumberOfChannels(Y); maxX += detectors[i]->getMaxNumberOfChannels(X); maxY += detectors[i]->getMaxNumberOfChannels(Y); +#ifdef VERBOSE cout<<"incrementing in both direction"<getTotalNumberOfChannels(Y); numY += detectors[i]->getTotalNumberOfChannels(Y); maxY += detectors[i]->getMaxNumberOfChannels(Y); +#ifdef VERBOSE cout<<"incrementing in y direction"<getTotalNumberOfChannels(X); numX += detectors[i]->getTotalNumberOfChannels(X); maxX += detectors[i]->getMaxNumberOfChannels(X); +#ifdef VERBOSE cout<<"incrementing in x direction"<offsetX[i] = offsetX; thisMultiDetector->offsetY[i] = offsetY; +#ifdef VERBOSE cout << "Detector[" << i << "] has offsets (" << thisMultiDetector->offsetX[i] << ", " << thisMultiDetector->offsetY[i] << ")" << endl; - +#endif //offsetY has been reset sometimes and offsetX the first time, but remember the highest values if(numX > thisMultiDetector->numberOfChannel[X]) thisMultiDetector->numberOfChannel[X] = numX; @@ -490,9 +501,10 @@ void multiSlsDetector::updateOffsets(){ thisMultiDetector->maxNumberOfChannel[Y] = maxY; } } - +#ifdef VERBOSE cout << "Number of Channels in X direction:" << thisMultiDetector->numberOfChannel[X] << endl; cout << "Number of Channels in Y direction:" << thisMultiDetector->numberOfChannel[Y] << endl << endl; +#endif } string multiSlsDetector::setHostname(const char* name, int pos){ @@ -560,7 +572,6 @@ string multiSlsDetector::ssetDetectorsType(string name, int pos) { } string multiSlsDetector::getHostname(int pos) { - string s=string(""); #ifdef VERBOSE cout << "returning hostname" << pos << endl; @@ -577,8 +588,8 @@ string multiSlsDetector::getHostname(int pos) { s+=detectors[ip]->getHostname(); s+=string("+"); } - cout << s <getTotalNumberOfChannels(X); slsmaxY = detectors[0]->getTotalNumberOfChannels(Y); } + //getting multi values nx = getTotalNumberOfChannels(slsDetectorDefs::X); ny = getTotalNumberOfChannels(slsDetectorDefs::Y); @@ -5282,132 +5294,6 @@ void multiSlsDetector::readFrameFromReceiver(){ int* multiframe=new int[nel](); int nch; -/* - //left shift can be done to a maximum of 32 bits (so using 3 x 32 bits, instead of 2 x 64 bits) - volatile uint32_t dataThreadMask1 = 0x0; - volatile uint32_t dataThreadMask2 = 0x0; - volatile uint32_t dataThreadMask3 = 0x0; - if(numSockets >= 96) { - cprintf(BG_RED,"Error: Too many sockets %d for gui to process. Goodbye!", numSockets); - createReceivingDataSockets(true); - exit(EXIT_FAILURE); - } - - //wait for real time acquisition to start - bool running = true; - sem_wait(&sem_newRTAcquisition); - if(checkJoinThread()) - running = false; - - - for(int i = 0; i < numSockets; ++i) { - if(i < 32) - dataThreadMask1 |=(1<numberOfDetectors); //reset frame memory - - //get each frame - for(int isocket=0; isocket= 32) && (isocket < 64) &&((1 << (isocket-32)) & dataThreadMask2)) || //next 32 sockets - ((isocket >= 64) && ((1 << (isocket-64)) & dataThreadMask3))) { //next set of sockets - //if((1 << isocket) & dataThreadMask){ - cout<<"isocket running"<numberOfDetectors); //reset frame memory + memset(((char*)multiframe),0xFF,slsdatabytes*thisMultiDetector->numberOfDetectors); //reset frame memory //get each frame for(int isocket=0; isocketdetectorMAC,detectorMAC.c_str()); if(!strcmp(thisDetector->receiver_hostname,"none")) +#ifdef VERBOSE std::cout << "Warning: Receiver hostname not set yet." << endl; +#else + ; +#endif else if(setUDPConnection()==FAIL) std::cout<< "Warning: UDP connection set up failed" << std::endl; }else{ @@ -5927,7 +5937,11 @@ string slsDetector::setDetectorIP(string detectorIP){ if(result!=0){ strcpy(thisDetector->detectorIP,detectorIP.c_str()); if(!strcmp(thisDetector->receiver_hostname,"none")) +#ifdef VERBOSE std::cout << "Warning: Receiver hostname not set yet." << endl; +#else + ; +#endif else if(setUDPConnection()==FAIL) std::cout<< "Warning: UDP connection set up failed" << std::endl; }else{ @@ -6030,7 +6044,11 @@ string slsDetector::setReceiverUDPIP(string udpip){ }else{ strcpy(thisDetector->receiverUDPIP,udpip.c_str()); if(!strcmp(thisDetector->receiver_hostname,"none")) { +#ifdef VERBOSE std::cout << "Warning: Receiver hostname not set yet." << endl; +#else + ; +#endif } else if(setUDPConnection()==FAIL){ std::cout<< "Warning: UDP connection set up failed" << std::endl; @@ -6054,7 +6072,11 @@ string slsDetector::setReceiverUDPMAC(string udpmac){ (udpmac[11]==':')&&(udpmac[14]==':')){ strcpy(thisDetector->receiverUDPMAC,udpmac.c_str()); if(!strcmp(thisDetector->receiver_hostname,"none")) +#ifdef VERBOSE std::cout << "Warning: Receiver hostname not set yet." << endl; +#else + ; +#endif else if(setUDPConnection()==FAIL){ std::cout<< "Warning: UDP connection set up failed" << std::endl; } @@ -6073,7 +6095,11 @@ string slsDetector::setReceiverUDPMAC(string udpmac){ int slsDetector::setReceiverUDPPort(int udpport){ thisDetector->receiverUDPPort = udpport; if(!strcmp(thisDetector->receiver_hostname,"none")) - std::cout << "Warning: Receiver hostname not set yet." << endl; +#ifdef VERBOSE + std::cout << "Warning: Receiver hostname not set yet." << endl; +#else + ; +#endif else if(setUDPConnection()==FAIL){ std::cout<< "Warning: UDP connection set up failed" << std::endl; } @@ -6083,7 +6109,11 @@ int slsDetector::setReceiverUDPPort(int udpport){ int slsDetector::setReceiverUDPPort2(int udpport){ thisDetector->receiverUDPPort2 = udpport; if(!strcmp(thisDetector->receiver_hostname,"none")) - std::cout << "Warning: Receiver hostname not set yet." << endl; +#ifdef VERBOSE + std::cout << "Warning: Receiver hostname not set yet." << endl; +#else + ; +#endif else if(setUDPConnection()==FAIL){ std::cout<< "Warning: UDP connection set up failed" << std::endl; } @@ -6137,7 +6167,9 @@ int slsDetector::setUDPConnection(){ //called before set up if(!strcmp(thisDetector->receiver_hostname,"none")){ - std::cout << "Warning: Receiver hostname not set yet." << endl; +#ifdef VERBOSE + std::cout << "Warning: Receiver hostname not set yet." << endl; +#endif return FAIL; } @@ -6195,9 +6227,9 @@ int slsDetector::setUDPConnection(){ } }else ret=FAIL; - +#ifdef VERBOSE printReceiverConfiguration(); - +#endif return ret; }