in between

This commit is contained in:
Dhanya Maliakal 2017-11-16 16:01:31 +01:00
parent a89265faf8
commit 4097c37b31
6 changed files with 88 additions and 9 deletions

View File

@ -1353,7 +1353,7 @@ class multiSlsDetector : public slsDetectorUtils {
/** Enable or disable streaming data from receiver to client
* @param enable 0 to disable 1 to enable -1 to only get the value
* @returns data streaming to receiver enable
* @returns data streaming from receiver enable
*/
int enableDataStreamingFromReceiver(int enable=-1);

View File

@ -1783,7 +1783,7 @@ class slsDetector : public slsDetectorUtils, public energyConversion {
/** Enable or disable streaming data from receiver to client
* @param enable 0 to disable 1 to enable -1 to only get the value
* @returns data streaming to receiver enable
* @returns data streaming from receiver enable
*/
int enableDataStreamingFromReceiver(int enable=-1);

View File

@ -425,7 +425,6 @@ class slsDetectorBase : public virtual slsDetectorDefs, public virtual errorDef
*/
int setHighVoltage(int val){return setDAC(val, HV_NEW, 0, -1);} \
/**
set dacs value
\param val value

View File

@ -227,6 +227,18 @@ int slsDetectorUsers::enableDataStreamingFromReceiver(int i){
return myDetector->enableDataStreamingFromReceiver(i);
}
int slsDetectorUsers::enableDataStreamingToClient(int i){
return myDetector->enableDataStreamingToClient(i);
}
int slsDetectorUsers::setReceiverDataStreamingOutPort(int i, int imod){
return myDetector->setReceiverDataStreamingOutPort(i, imod);
}
int slsDetectorUsers::setClientDataStreamingInPort(int i, int imod){
return myDetector->setClientDataStreamingInPort(i, imod);
}
int64_t slsDetectorUsers::getModuleFirmwareVersion(){
return myDetector->getModuleFirmwareVersion();
}

View File

@ -439,13 +439,38 @@ class slsDetectorUsers
virtual void finalizeDataset(double *a, double *v, double *e, int &np);
/**
Enable data streaming from receiver (zmq)
\param i 1 to set, 0 to reset and -1 to get
\returns data streaming enable
*/
/** Enable or disable streaming data from receiver (creates transmitting sockets)
* @param enable 0 to disable 1 to enable -1 to only get the value
* @returns data streaming from receiver enable
*/
int enableDataStreamingFromReceiver(int i=-1);
/**
* Enable data streaming to client (creates receiving sockets)
* @param i 0 to disable, 1 to enable, -1 to get the value
* @returns data streaming to client enable
*/
int enableDataStreamingToClient(int i=-1);
/**
* Set/Get receiver streaming out ZMQ port
* If imod is -1, when setting it calculates and sets the port for all individual detectors
* and when getting it returns only the port of individual detector in first position
* @param i sets, -1 gets
* @param imod module index, -1 for all
* @returns receiver streaming out ZMQ port ()
*/
int setReceiverDataStreamingOutPort(int i, int imod=-1);
/**
* Set/Get client streaming in ZMQ port
* If imod is -1, when setting it calculates and sets the port for all individual detectors
* and when getting it returns only the port of individual detector in first position
* @param i sets, -1 gets
* @param imod module index, -1 for all
* @returns client streaming in ZMQ port
*/
int setClientDataStreamingInPort(int i, int imod=-1);
/**
get get Module Firmware Version

View File

@ -30,6 +30,7 @@ extern "C" {
#include <queue>
#include <math.h>
#include <semaphore.h>
#include <cstdlib>
using namespace std;
@ -88,6 +89,48 @@ class slsDetectorUtils : public slsDetectorActions, public postProcessing {
int enableFlatFieldCorrection(int i=-1) {if (i>0) setFlatFieldCorrectionFile("default"); else if (i==0) setFlatFieldCorrectionFile(""); return getFlatFieldCorrection();};
int enablePixelMaskCorrection(int i=-1) {if (i>0) setBadChannelCorrection("default"); else if (i==0) setBadChannelCorrection(""); return getBadChannelCorrection();};
int enableCountRateCorrection(int i=-1) {if (i>0) setRateCorrection(i); else if (i==0) setRateCorrection(0); return getRateCorrection();};
/**
* Set/Get receiver streaming out ZMQ port
* @param i sets, -1 gets
* @param imod module index, -1 for all
* @returns receiver streaming out ZMQ port
*/
int setReceiverDataStreamingOutPort(int i, int imod) { \
// single module
if (imod < 0) { \
if (i >= 0) { \
ostringstream ss; ss << i; string s = ss.str(); \
getSlsDetector(imod)->setReceiverStreamingPort(RECEIVER_STREAMING_PORT, s); \
} \
return atoi(getSlsDetector(imod)->getReceiverStreamingPort().c_str()); \
} \
// multimodule
if (i >= 0) \
setNetworkParameter(RECEIVER_STREAMING_PORT, s); \
return atoi(getSlsDetector(0)->getNetworkParameter(RECEIVER_STREAMING_PORT).c_str());}; \
/**
* Set/Get client streaming in ZMQ port
* @param i sets, -1 gets
* @param imod module index, -1 for all
* @returns client streaming in ZMQ port
*/
int setClientDataStreamingInPort(int i, int imod=-1){ \
// single module
if (imod < 0) { \
if (i >= 0) { \
ostringstream ss; ss << i; string s = ss.str(); \
getSlsDetector(imod)->setReceiverStreamingPort(CLIENT_STREAMING_PORT, s); \
} \
return atoi(getSlsDetector(imod)->getReceiverStreamingPort().c_str()); \
} \
// multimodule
if (i >= 0) \
setNetworkParameter(CLIENT_STREAMING_PORT, s); \
return atoi(getSlsDetector(0)->getNetworkParameter(CLIENT_STREAMING_PORT).c_str());}; \
};
// string getFilePath(){return fileIO::getFilePath();};;
// string setFilePath(string s){return fileIO::setFilePath(s);};
@ -751,7 +794,7 @@ virtual int setReadReceiverFrequency(int getFromReceiver, int freq=-1)=0;
/** Enable or disable streaming data from receiver to client
* @param enable 0 to disable 1 to enable -1 to only get the value
* @returns data streaming to receiver enable
* @returns data streaming from receiver enable
*/
virtual int enableDataStreamingFromReceiver(int enable=-1)=0;