checks if receiver udp object was created before executing functions and hence always returns a ret

This commit is contained in:
Dhanya Maliakal 2015-05-26 17:01:42 +02:00
parent cb51de145b
commit 4f88e831c4

View File

@ -421,6 +421,10 @@ int slsReceiverTCPIPInterface::set_file_name() {
if (lockStatus==1 && socket->differentClients==1){
sprintf(mess,"Receiver locked by %s\n", socket->lastClientIP);
ret=FAIL;
}
else if (receiverBase == NULL){
strcpy(mess,"Receiver not set up\n");
ret=FAIL;
}
else
strcpy(retval,receiverBase->setFileName(fName));
@ -476,6 +480,10 @@ int slsReceiverTCPIPInterface::set_file_dir() {
strcpy(mess,"Can not set file path while receiver running\n");
ret = FAIL;
}*/
else if (receiverBase == NULL){
strcpy(mess,"Receiver not set up\n");
ret=FAIL;
}
else{
strcpy(retval,receiverBase->setFilePath(fPath));
// if file path doesnt exist
@ -535,6 +543,10 @@ int slsReceiverTCPIPInterface::set_file_index() {
sprintf(mess,"Receiver locked by %s\n", socket->lastClientIP);
ret=FAIL;
}
else if (receiverBase == NULL){
strcpy(mess,"Receiver not set up\n");
ret=FAIL;
}
else
retval=receiverBase->setFileIndex(index);
}
@ -588,6 +600,10 @@ int slsReceiverTCPIPInterface::set_frame_index() {
sprintf(mess,"Receiver locked by %s\n", socket->lastClientIP);
ret=FAIL;
}
else if (receiverBase == NULL){
strcpy(mess,"Receiver not set up\n");
ret=FAIL;
}
else
retval=receiverBase->setFrameIndexNeeded(index);
}
@ -645,6 +661,10 @@ int slsReceiverTCPIPInterface::setup_udp(){
sprintf(mess,"Receiver locked by %s\n", socket->lastClientIP);
ret=FAIL;
}
else if (receiverBase == NULL){
strcpy(mess,"Receiver not set up\n");
ret=FAIL;
}
else if(receiverBase->getStatus()==RUNNING){
ret = FAIL;
strcpy(mess,"cannot set up udp when receiver is running\n");
@ -732,6 +752,10 @@ int slsReceiverTCPIPInterface::start_receiver(){
ret = FAIL;
}
*/
else if (receiverBase == NULL){
strcpy(mess,"Receiver not set up\n");
ret=FAIL;
}
else {
s = receiverBase->getStatus();
switch (s) {
@ -780,6 +804,10 @@ int slsReceiverTCPIPInterface::stop_receiver(){
sprintf(mess,"Receiver locked by %s\n", socket->lastClientIP);
ret=FAIL;
}
else if (receiverBase == NULL){
strcpy(mess,"Receiver not set up\n");
ret=FAIL;
}
else if(receiverBase->getStatus()!=IDLE)
ret=receiverBase->stopReceiver();
#endif
@ -802,20 +830,25 @@ int slsReceiverTCPIPInterface::stop_receiver(){
int slsReceiverTCPIPInterface::get_status(){
ret=OK;
enum runStatus retval;
enum runStatus retval = ERROR;
// execute action if the arguments correctly arrived
#ifdef SLS_RECEIVER_UDP_FUNCTIONS
retval=receiverBase->getStatus();
if (receiverBase == NULL){
strcpy(mess,"Receiver not set up\n");
ret=FAIL;
}else retval=receiverBase->getStatus();
#endif
if(socket->differentClients){
if(ret==OK && socket->differentClients){
cout << "Force update" << endl;
ret=FORCE_UPDATE;
}
// send answer
socket->SendDataOnly(&ret,sizeof(ret));
if(ret==FAIL)
socket->SendDataOnly(mess,sizeof(mess));
socket->SendDataOnly(&retval,sizeof(retval));
//return ok/fail
return ret;
@ -830,15 +863,20 @@ int slsReceiverTCPIPInterface::get_frames_caught(){
// execute action if the arguments correctly arrived
#ifdef SLS_RECEIVER_UDP_FUNCTIONS
retval=receiverBase->getTotalFramesCaught();
if (receiverBase == NULL){
strcpy(mess,"Receiver not set up\n");
ret=FAIL;
}else retval=receiverBase->getTotalFramesCaught();
#endif
if(socket->differentClients){
if(ret==OK && socket->differentClients){
cout << "Force update" << endl;
ret=FORCE_UPDATE;
}
// send answer
socket->SendDataOnly(&ret,sizeof(ret));
if(ret==FAIL)
socket->SendDataOnly(mess,sizeof(mess));
socket->SendDataOnly(&retval,sizeof(retval));
//return ok/fail
return ret;
@ -853,16 +891,22 @@ int slsReceiverTCPIPInterface::get_frame_index(){
// execute action if the arguments correctly arrived
#ifdef SLS_RECEIVER_UDP_FUNCTIONS
retval=receiverBase->getAcquisitionIndex();
if (receiverBase == NULL){
strcpy(mess,"Receiver not set up\n");
ret=FAIL;
}else
retval=receiverBase->getAcquisitionIndex();
#endif
if(socket->differentClients){
if(ret==OK && socket->differentClients){
cout << "Force update" << endl;
ret=FORCE_UPDATE;
}
// send answer
socket->SendDataOnly(&ret,sizeof(ret));
if(ret==FAIL)
socket->SendDataOnly(mess,sizeof(mess));
socket->SendDataOnly(&retval,sizeof(retval));
//return ok/fail
return ret;
@ -884,6 +928,10 @@ int slsReceiverTCPIPInterface::reset_frames_caught(){
sprintf(mess,"Receiver locked by %s\n", socket->lastClientIP);
ret=FAIL;
}
else if (receiverBase == NULL){
strcpy(mess,"Receiver not set up\n");
ret=FAIL;
}
else
receiverBase->resetTotalFramesCaught();
}
@ -936,6 +984,10 @@ int slsReceiverTCPIPInterface::set_short_frame() {
sprintf(mess,"Receiver locked by %s\n", socket->lastClientIP);
ret=FAIL;
}
else if (receiverBase == NULL){
strcpy(mess,"Receiver not set up\n");
ret=FAIL;
}
else if(receiverBase->getStatus()==RUNNING){
strcpy(mess,"Cannot set short frame while status is running\n");
ret=FAIL;
@ -1009,9 +1061,12 @@ int slsReceiverTCPIPInterface::moench_read_frame(){
// execute action if the arguments correctly arrived
#ifdef SLS_RECEIVER_UDP_FUNCTIONS
if (receiverBase == NULL){
strcpy(mess,"Receiver not set up\n");
ret=FAIL;
}
/**send garbage with -1 index to try again*/
if(!receiverBase->getFramesCaught()){
else if(!receiverBase->getFramesCaught()){
startAcquisitionIndex = -1;
cout<<"haven't caught any frame yet"<<endl;
}
@ -1196,10 +1251,13 @@ int slsReceiverTCPIPInterface::gotthard_read_frame(){
// execute action if the arguments correctly arrived
#ifdef SLS_RECEIVER_UDP_FUNCTIONS
if (receiverBase == NULL){
strcpy(mess,"Receiver not set up\n");
ret=FAIL;
}
/**send garbage with -1 index to try again*/
if(!receiverBase->getFramesCaught()){
else if(!receiverBase->getFramesCaught()){
startAcquisitionIndex=-1;
cout<<"haven't caught any frame yet"<<endl;
}else{
@ -1362,10 +1420,13 @@ int slsReceiverTCPIPInterface::eiger_read_frame(){
// execute action if the arguments correctly arrived
#ifdef SLS_RECEIVER_UDP_FUNCTIONS
if (receiverBase == NULL){
strcpy(mess,"Receiver not set up\n");
ret=FAIL;
}
/**send garbage with -1 index to try again*/
if(!receiverBase->getFramesCaught()){
else if(!receiverBase->getFramesCaught()){
startAcquisitionIndex=-1;
#ifdef VERBOSE
cout<<"haven't caught any frame yet"<<endl;
@ -1616,7 +1677,12 @@ int slsReceiverTCPIPInterface::set_read_frequency(){
if (lockStatus==1 && socket->differentClients==1){
sprintf(mess,"Receiver locked by %s\n", socket->lastClientIP);
ret=FAIL;
}/*
}
else if (receiverBase == NULL){
strcpy(mess,"Receiver not set up\n");
ret=FAIL;
}
/*
else if((receiverBase->getStatus()==RUNNING) && (index >= 0)){
ret = FAIL;
strcpy(mess,"cannot set up receiver mode when receiver is running\n");
@ -1667,6 +1733,10 @@ int slsReceiverTCPIPInterface::enable_file_write(){
sprintf(mess,"Receiver locked by %s\n", socket->lastClientIP);
ret=FAIL;
}
else if (receiverBase == NULL){
strcpy(mess,"Receiver not set up\n");
ret=FAIL;
}
else{
if(enable >= 0)
receiverBase->setEnableFileWrite(enable);
@ -1733,21 +1803,28 @@ int slsReceiverTCPIPInterface::start_readout(){
// execute action if the arguments correctly arrived
#ifdef SLS_RECEIVER_UDP_FUNCTIONS
receiverBase->startReadout();
retval = receiverBase->getStatus();
if((retval == TRANSMITTING) || (retval == RUN_FINISHED) || (retval == IDLE))
ret = OK;
else
ret = FAIL;
if (receiverBase == NULL){
strcpy(mess,"Receiver not set up\n");
ret=FAIL;
}else{
receiverBase->startReadout();
retval = receiverBase->getStatus();
if((retval == TRANSMITTING) || (retval == RUN_FINISHED) || (retval == IDLE))
ret = OK;
else
ret = FAIL;
}
#endif
if(socket->differentClients){
if(ret==OK && socket->differentClients){
cout << "Force update" << endl;
ret=FORCE_UPDATE;
}
// send answer
socket->SendDataOnly(&ret,sizeof(ret));
if(ret==FAIL)
socket->SendDataOnly(mess,sizeof(mess));
socket->SendDataOnly(&retval,sizeof(retval));
//return ok/fail
return ret;
@ -1779,6 +1856,10 @@ int slsReceiverTCPIPInterface::set_timer() {
sprintf(mess,"Receiver locked by %s\n", socket->lastClientIP);
ret=FAIL;
}
else if (receiverBase == NULL){
strcpy(mess,"Receiver not set up\n");
ret=FAIL;
}
else{
if(index[0] == slsReceiverDefs::FRAME_PERIOD)
retval=receiverBase->setAcquisitionPeriod(index[1]);
@ -1838,6 +1919,10 @@ int slsReceiverTCPIPInterface::enable_compression() {
sprintf(mess,"Receiver locked by %s\n", socket->lastClientIP);
ret=FAIL;
}
else if (receiverBase == NULL){
strcpy(mess,"Receiver not set up\n");
ret=FAIL;
}
else if(receiverBase->getStatus()==RUNNING){
strcpy(mess,"Cannot enable/disable compression while status is running\n");
ret=FAIL;
@ -1846,7 +1931,11 @@ int slsReceiverTCPIPInterface::enable_compression() {
ret = receiverBase->enableDataCompression(enable);
}
retval=receiverBase->getDataCompression();
if (receiverBase == NULL){
strcpy(mess,"Receiver not set up\n");
ret=FAIL;
}else
retval=receiverBase->getDataCompression();
}
#endif
@ -1887,6 +1976,10 @@ int slsReceiverTCPIPInterface::set_detector_hostname() {
if (lockStatus==1 && socket->differentClients==1){
sprintf(mess,"Receiver locked by %s\n", socket->lastClientIP);
ret=FAIL;
}
else if (receiverBase == NULL){
strcpy(mess,"Receiver not set up\n");
ret=FAIL;
}
else{
receiverBase->initialize(hostname);
@ -1955,14 +2048,19 @@ int slsReceiverTCPIPInterface::set_dynamic_range() {
}
}
if(ret!=FAIL){
retval=receiverBase->setDynamicRange(dr);
dynamicrange = dr;
if(myDetectorType == EIGER){
if(!tenGigaEnable)
packetsPerFrame = EIGER_ONE_GIGA_CONSTANT * dynamicrange * EIGER_MAX_PORTS;
else
packetsPerFrame = EIGER_TEN_GIGA_CONSTANT * dynamicrange * EIGER_MAX_PORTS;
}
if (receiverBase == NULL){
strcpy(mess,"Receiver not set up\n");
ret=FAIL;
}else{
retval=receiverBase->setDynamicRange(dr);
dynamicrange = dr;
if(myDetectorType == EIGER){
if(!tenGigaEnable)
packetsPerFrame = EIGER_ONE_GIGA_CONSTANT * dynamicrange * EIGER_MAX_PORTS;
else
packetsPerFrame = EIGER_TEN_GIGA_CONSTANT * dynamicrange * EIGER_MAX_PORTS;
}
}
}
}
#ifdef VERBOSE
@ -2014,6 +2112,10 @@ int slsReceiverTCPIPInterface::enable_overwrite() {
sprintf(mess,"Receiver locked by %s\n", socket->lastClientIP);
ret=FAIL;
}
else if (receiverBase == NULL){
strcpy(mess,"Receiver not set up\n");
ret=FAIL;
}
else{
if(index >= 0)
receiverBase->setEnableOverwrite(index);
@ -2069,6 +2171,10 @@ int slsReceiverTCPIPInterface::enable_tengiga() {
sprintf(mess,"Receiver locked by %s\n", socket->lastClientIP);
ret=FAIL;
}
else if (receiverBase == NULL){
strcpy(mess,"Receiver not set up\n");
ret=FAIL;
}
else{
retval=receiverBase->enableTenGiga(val);
if((val!=-1) && (val != retval))
@ -2313,7 +2419,15 @@ int slsReceiverTCPIPInterface::send_update() {
int slsReceiverTCPIPInterface::update_client() {
ret=OK;
if (receiverBase == NULL){
strcpy(mess,"Receiver not set up\n");
ret=FAIL;
}
socket->SendDataOnly(&ret,sizeof(ret));
if(ret == FAIL){
socket->SendDataOnly(mess,sizeof(mess));
return ret;
}
return send_update();
}