From ed1dc77bb31178074fcfaf53d4370701557d31e5 Mon Sep 17 00:00:00 2001 From: Anna Bergamaschi Date: Fri, 28 Aug 2015 10:56:24 +0200 Subject: [PATCH] some changes to receiver defs --- .../include/dummyUDPInterface.h | 21 ++++++++++++-- slsReceiverSoftware/include/receiver_defs.h | 14 +++++----- slsReceiverSoftware/src/dummyMain.cpp | 28 ++++++++++--------- 3 files changed, 41 insertions(+), 22 deletions(-) diff --git a/slsReceiverSoftware/include/dummyUDPInterface.h b/slsReceiverSoftware/include/dummyUDPInterface.h index 479de4584..5cba675cc 100644 --- a/slsReceiverSoftware/include/dummyUDPInterface.h +++ b/slsReceiverSoftware/include/dummyUDPInterface.h @@ -15,6 +15,7 @@ #include "UDPInterface.h" #include "sls_receiver_defs.h" +#include "genericSocket.h" class dummyUDPInterface : public UDPInterface { @@ -58,7 +59,12 @@ class dummyUDPInterface : public UDPInterface { /** * Destructor */ - dummyUDPInterface() : UDPInterface(), dynamicRange(16), scanTag(1000), nFrames(100), fWrite(1), fOverwrite(1), fIndex(0), fCaught(0), totfCaught(0), startAcqIndex(0), startFrameIndex(0), acqIndex(0), dataCompression(false), period(0), type(slsReceiverDefs::GENERIC), framesNeeded(100), udpPort1(1900), udpPort2(1901), shortFrame(0), nFramesToGui(0), e10G(0) {strcpy(detHostname,"none"); strcpy(fName,"run"); strcpy(fPath,"/scratch/"); strcpy(eth,"eth0"); cout << "New dummy UDP Interface" << endl;}; + dummyUDPInterface() : UDPInterface(), dynamicRange(16), scanTag(1000), nFrames(100), fWrite(1), fOverwrite(1), fIndex(0), fCaught(0), totfCaught(0), startAcqIndex(0), startFrameIndex(0), acqIndex(0), dataCompression(false), period(0), type(slsReceiverDefs::GENERIC), framesNeeded(100), udpPort1(1900), udpPort2(1901), shortFrame(0), nFramesToGui(0), e10G(0) {strcpy(detHostname,"none"); strcpy(fName,"run"); strcpy(fPath,"/scratch/"); strcpy(eth,"eth0"); cout << "New dummy UDP Interface" << endl; + + + + +}; ~dummyUDPInterface() {cout << "Destroying dummy UDP Interface" << endl;}; @@ -198,7 +204,18 @@ class dummyUDPInterface : public UDPInterface { /returns 0 on success or -1 on failure */ //FIXME: success == 0 or success == 1? - virtual int startReceiver(char *message=NULL) {cout << "dummy start receiver" << endl; return 0;}; + virtual int startReceiver(char *message=NULL) {cout << "dummy start receiver" << endl; + char buff[8225]; + buff[8224]='\0'; + int ip=0; + int ib; + genericSocket *udpSocket= new genericSocket(50004,genericSocket::UDP,8224); + while((ib=udpSocket->ReceiveDataOnly(buff,8224))>0) { + cout << "*** "<< ib <<" ************************** " << ip++ << endl; + cout << buff << endl; + cout << "*****************************" << endl << endl<< endl ; + } +return 0;}; /** * Stops Receiver - stops listening for packets diff --git a/slsReceiverSoftware/include/receiver_defs.h b/slsReceiverSoftware/include/receiver_defs.h index 6f3b1acd3..f208d93c7 100755 --- a/slsReceiverSoftware/include/receiver_defs.h +++ b/slsReceiverSoftware/include/receiver_defs.h @@ -70,14 +70,14 @@ #define JCTB_FIFO_SIZE 2500 //cannot be less than max jobs per thread = 1000 /*#define MOENCH_ALIGNED_FRAME_SIZE 65536*/ -#define JCTB_PACKETS_PER_FRAME 50 -#define JCTB_ONE_PACKET_SIZE 8214 -#define JCTB_BUFFER_SIZE (MOENCH_ONE_PACKET_SIZE*MOENCH_PACKETS_PER_FRAME) -#define JCTB_DATA_BYTES (JCTB_BUFFER_PER_FRAME) +#define JCTB_PACKETS_PER_FRAME 1 +#define JCTB_ONE_PACKET_SIZE 8224 +#define JCTB_BUFFER_SIZE (JCTB_ONE_PACKET_SIZE*40) +#define JCTB_DATA_BYTES (8192*JCTB_PACKETS_PER_FRAME) -#define JCTB_FRAME_INDEX_MASK 0xFFFFFF00 -#define JCTB_FRAME_INDEX_OFFSET 8 -#define JCTB_PACKET_INDEX_MASK 0xFF +#define JCTB_FRAME_INDEX_MASK 0xFFFFFFFF +#define JCTB_FRAME_INDEX_OFFSET 6+8 +#define JCTB_PACKET_INDEX_MASK 0xFFFFFFFF #define JCTB_BYTES_PER_ADC (2) #define JCTB_PIXELS_IN_ONE_ROW 32 diff --git a/slsReceiverSoftware/src/dummyMain.cpp b/slsReceiverSoftware/src/dummyMain.cpp index 41494fd99..3f4e9bb2d 100644 --- a/slsReceiverSoftware/src/dummyMain.cpp +++ b/slsReceiverSoftware/src/dummyMain.cpp @@ -18,24 +18,26 @@ int main(int argc, char *argv[]) { bool bottom = false; cout << "CCCCCC" << endl; dummyUDPInterface *udp=new dummyUDPInterface(); - slsReceiverTCPIPInterface *tcpipInterface = new slsReceiverTCPIPInterface(success, udp, tcpip_port_no, bottom); +// slsReceiverTCPIPInterface *tcpipInterface = new slsReceiverTCPIPInterface(success, udp, tcpip_port_no, bottom); - if(tcpipInterface->start() == slsReceiverDefs::OK){ - cout << "DONE!" << endl; - string str; - cin>>str; - //wait and look for an exit keyword - while(str.find("exit") == string::npos) - cin>>str; - //stop tcp server thread, stop udp socket - tcpipInterface->stop(); - } +// if(tcpipInterface->start() == slsReceiverDefs::OK){ +// cout << "DONE!" << endl; +// string str; +// cin>>str; +// //wait and look for an exit keyword +// while(str.find("exit") == string::npos) +// cin>>str; +// //stop tcp server thread, stop udp socket +// tcpipInterface->stop(); +// } - if (tcpipInterface) - delete tcpipInterface; +// if (tcpipInterface) +// delete tcpipInterface; + + udp->startReceiver(); if(udp) delete udp; return 0;