mirror of
https://github.com/slsdetectorgroup/slsDetectorPackage.git
synced 2025-06-07 02:20:42 +02:00
Merge branch 'refactor' of github.com:slsdetectorgroup/slsDetectorPackage into refactor
This commit is contained in:
commit
c153be95d1
@ -1958,7 +1958,7 @@ int multiSlsDetector::setDetectorMode(detectorModeType value, int detPos) {
|
|||||||
return getDetectorModeType(result);
|
return getDetectorModeType(result);
|
||||||
}
|
}
|
||||||
|
|
||||||
uint64_t multiSlsDetector::setReceiverUDPSocketBufferSize(uint64_t udpsockbufsize, int detPos) {
|
int64_t multiSlsDetector::setReceiverUDPSocketBufferSize(int64_t udpsockbufsize, int detPos) {
|
||||||
// single
|
// single
|
||||||
if (detPos >= 0) {
|
if (detPos >= 0) {
|
||||||
return detectors[detPos]->setReceiverUDPSocketBufferSize(udpsockbufsize);
|
return detectors[detPos]->setReceiverUDPSocketBufferSize(udpsockbufsize);
|
||||||
@ -1969,7 +1969,7 @@ uint64_t multiSlsDetector::setReceiverUDPSocketBufferSize(uint64_t udpsockbufsiz
|
|||||||
return sls::minusOneIfDifferent(r);
|
return sls::minusOneIfDifferent(r);
|
||||||
}
|
}
|
||||||
|
|
||||||
uint64_t multiSlsDetector::getReceiverUDPSocketBufferSize(int detPos) {
|
int64_t multiSlsDetector::getReceiverUDPSocketBufferSize(int detPos) {
|
||||||
// single
|
// single
|
||||||
if (detPos >= 0) {
|
if (detPos >= 0) {
|
||||||
return detectors[detPos]->getReceiverUDPSocketBufferSize();
|
return detectors[detPos]->getReceiverUDPSocketBufferSize();
|
||||||
@ -1980,7 +1980,7 @@ uint64_t multiSlsDetector::getReceiverUDPSocketBufferSize(int detPos) {
|
|||||||
return sls::minusOneIfDifferent(r);
|
return sls::minusOneIfDifferent(r);
|
||||||
}
|
}
|
||||||
|
|
||||||
uint64_t multiSlsDetector::getReceiverRealUDPSocketBufferSize(int detPos) {
|
int64_t multiSlsDetector::getReceiverRealUDPSocketBufferSize(int detPos) {
|
||||||
// single
|
// single
|
||||||
if (detPos >= 0) {
|
if (detPos >= 0) {
|
||||||
return detectors[detPos]->getReceiverRealUDPSocketBufferSize();
|
return detectors[detPos]->getReceiverRealUDPSocketBufferSize();
|
||||||
|
@ -1113,21 +1113,21 @@ class multiSlsDetector : public virtual slsDetectorDefs,
|
|||||||
* @param detPos -1 for all detectors in list or specific detector position
|
* @param detPos -1 for all detectors in list or specific detector position
|
||||||
* @returns receiver udp socket buffer size
|
* @returns receiver udp socket buffer size
|
||||||
*/
|
*/
|
||||||
uint64_t setReceiverUDPSocketBufferSize(uint64_t udpsockbufsize = -1, int detPos = -1);
|
int64_t setReceiverUDPSocketBufferSize(int64_t udpsockbufsize = -1, int detPos = -1);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns the receiver UDP socket buffer size
|
* Returns the receiver UDP socket buffer size
|
||||||
* @param detPos -1 for all detectors in list or specific detector position
|
* @param detPos -1 for all detectors in list or specific detector position
|
||||||
* @returns the receiver UDP socket buffer size
|
* @returns the receiver UDP socket buffer size
|
||||||
*/
|
*/
|
||||||
uint64_t getReceiverUDPSocketBufferSize(int detPos = -1);
|
int64_t getReceiverUDPSocketBufferSize(int detPos = -1);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns the receiver real UDP socket buffer size
|
* Returns the receiver real UDP socket buffer size
|
||||||
* @param detPos -1 for all detectors in list or specific detector position
|
* @param detPos -1 for all detectors in list or specific detector position
|
||||||
* @returns the receiver real UDP socket buffer size
|
* @returns the receiver real UDP socket buffer size
|
||||||
*/
|
*/
|
||||||
uint64_t getReceiverRealUDPSocketBufferSize(int detPos = -1);
|
int64_t getReceiverRealUDPSocketBufferSize(int detPos = -1);
|
||||||
|
|
||||||
/** (users only)
|
/** (users only)
|
||||||
* Set 10GbE Flow Control (Eiger)
|
* Set 10GbE Flow Control (Eiger)
|
||||||
|
@ -541,7 +541,7 @@ slsDetectorDefs::detectorType slsDetector::getDetectorTypeFromShm(int multi_id,
|
|||||||
if (!detector_shm.IsExisting()) {
|
if (!detector_shm.IsExisting()) {
|
||||||
FILE_LOG(logERROR) << "Shared memory " << detector_shm.GetName() << " does not exist.\n"
|
FILE_LOG(logERROR) << "Shared memory " << detector_shm.GetName() << " does not exist.\n"
|
||||||
"Corrupted Multi Shared memory. Please free shared memory.";
|
"Corrupted Multi Shared memory. Please free shared memory.";
|
||||||
throw SharedMemoryError("Could not read detector type from shared memory");
|
throw SharedMemoryError("Corrupted multi shared memory.");
|
||||||
}
|
}
|
||||||
|
|
||||||
// open, map, verify version
|
// open, map, verify version
|
||||||
@ -2785,11 +2785,11 @@ std::string slsDetector::getAdditionalJsonParameter(const std::string &key) {
|
|||||||
return std::string("");
|
return std::string("");
|
||||||
}
|
}
|
||||||
|
|
||||||
uint64_t slsDetector::setReceiverUDPSocketBufferSize(uint64_t udpsockbufsize) {
|
int64_t slsDetector::setReceiverUDPSocketBufferSize(int64_t udpsockbufsize) {
|
||||||
int fnum = F_RECEIVER_UDP_SOCK_BUF_SIZE;
|
int fnum = F_RECEIVER_UDP_SOCK_BUF_SIZE;
|
||||||
int ret = FAIL;
|
int ret = FAIL;
|
||||||
uint64_t arg = udpsockbufsize;
|
int64_t arg = udpsockbufsize;
|
||||||
uint64_t retval = -1;
|
int64_t retval = -1;
|
||||||
FILE_LOG(logDEBUG1) << "Sending UDP Socket Buffer size to receiver: " << arg;
|
FILE_LOG(logDEBUG1) << "Sending UDP Socket Buffer size to receiver: " << arg;
|
||||||
|
|
||||||
if (detector_shm()->receiverOnlineFlag == ONLINE_FLAG) {
|
if (detector_shm()->receiverOnlineFlag == ONLINE_FLAG) {
|
||||||
@ -2808,14 +2808,14 @@ uint64_t slsDetector::setReceiverUDPSocketBufferSize(uint64_t udpsockbufsize) {
|
|||||||
return retval;
|
return retval;
|
||||||
}
|
}
|
||||||
|
|
||||||
uint64_t slsDetector::getReceiverUDPSocketBufferSize() {
|
int64_t slsDetector::getReceiverUDPSocketBufferSize() {
|
||||||
return setReceiverUDPSocketBufferSize();
|
return setReceiverUDPSocketBufferSize();
|
||||||
}
|
}
|
||||||
|
|
||||||
uint64_t slsDetector::getReceiverRealUDPSocketBufferSize() {
|
int64_t slsDetector::getReceiverRealUDPSocketBufferSize() {
|
||||||
int fnum = F_RECEIVER_REAL_UDP_SOCK_BUF_SIZE;
|
int fnum = F_RECEIVER_REAL_UDP_SOCK_BUF_SIZE;
|
||||||
int ret = FAIL;
|
int ret = FAIL;
|
||||||
uint64_t retval = -1;
|
int64_t retval = -1;
|
||||||
FILE_LOG(logDEBUG1) << "Getting real UDP Socket Buffer size to receiver";
|
FILE_LOG(logDEBUG1) << "Getting real UDP Socket Buffer size to receiver";
|
||||||
|
|
||||||
if (detector_shm()->receiverOnlineFlag == ONLINE_FLAG) {
|
if (detector_shm()->receiverOnlineFlag == ONLINE_FLAG) {
|
||||||
|
@ -971,19 +971,19 @@ class slsDetector : public virtual slsDetectorDefs, public virtual errorDefs {
|
|||||||
* @param udpsockbufsize additional json header
|
* @param udpsockbufsize additional json header
|
||||||
* @returns receiver udp socket buffer size
|
* @returns receiver udp socket buffer size
|
||||||
*/
|
*/
|
||||||
uint64_t setReceiverUDPSocketBufferSize(uint64_t udpsockbufsize = -1);
|
int64_t setReceiverUDPSocketBufferSize(int64_t udpsockbufsize = -1);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns the receiver UDP socket buffer size\sa sharedSlsDetector
|
* Returns the receiver UDP socket buffer size\sa sharedSlsDetector
|
||||||
* @returns the receiver UDP socket buffer size
|
* @returns the receiver UDP socket buffer size
|
||||||
*/
|
*/
|
||||||
uint64_t getReceiverUDPSocketBufferSize();
|
int64_t getReceiverUDPSocketBufferSize();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns the receiver real UDP socket buffer size\sa sharedSlsDetector
|
* Returns the receiver real UDP socket buffer size\sa sharedSlsDetector
|
||||||
* @returns the receiver real UDP socket buffer size
|
* @returns the receiver real UDP socket buffer size
|
||||||
*/
|
*/
|
||||||
uint64_t getReceiverRealUDPSocketBufferSize();
|
int64_t getReceiverRealUDPSocketBufferSize();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Execute a digital test (Gotthard, Mythen)
|
* Execute a digital test (Gotthard, Mythen)
|
||||||
|
@ -2829,7 +2829,7 @@ std::string slsDetectorCommand::cmdNetworkParameter(int narg, char *args[], int
|
|||||||
return ans;
|
return ans;
|
||||||
} else if (cmd == "rx_udpsocksize") {
|
} else if (cmd == "rx_udpsocksize") {
|
||||||
if (action == PUT_ACTION) {
|
if (action == PUT_ACTION) {
|
||||||
uint64_t ival = -1;
|
int64_t ival = -1;
|
||||||
if (!(sscanf(args[1], "%ld", &ival))) {
|
if (!(sscanf(args[1], "%ld", &ival))) {
|
||||||
return ("cannot parse argument") + std::string(args[1]);
|
return ("cannot parse argument") + std::string(args[1]);
|
||||||
}
|
}
|
||||||
|
@ -140,7 +140,7 @@ class Listener : private virtual slsDetectorDefs, public ThreadObject {
|
|||||||
* @param s UDP socket buffer size to be set
|
* @param s UDP socket buffer size to be set
|
||||||
* @return OK or FAIL of dummy socket creation
|
* @return OK or FAIL of dummy socket creation
|
||||||
*/
|
*/
|
||||||
int CreateDummySocketForUDPSocketBufferSize(uint64_t s);
|
int CreateDummySocketForUDPSocketBufferSize(int64_t s);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Set hard coded (calculated but not from detector) row and column
|
* Set hard coded (calculated but not from detector) row and column
|
||||||
@ -232,10 +232,10 @@ class Listener : private virtual slsDetectorDefs, public ThreadObject {
|
|||||||
uint32_t* dynamicRange;
|
uint32_t* dynamicRange;
|
||||||
|
|
||||||
/** UDP Socket Buffer Size */
|
/** UDP Socket Buffer Size */
|
||||||
uint64_t* udpSocketBufferSize;
|
int64_t* udpSocketBufferSize;
|
||||||
|
|
||||||
/** actual UDP Socket Buffer Size (double due to kernel bookkeeping) */
|
/** actual UDP Socket Buffer Size (double due to kernel bookkeeping) */
|
||||||
uint64_t* actualUDPSocketBufferSize;
|
int64_t* actualUDPSocketBufferSize;
|
||||||
|
|
||||||
/** frames per file */
|
/** frames per file */
|
||||||
uint32_t* framesPerFile;
|
uint32_t* framesPerFile;
|
||||||
|
@ -308,14 +308,14 @@ class slsReceiverImplementation: private virtual slsDetectorDefs {
|
|||||||
* Get UDP Socket Buffer Size
|
* Get UDP Socket Buffer Size
|
||||||
* @return UDP Socket Buffer Size
|
* @return UDP Socket Buffer Size
|
||||||
*/
|
*/
|
||||||
uint64_t getUDPSocketBufferSize() const;
|
int64_t getUDPSocketBufferSize() const;
|
||||||
|
|
||||||
|
|
||||||
/** (not saved in client shared memory)
|
/** (not saved in client shared memory)
|
||||||
* Get actual UDP Socket Buffer Size
|
* Get actual UDP Socket Buffer Size
|
||||||
* @return actual UDP Socket Buffer Size
|
* @return actual UDP Socket Buffer Size
|
||||||
*/
|
*/
|
||||||
uint64_t getActualUDPSocketBufferSize() const;
|
int64_t getActualUDPSocketBufferSize() const;
|
||||||
|
|
||||||
/*************************************************************************
|
/*************************************************************************
|
||||||
* Setters ***************************************************************
|
* Setters ***************************************************************
|
||||||
@ -438,7 +438,7 @@ class slsReceiverImplementation: private virtual slsDetectorDefs {
|
|||||||
* @param s UDP Socket Buffer Size
|
* @param s UDP Socket Buffer Size
|
||||||
* @return OK or FAIL if dummy socket could be created
|
* @return OK or FAIL if dummy socket could be created
|
||||||
*/
|
*/
|
||||||
int setUDPSocketBufferSize(const uint64_t s);
|
int setUDPSocketBufferSize(const int64_t s);
|
||||||
|
|
||||||
|
|
||||||
//***acquisition parameters***
|
//***acquisition parameters***
|
||||||
@ -805,9 +805,9 @@ private:
|
|||||||
/** Server UDP Port Number*/
|
/** Server UDP Port Number*/
|
||||||
uint32_t udpPortNum[MAX_NUMBER_OF_LISTENING_THREADS];
|
uint32_t udpPortNum[MAX_NUMBER_OF_LISTENING_THREADS];
|
||||||
/** udp socket buffer size */
|
/** udp socket buffer size */
|
||||||
uint64_t udpSocketBufferSize;
|
int64_t udpSocketBufferSize;
|
||||||
/** actual UDP Socket Buffer Size (halved due to kernel bookkeeping) */
|
/** actual UDP Socket Buffer Size (halved due to kernel bookkeeping) */
|
||||||
uint64_t actualUDPSocketBufferSize;
|
int64_t actualUDPSocketBufferSize;
|
||||||
|
|
||||||
//***file parameters***
|
//***file parameters***
|
||||||
/** File format */
|
/** File format */
|
||||||
|
@ -22,7 +22,7 @@ const std::string Listener::TypeName = "Listener";
|
|||||||
|
|
||||||
Listener::Listener(int ind, detectorType dtype, Fifo* f, runStatus* s,
|
Listener::Listener(int ind, detectorType dtype, Fifo* f, runStatus* s,
|
||||||
uint32_t* portno, char* e, uint64_t* nf, uint32_t* dr,
|
uint32_t* portno, char* e, uint64_t* nf, uint32_t* dr,
|
||||||
uint64_t* us, uint64_t* as, uint32_t* fpf,
|
int64_t* us, int64_t* as, uint32_t* fpf,
|
||||||
frameDiscardPolicy* fdp, bool* act, bool* depaden, bool* sm) :
|
frameDiscardPolicy* fdp, bool* act, bool* depaden, bool* sm) :
|
||||||
ThreadObject(ind),
|
ThreadObject(ind),
|
||||||
runningFlag(0),
|
runningFlag(0),
|
||||||
@ -232,7 +232,7 @@ void Listener::ShutDownUDPSocket() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
int Listener::CreateDummySocketForUDPSocketBufferSize(uint64_t s) {
|
int Listener::CreateDummySocketForUDPSocketBufferSize(int64_t s) {
|
||||||
FILE_LOG(logINFO) << "Testing UDP Socket Buffer size with test port " << *udpPortNumber;
|
FILE_LOG(logINFO) << "Testing UDP Socket Buffer size with test port " << *udpPortNumber;
|
||||||
|
|
||||||
if (!(*activated)) {
|
if (!(*activated)) {
|
||||||
@ -240,7 +240,7 @@ int Listener::CreateDummySocketForUDPSocketBufferSize(uint64_t s) {
|
|||||||
return OK;
|
return OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
uint64_t temp = *udpSocketBufferSize;
|
int64_t temp = *udpSocketBufferSize;
|
||||||
*udpSocketBufferSize = s;
|
*udpSocketBufferSize = s;
|
||||||
|
|
||||||
//if eth is mistaken with ip address
|
//if eth is mistaken with ip address
|
||||||
|
@ -373,12 +373,12 @@ std::string slsReceiverImplementation::getAdditionalJsonHeader() const{
|
|||||||
return std::string(additionalJsonHeader);
|
return std::string(additionalJsonHeader);
|
||||||
}
|
}
|
||||||
|
|
||||||
uint64_t slsReceiverImplementation::getUDPSocketBufferSize() const {
|
int64_t slsReceiverImplementation::getUDPSocketBufferSize() const {
|
||||||
FILE_LOG(logDEBUG3) << __SHORT_AT__ << " called";
|
FILE_LOG(logDEBUG3) << __SHORT_AT__ << " called";
|
||||||
return udpSocketBufferSize;
|
return udpSocketBufferSize;
|
||||||
}
|
}
|
||||||
|
|
||||||
uint64_t slsReceiverImplementation::getActualUDPSocketBufferSize() const {
|
int64_t slsReceiverImplementation::getActualUDPSocketBufferSize() const {
|
||||||
FILE_LOG(logDEBUG3) << __SHORT_AT__ << " called";
|
FILE_LOG(logDEBUG3) << __SHORT_AT__ << " called";
|
||||||
return actualUDPSocketBufferSize;
|
return actualUDPSocketBufferSize;
|
||||||
}
|
}
|
||||||
@ -610,7 +610,7 @@ void slsReceiverImplementation::setEthernetInterface(const char* c) {
|
|||||||
FILE_LOG(logINFO) << "Ethernet Interface: " << eth;
|
FILE_LOG(logINFO) << "Ethernet Interface: " << eth;
|
||||||
}
|
}
|
||||||
|
|
||||||
int slsReceiverImplementation::setUDPSocketBufferSize(const uint64_t s) {
|
int slsReceiverImplementation::setUDPSocketBufferSize(const int64_t s) {
|
||||||
if (listener.size())
|
if (listener.size())
|
||||||
return listener[0]->CreateDummySocketForUDPSocketBufferSize(s);
|
return listener[0]->CreateDummySocketForUDPSocketBufferSize(s);
|
||||||
return FAIL;
|
return FAIL;
|
||||||
|
@ -425,11 +425,12 @@ int slsReceiverTCPIPInterface::set_port() {
|
|||||||
strcpy(mySock->lastClientIP,oldLastClientIP);
|
strcpy(mySock->lastClientIP,oldLastClientIP);
|
||||||
} catch(SocketError &e) {
|
} catch(SocketError &e) {
|
||||||
ret = FAIL;
|
ret = FAIL;
|
||||||
sprintf(mess, "Could not bind port %d. It is already set\n", p_number);
|
// same socket, could not bind port
|
||||||
|
sprintf(mess, e.what());
|
||||||
FILE_LOG(logERROR) << mess;
|
FILE_LOG(logERROR) << mess;
|
||||||
} catch (...) {
|
} catch (...) {
|
||||||
ret = FAIL;
|
ret = FAIL;
|
||||||
sprintf(mess, "Could not bind port %d.\n", p_number);
|
sprintf(mess, "Could not set port %d.\n", p_number);
|
||||||
FILE_LOG(logERROR) << mess;
|
FILE_LOG(logERROR) << mess;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1728,8 +1729,8 @@ int slsReceiverTCPIPInterface::get_additional_json_header() {
|
|||||||
int slsReceiverTCPIPInterface::set_udp_socket_buffer_size() {
|
int slsReceiverTCPIPInterface::set_udp_socket_buffer_size() {
|
||||||
ret = OK;
|
ret = OK;
|
||||||
memset(mess, 0, sizeof(mess));
|
memset(mess, 0, sizeof(mess));
|
||||||
uint64_t index = -1;
|
int64_t index = -1;
|
||||||
uint64_t retval = -1;
|
int64_t retval = -1;
|
||||||
|
|
||||||
// get args, return if socket crashed, ret is fail if receiver is not null
|
// get args, return if socket crashed, ret is fail if receiver is not null
|
||||||
if (interface->Server_ReceiveArg(ret, mess, &index, sizeof(index), true, receiver) == FAIL)
|
if (interface->Server_ReceiveArg(ret, mess, &index, sizeof(index), true, receiver) == FAIL)
|
||||||
@ -1762,7 +1763,7 @@ int slsReceiverTCPIPInterface::set_udp_socket_buffer_size() {
|
|||||||
int slsReceiverTCPIPInterface::get_real_udp_socket_buffer_size(){
|
int slsReceiverTCPIPInterface::get_real_udp_socket_buffer_size(){
|
||||||
ret = OK;
|
ret = OK;
|
||||||
memset(mess, 0, sizeof(mess));
|
memset(mess, 0, sizeof(mess));
|
||||||
uint64_t retval = -1;
|
int64_t retval = -1;
|
||||||
|
|
||||||
// no arg, check receiver is null
|
// no arg, check receiver is null
|
||||||
interface->Server_ReceiveArg(ret, mess, nullptr, 0, true, receiver);
|
interface->Server_ReceiveArg(ret, mess, nullptr, 0, true, receiver);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user