mirror of
https://github.com/slsdetectorgroup/slsDetectorPackage.git
synced 2025-04-26 08:10:02 +02:00
fixed jungfrau problem, changed set receiver to updatedetector before
This commit is contained in:
parent
25780a2b4f
commit
8caa9d8779
@ -1630,12 +1630,30 @@ int configureInterface(uint32_t destip,uint64_t destmac,uint64_t sourcemac,int
|
||||
#endif
|
||||
|
||||
bus_w(CONTROL_REG,GB10_RESET_BIT);
|
||||
usleep(500 * 1000);
|
||||
//usleep(50 * 1000);
|
||||
bus_w(CONTROL_REG,0);
|
||||
usleep(10* 1000);
|
||||
//usleep(500* 1000);
|
||||
//bus_w(CONFIG_REG,conf | GB10_NOT_CPU_BIT);
|
||||
printf("System status register is %08x\n",bus_r(SYSTEM_STATUS_REG));
|
||||
|
||||
|
||||
/*
|
||||
bus_w(CONTROL_REG,GB10_RESET_BIT);
|
||||
bus_w(CONTROL_REG,0);
|
||||
usleep(500 * 1000);
|
||||
bus_w(CONFIG_REG,conf | GB10_NOT_CPU_BIT);
|
||||
printf("System status register is %08x\n",bus_r(SYSTEM_STATUS_REG));
|
||||
*/
|
||||
|
||||
printf("Reset mem machine fifos\n");
|
||||
bus_w(MEM_MACHINE_FIFOS_REG,0x4000);
|
||||
bus_w(MEM_MACHINE_FIFOS_REG,0x0);
|
||||
printf("Reset run control\n");
|
||||
bus_w(MEM_MACHINE_FIFOS_REG,0x0400);
|
||||
bus_w(MEM_MACHINE_FIFOS_REG,0x0);
|
||||
|
||||
usleep(500 * 1000);
|
||||
|
||||
return 0; //any value doesnt matter - dhanya
|
||||
|
||||
}
|
||||
@ -1674,11 +1692,7 @@ int configureMAC(uint32_t destip,uint64_t destmac,uint64_t sourcemac,int source
|
||||
for (interface=0; interface <ngb; interface++)
|
||||
configureInterface(destip, destmac, sourcemac+interface, sourceip+interface, ival, destport+interface, sourceport+interface, interface);
|
||||
|
||||
bus_w(CONTROL_REG,GB10_RESET_BIT);
|
||||
bus_w(CONTROL_REG,0);
|
||||
usleep(500 * 1000);
|
||||
bus_w(CONFIG_REG,conf | GB10_NOT_CPU_BIT);
|
||||
printf("System status register is %08x\n",bus_r(SYSTEM_STATUS_REG));
|
||||
|
||||
return OK;
|
||||
|
||||
}
|
||||
|
Binary file not shown.
@ -2024,7 +2024,7 @@ int set_dynamic_range(int file_des) {
|
||||
int retval;
|
||||
int ret=OK;
|
||||
|
||||
printf("Set dynamic range?\n");
|
||||
printf("Set dynamic range\n");
|
||||
sprintf(mess,"can't set dynamic range\n");
|
||||
|
||||
|
||||
|
@ -5101,7 +5101,6 @@ void multiSlsDetector::startReceivingDataThread(){
|
||||
int ithread = currentThreadIndex; //set current thread value index
|
||||
|
||||
char hostname[100] = "tcp://";
|
||||
|
||||
char rx_hostname[100];
|
||||
strcpy(rx_hostname, detectors[ithread]->getReceiver());
|
||||
cout<<"rx_hostname:"<<rx_hostname<<endl;
|
||||
@ -5159,10 +5158,8 @@ void multiSlsDetector::startReceivingDataThread(){
|
||||
|
||||
sem_wait(&sem_singlewait[ithread]); //wait for it to be copied
|
||||
//check to exit thread
|
||||
if(killAllReceivingDataThreads){
|
||||
delete [] singleframe[ithread];
|
||||
if(killAllReceivingDataThreads)
|
||||
break;
|
||||
}
|
||||
|
||||
//scan header-------------------------------------------------------------------
|
||||
zmq_msg_init (&message);
|
||||
@ -5222,7 +5219,7 @@ void multiSlsDetector::startReceivingDataThread(){
|
||||
//end of socket ("end")
|
||||
if (len < expectedsize ) {
|
||||
if(len == 3){
|
||||
cprintf(RED,"%d Received end of acquisition\n", ithread);
|
||||
//cprintf(RED,"%d Received end of acquisition\n", ithread);
|
||||
singleframe[ithread] = NULL;
|
||||
//break;
|
||||
}else{
|
||||
@ -5255,6 +5252,9 @@ void multiSlsDetector::startReceivingDataThread(){
|
||||
zmq_close(zmqsocket);
|
||||
zmq_ctx_destroy(context);
|
||||
|
||||
//free resources
|
||||
delete [] image;
|
||||
|
||||
#ifdef DEBUG
|
||||
cprintf(MAGENTA,"Receiving Data Thread %d:Goodbye!\n",ithread);
|
||||
#endif
|
||||
@ -5363,7 +5363,7 @@ void multiSlsDetector::readFrameFromReceiver(){
|
||||
//no interleaving, just add to the end
|
||||
//numReadout always 1 here
|
||||
else{
|
||||
memcpy((char*)multiframe,(char*)singleframe[ireadout],slsdatabytes);
|
||||
memcpy((char*)multiframe+slsdatabytes*ireadout,(char*)singleframe[ireadout],slsdatabytes);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -5378,8 +5378,9 @@ void multiSlsDetector::readFrameFromReceiver(){
|
||||
if ((fdata) && (dataReady)){
|
||||
thisData = new detectorData(fdata,NULL,NULL,getCurrentProgress(),currentFileName.c_str(),nx,ny);
|
||||
dataReady(thisData, currentFrameIndex, currentSubFrameIndex, pCallbackArg);
|
||||
delete thisData;
|
||||
fdata = NULL;
|
||||
cout<<"Send frame #"<< currentFrameIndex << " to gui"<<endl;
|
||||
//cout<<"Send frame #"<< currentFrameIndex << " to gui"<<endl;
|
||||
}
|
||||
setCurrentProgress(currentAcquisitionIndex+1);
|
||||
}
|
||||
|
@ -5545,6 +5545,7 @@ char* slsDetector::setReceiver(string receiverIP){
|
||||
cprintf(RED,"Acquisition already running, Stopping it.\n");
|
||||
stopAcquisition();
|
||||
}
|
||||
updateDetector();
|
||||
|
||||
strcpy(thisDetector->receiver_hostname,receiverIP.c_str());
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user