jungfrau server: feature finish: switching between 2 interfaces

This commit is contained in:
2019-05-17 19:19:03 +02:00
parent 1943e77b24
commit 1a1c6b9b42
15 changed files with 312 additions and 176 deletions

View File

@ -27,9 +27,6 @@ public:
/** Number of Pixels in y axis */
uint32_t nPixelsY;
/** emptybuffer (mainly for jungfrau) */
uint32_t emptyHeader;
/** Size of header in Packet */
uint32_t headerSizeinPacket;
@ -95,7 +92,6 @@ public:
myDetectorType(slsDetectorDefs::GENERIC),
nPixelsX(0),
nPixelsY(0),
emptyHeader(0),
headerSizeinPacket(0),
dataSize(0),
packetSize(0),
@ -228,7 +224,6 @@ public:
FILE_LOG(level) << "myDetectorType: " << slsDetectorDefs::detectorTypeToString(myDetectorType);
FILE_LOG(level) << "Pixels X: " << nPixelsX;
FILE_LOG(level) << "Pixels Y: " << nPixelsY;
FILE_LOG(level) << "Empty Header: " << emptyHeader;
FILE_LOG(level) << "Header Size in Packet: " << headerSizeinPacket;
FILE_LOG(level) << "Data Size: " << dataSize;
FILE_LOG(level) << "Packet Size: " << packetSize;
@ -506,8 +501,7 @@ class JungfrauData : public GeneralData {
myDetectorType = slsDetectorDefs::JUNGFRAU;
nPixelsX = (256*4);
nPixelsY = 512;
emptyHeader = 6;
headerSizeinPacket = emptyHeader + sizeof(slsDetectorDefs::sls_detector_header);
headerSizeinPacket = sizeof(slsDetectorDefs::sls_detector_header);
dataSize = 8192;
packetSize = headerSizeinPacket + dataSize;
packetsPerFrame = 128;

View File

@ -353,7 +353,6 @@ uint32_t Listener::ListenToAnImage(char* buf) {
uint32_t numpackets = 0;
uint32_t dsize = generalData->dataSize;
uint32_t hsize = generalData->headerSizeinPacket; //(includes empty header)
uint32_t esize = generalData->emptyHeader;
uint32_t fifohsize = generalData->fifoBufferHeaderSize;
uint32_t pperFrame = generalData->packetsPerFrame;
bool isHeaderEmpty = true;
@ -397,13 +396,13 @@ uint32_t Listener::ListenToAnImage(char* buf) {
//check if its the current image packet
// -------------------------- new header ----------------------------------------------------------------------
if (standardheader) {
old_header = (sls_detector_header*) (&carryOverPacket[esize]);
old_header = (sls_detector_header*) (&carryOverPacket[0]);
fnum = old_header->frameNumber;
pnum = old_header->packetNumber;
}
// -------------------old header -----------------------------------------------------------------------------
else {
generalData->GetHeaderInfo(index, &carryOverPacket[esize],
generalData->GetHeaderInfo(index, &carryOverPacket[0],
*dynamicRange, oddStartingPacket, fnum, pnum, snum, bid);
}
//------------------------------------------------------------------------------------------------------------
@ -515,7 +514,7 @@ uint32_t Listener::ListenToAnImage(char* buf) {
// -------------------------- new header ----------------------------------------------------------------------
if (standardheader) {
old_header = (sls_detector_header*) (&listeningPacket[esize]);
old_header = (sls_detector_header*) (&listeningPacket[0]);
fnum = old_header->frameNumber;
pnum = old_header->packetNumber;
}
@ -523,10 +522,10 @@ uint32_t Listener::ListenToAnImage(char* buf) {
else {
// set first packet to be odd or even (check required when switching from roi to no roi)
if (myDetectorType == GOTTHARD && !measurementStartedFlag) {
oddStartingPacket = generalData->SetOddStartingPacket(index, &listeningPacket[esize]);
oddStartingPacket = generalData->SetOddStartingPacket(index, &listeningPacket[0]);
}
generalData->GetHeaderInfo(index, &listeningPacket[esize],
generalData->GetHeaderInfo(index, &listeningPacket[0],
*dynamicRange, oddStartingPacket, fnum, pnum, snum, bid);
}
//------------------------------------------------------------------------------------------------------------