From 85ccf6417531630b3ff31700f2e42af0316dc8b1 Mon Sep 17 00:00:00 2001 From: Dhanya Maliakal Date: Mon, 2 Mar 2015 13:56:23 +0100 Subject: [PATCH] print receiver configurations for all detectors added --- .../multiSlsDetector/multiSlsDetector.cpp | 28 +++++++++++++++++++ .../multiSlsDetector/multiSlsDetector.h | 5 ++++ .../slsDetector/slsDetector.cpp | 23 ++++++++++++++- slsDetectorSoftware/slsDetector/slsDetector.h | 6 ++++ .../slsDetector/slsDetectorBase.h | 6 ++++ .../slsDetector/slsDetectorCommand.cpp | 10 ++++++- 6 files changed, 76 insertions(+), 2 deletions(-) diff --git a/slsDetectorSoftware/multiSlsDetector/multiSlsDetector.cpp b/slsDetectorSoftware/multiSlsDetector/multiSlsDetector.cpp index a04b6e03d..aa8c12d55 100644 --- a/slsDetectorSoftware/multiSlsDetector/multiSlsDetector.cpp +++ b/slsDetectorSoftware/multiSlsDetector/multiSlsDetector.cpp @@ -3868,6 +3868,32 @@ int multiSlsDetector::readRegister(int addr){ }; + + +int multiSlsDetector::printReceiverConfiguration(){ + int i; + int ret, ret1=-100; + + std::cout << "Printing Receiver configurations for all detectors..." << std::endl; + + for (i=0; inumberOfDetectors; i++) { + if (detectors[i]) { + std::cout << std::endl << "#Detector " << i << ":" << std::endl; + + ret=detectors[i]->printReceiverConfiguration(); + if(detectors[i]->getErrorMask()) + setErrorMask(getErrorMask()|(1<myDetectorType == EIGER) enableTenGigabitEthernet(thisDetector->tenGigaEnable); + + printReceiverConfiguration(); } } @@ -5504,6 +5506,25 @@ int slsDetector::resetCounterBlock(int startACQ){ +int slsDetector::printReceiverConfiguration(){ + + std::cout << "Detector IP:\t\t" << getNetworkParameter(DETECTOR_IP) << std::endl; + std::cout << "Detector MAC:\t\t" << getNetworkParameter(DETECTOR_MAC) << std::endl; + + std::cout << "Receiver Hostname:\t" << getNetworkParameter(RECEIVER_HOSTNAME) << std::endl; + std::cout << "Receiver UDP IP:\t" << getNetworkParameter(RECEIVER_UDP_IP) << std::endl; + std::cout << "Receiver UDP MAC:\t" << getNetworkParameter(RECEIVER_UDP_MAC) << std::endl; + + + std::cout << "Receiver UDP Port:\t" << getNetworkParameter(RECEIVER_UDP_PORT) << std::endl; + if(thisDetector->myDetectorType == EIGER) + std::cout << "Receiver UDP Port2:\t" << getNetworkParameter(RECEIVER_UDP_PORT2) << std::endl; + + std::cout << std::endl; + + return OK; +} + int slsDetector::readConfigurationFile(string const fname){ diff --git a/slsDetectorSoftware/slsDetector/slsDetector.h b/slsDetectorSoftware/slsDetector/slsDetector.h index 593834a60..c4073f582 100644 --- a/slsDetectorSoftware/slsDetector/slsDetector.h +++ b/slsDetectorSoftware/slsDetector/slsDetector.h @@ -321,6 +321,12 @@ class slsDetector : public slsDetectorUtils, public energyConversion { */ int configureMAC(); + /** + Prints receiver configuration + \returns OK or FAIL + */ + int printReceiverConfiguration(); + /** Reads the configuration file fname \param fname file name diff --git a/slsDetectorSoftware/slsDetector/slsDetectorBase.h b/slsDetectorSoftware/slsDetector/slsDetectorBase.h index 97bb255cf..6f5b2a15e 100644 --- a/slsDetectorSoftware/slsDetector/slsDetectorBase.h +++ b/slsDetectorSoftware/slsDetector/slsDetectorBase.h @@ -424,6 +424,11 @@ class slsDetectorBase : public virtual slsDetectorDefs, public virtual errorDef //int setBeamEnergy(int e){return 2*setThresholdEnergy(e/2);}; + /** + Prints receiver configuration + \returns OK or FAIL + */ + virtual int printReceiverConfiguration()=0; /** Reads the configuration file fname @@ -431,6 +436,7 @@ class slsDetectorBase : public virtual slsDetectorDefs, public virtual errorDef \returns OK or FAIL */ virtual int readConfigurationFile(string const fname)=0; + virtual int dumpDetectorSetup(string const fname, int level)=0; int dumpDetectorSetup(string const fname){return dumpDetectorSetup(fname,0);}; virtual int retrieveDetectorSetup(string const fname, int level)=0; diff --git a/slsDetectorSoftware/slsDetector/slsDetectorCommand.cpp b/slsDetectorSoftware/slsDetector/slsDetectorCommand.cpp index e83025794..a77f1e3b3 100644 --- a/slsDetectorSoftware/slsDetector/slsDetectorCommand.cpp +++ b/slsDetectorSoftware/slsDetector/slsDetectorCommand.cpp @@ -840,6 +840,10 @@ slsDetectorCommand::slsDetectorCommand(slsDetectorUtils *det) { descrToFuncMap[i].m_pFuncPtr=&slsDetectorCommand::cmdConfiguration; i++; + descrToFuncMap[i].m_pFuncName="rx_printconfig"; + descrToFuncMap[i].m_pFuncPtr=&slsDetectorCommand::cmdConfiguration; + i++; + descrToFuncMap[i].m_pFuncName="parameters"; descrToFuncMap[i].m_pFuncPtr=&slsDetectorCommand::cmdConfiguration; i++; @@ -4137,7 +4141,11 @@ string slsDetectorCommand::cmdConfiguration(int narg, char *args[], int action) myDet->writeConfigurationFile(sval); } return sval; - } else if (cmd=="parameters") { + } else if (cmd=="rx_printconfig"){ + if (action==PUT_ACTION) + return string("cannot put"); + myDet->printReceiverConfiguration(); + }else if (cmd=="parameters") { if (action==PUT_ACTION) { sval=string(args[1]); myDet->retrieveDetectorSetup(sval);