mirror of
https://github.com/slsdetectorgroup/slsDetectorPackage.git
synced 2025-06-07 10:30:41 +02:00
WIP
This commit is contained in:
parent
eaf0d8668b
commit
ca2c284017
@ -295,28 +295,32 @@ class Detector {
|
||||
void setReadNLines(const int value, Positions pos = {});
|
||||
|
||||
/**
|
||||
* Get Detector Control TCP port (for client communication with Detector control server)
|
||||
* Get Detector Control TCP port (for client communication with Detector
|
||||
* control server)
|
||||
* @param pos detector position
|
||||
* @returns control TCP port
|
||||
*/
|
||||
Result<int> getControlPort(Positions pos = {}) const;
|
||||
|
||||
/**
|
||||
* Set Detector Control TCP port (for client communication with Detector control server)
|
||||
* Set Detector Control TCP port (for client communication with Detector
|
||||
* control server)
|
||||
* @param value port number
|
||||
* @param pos detector position
|
||||
*/
|
||||
void setControlPort(int value, Positions pos = {});
|
||||
|
||||
/**
|
||||
* Get Detector Stop TCP port (for client communication with Detector Stop server)
|
||||
* Get Detector Stop TCP port (for client communication with Detector Stop
|
||||
* server)
|
||||
* @param pos detector position
|
||||
* @returns Stop TCP port
|
||||
*/
|
||||
Result<int> getStopPort(Positions pos = {}) const;
|
||||
|
||||
/**
|
||||
* Set Detector Stop TCP port (for client communication with Detector Stop server)
|
||||
* Set Detector Stop TCP port (for client communication with Detector Stop
|
||||
* server)
|
||||
* @param value port number
|
||||
* @param pos detector position
|
||||
*/
|
||||
@ -336,6 +340,39 @@ class Detector {
|
||||
*/
|
||||
void setReceiverPort(int value, Positions pos = {});
|
||||
|
||||
/**
|
||||
* Gets Lock for detector control server to this client IP
|
||||
* @param pos detector position
|
||||
* @returns lock
|
||||
*/
|
||||
Result<bool> getLockServer(Positions pos = {});
|
||||
|
||||
/**
|
||||
* Sets Lock for detector control server to this client IP
|
||||
* @param value lock
|
||||
* @param pos detector position
|
||||
*/
|
||||
void setLockServer(bool value, Positions pos = {});
|
||||
|
||||
/**
|
||||
* Get last client IP saved on detector server
|
||||
* @param pos detector position
|
||||
* @returns last client IP saved on detector server
|
||||
*/
|
||||
Result<std::string> getLastClientIP(Positions pos = {});
|
||||
|
||||
/**
|
||||
* Exit detector server
|
||||
* @param pos detector position
|
||||
*/
|
||||
void exitServer(Positions pos = {});
|
||||
|
||||
/**
|
||||
* Execute a command on the detector server
|
||||
* @param value command
|
||||
* @param pos detector position
|
||||
*/
|
||||
void execCommand(const std::string &value, Positions pos = {});
|
||||
|
||||
// Erik
|
||||
|
||||
@ -524,14 +561,13 @@ class Detector {
|
||||
|
||||
void printReceiverConfiguration(Positions pos = {}) const;
|
||||
|
||||
|
||||
/** [Eiger]
|
||||
* @returns deadtime in ns, 0 = disabled
|
||||
*/
|
||||
Result<int64_t> getRateCorrection(Positions pos = {}) const;
|
||||
|
||||
/**
|
||||
* [Eiger] Set Rate correction
|
||||
* [Eiger] Set Rate correction
|
||||
* 0 disable correction, <0 set to default, >0 deadtime in ns
|
||||
*/
|
||||
void setRateCorrection(int64_t dead_time_ns, Positions pos = {});
|
||||
|
@ -557,27 +557,27 @@ class multiSlsDetector : public virtual slsDetectorDefs {
|
||||
* @param detPos -1 for all detectors in list or specific detector position
|
||||
* @returns 1 for locked or 0 for unlocked
|
||||
*/
|
||||
int lockServer(int p = -1, int detPos = -1);
|
||||
int lockServer(int p = -1, int detPos = -1);//
|
||||
|
||||
/**
|
||||
* Get last client IP saved on detector server
|
||||
* @param detPos -1 for all detectors in list or specific detector position
|
||||
* @returns last client IP saved on detector server
|
||||
*/
|
||||
std::string getLastClientIP(int detPos = -1);
|
||||
std::string getLastClientIP(int detPos = -1);//
|
||||
|
||||
/**
|
||||
* Exit detector server
|
||||
* @param detPos -1 for all detectors in list or specific detector position
|
||||
*/
|
||||
void exitServer(int detPos = -1);
|
||||
void exitServer(int detPos = -1);//
|
||||
|
||||
/**
|
||||
* Execute a command on the detector server
|
||||
* @param cmd command
|
||||
* @param detPos -1 for all detectors in list or specific detector position
|
||||
*/
|
||||
void execCommand(const std::string &cmd, int detPos);
|
||||
void execCommand(const std::string &cmd, int detPos);//
|
||||
|
||||
/**
|
||||
* Load configuration from a configuration File
|
||||
|
@ -484,9 +484,9 @@ class slsDetector : public virtual slsDetectorDefs {
|
||||
/**
|
||||
* Lock server for this client IP
|
||||
* @param p 0 to unlock, 1 to lock (-1 gets)
|
||||
* @returns 1 for locked or 0 for unlocked
|
||||
* @returns true for locked or false for unlocked
|
||||
*/
|
||||
int lockServer(int lock = -1);
|
||||
bool lockServer(int lock = -1);
|
||||
|
||||
/**
|
||||
* Get last client IP saved on detector server
|
||||
|
@ -210,7 +210,8 @@ Result<defs::coordinates> Detector::getDetectorOffsets(Positions pos) const {
|
||||
|
||||
void Detector::setDetectorOffsets(defs::coordinates value, Positions pos) {
|
||||
pimpl->Parallel(&slsDetector::setDetectorOffsets, pos, value);
|
||||
//pimpl->Parallel<defs::coordinates>(&slsDetector::setDetectorOffset, pos, value);
|
||||
// pimpl->Parallel<defs::coordinates>(&slsDetector::setDetectorOffset, pos,
|
||||
// value);
|
||||
}
|
||||
|
||||
Result<bool> Detector::getQuad(Positions pos) const {
|
||||
@ -253,6 +254,25 @@ void Detector::setReceiverPort(int value, Positions pos) {
|
||||
pimpl->Parallel(&slsDetector::setReceiverPort, pos, value);
|
||||
}
|
||||
|
||||
Result<bool> Detector::getLockServer(Positions pos) {
|
||||
return pimpl->Parallel(&slsDetector::lockServer, pos, -1);
|
||||
}
|
||||
|
||||
void Detector::setLockServer(bool value, Positions pos) {
|
||||
pimpl->Parallel(&slsDetector::lockServer, pos, static_cast<int>(value));
|
||||
}
|
||||
|
||||
Result<std::string> Detector::getLastClientIP(Positions pos) {
|
||||
return pimpl->Parallel(&slsDetector::getLastClientIP, pos);
|
||||
}
|
||||
|
||||
void Detector::exitServer(Positions pos) {
|
||||
pimpl->Parallel(&slsDetector::exitServer, pos);
|
||||
}
|
||||
|
||||
void Detector::execCommand(const std::string &value, Positions pos) {
|
||||
pimpl->Parallel(&slsDetector::execCommand, pos, value);
|
||||
}
|
||||
|
||||
// Erik
|
||||
Result<int> Detector::getFramesCaughtByReceiver(Positions pos) const {
|
||||
|
@ -761,12 +761,12 @@ int slsDetector::getControlPort() const { return shm()->controlPort; }
|
||||
|
||||
int slsDetector::getStopPort() const { return shm()->stopPort; }
|
||||
|
||||
int slsDetector::lockServer(int lock) {
|
||||
bool slsDetector::lockServer(int lock) {
|
||||
int retval = -1;
|
||||
FILE_LOG(logDEBUG1) << "Setting detector server lock to " << lock;
|
||||
sendToDetector(F_LOCK_SERVER, lock, retval);
|
||||
FILE_LOG(logDEBUG1) << "Lock: " << retval;
|
||||
return retval;
|
||||
return (retval == 1 ? true : false);
|
||||
}
|
||||
|
||||
std::string slsDetector::getLastClientIP() {
|
||||
|
Loading…
x
Reference in New Issue
Block a user