mirror of
https://github.com/slsdetectorgroup/slsDetectorPackage.git
synced 2025-06-23 10:07:59 +02:00
slsReceiver: removed special receiver config, added rx_dbitlist, rx_dbitoffset to put bits together in file, connected adcinvert, extsamplingsrc and extsampling properly to the detector, added tests
This commit is contained in:
@ -236,6 +236,10 @@ class multiSlsDetector : public virtual slsDetectorDefs {
|
||||
*/
|
||||
int64_t getReceiverSoftwareVersion(int detPos = -1);
|
||||
|
||||
/**
|
||||
* Get Detector Number
|
||||
* @returns vector of detector number
|
||||
*/
|
||||
std::vector<int64_t> getDetectorNumber();
|
||||
/**
|
||||
* Free shared memory from the command line
|
||||
@ -438,6 +442,10 @@ class multiSlsDetector : public virtual slsDetectorDefs {
|
||||
*/
|
||||
int setReceiverPort(int port_number = -1, int detPos = -1);
|
||||
|
||||
/**
|
||||
* Get Receiver port
|
||||
* @returns vector of receiver port
|
||||
*/
|
||||
std::vector<int> getReceiverPort() const;
|
||||
|
||||
/**
|
||||
@ -1305,6 +1313,76 @@ class multiSlsDetector : public virtual slsDetectorDefs {
|
||||
*/
|
||||
uint32_t getADCEnableMask(int detPos = -1);
|
||||
|
||||
/**
|
||||
* Set ADC invert register (CTB, Moench)
|
||||
* @param value ADC invert value
|
||||
* @param detPos -1 for all detectors in list or specific detector position
|
||||
*/
|
||||
void setADCInvert(uint32_t value, int detPos = -1);
|
||||
|
||||
/**
|
||||
* Get ADC invert register (CTB, Moench)
|
||||
* @param detPos -1 for all detectors in list or specific detector position
|
||||
* @returns ADC invert value
|
||||
*/
|
||||
uint32_t getADCInvert(int detPos = -1);
|
||||
|
||||
/**
|
||||
* Set external sampling source (CTB only)
|
||||
* @param value external sampling source (Option: 0-63)
|
||||
* @param detPos -1 for all detectors in list or specific detector position
|
||||
*/
|
||||
void setExternalSamplingSource(int value, int detPos = -1);
|
||||
|
||||
/**
|
||||
* Get external sampling source (CTB only)
|
||||
* @param detPos -1 for all detectors in list or specific detector position
|
||||
* @returns external sampling source
|
||||
*/
|
||||
int getExternalSamplingSource(int detPos = -1);
|
||||
|
||||
/**
|
||||
* Set external sampling enable (CTB only)
|
||||
* @param value external sampling source (Option: 0-63)
|
||||
* @param detPos -1 for all detectors in list or specific detector position
|
||||
*/
|
||||
void setExternalSampling(bool value, int detPos = -1);
|
||||
|
||||
/**
|
||||
* Get external sampling source (CTB only)
|
||||
* @param detPos -1 for all detectors in list or specific detector position
|
||||
* @returns external sampling enable
|
||||
*/
|
||||
int getExternalSampling(int detPos = -1);
|
||||
|
||||
/**
|
||||
* Set external sampling enable (CTB only)
|
||||
* @param list external sampling source (Option: 0-63)
|
||||
* @param detPos -1 for all detectors in list or specific detector position
|
||||
*/
|
||||
void setReceiverDbitList(std::vector<int> list, int detPos = -1);
|
||||
|
||||
/**
|
||||
* Get external sampling source (CTB only)
|
||||
* @param detPos -1 for all detectors in list or specific detector position
|
||||
* @returns external sampling enable
|
||||
*/
|
||||
std::vector<int> getReceiverDbitList(int detPos = -1);
|
||||
|
||||
/**
|
||||
* Set digital data offset in bytes (CTB only)
|
||||
* @param value digital data offset in bytes
|
||||
* @param detPos -1 for all detectors in list or specific detector position
|
||||
*/
|
||||
void setReceiverDbitOffset(int value, int detPos = -1);
|
||||
|
||||
/**
|
||||
* Get digital data offset in bytes (CTB only)
|
||||
* @param detPos -1 for all detectors in list or specific detector position
|
||||
* @returns digital data offset in bytes
|
||||
*/
|
||||
int getReceiverDbitOffset(int detPos = -1);
|
||||
|
||||
/**
|
||||
* Write to ADC register (Gotthard, Jungfrau, ChipTestBoard). For expert
|
||||
* users
|
||||
|
@ -16,10 +16,8 @@ class multiSlsDetector;
|
||||
class ServerInterface;
|
||||
class MySocketTCP;
|
||||
|
||||
#define SLS_SHMVERSION 0x190430
|
||||
#define NCHIPSMAX 10
|
||||
#define NCHANSMAX 65536
|
||||
#define NDACSMAX 16
|
||||
#define SLS_SHMVERSION 0x190503
|
||||
#define MAX_RX_DBIT 64
|
||||
|
||||
|
||||
/**
|
||||
@ -245,6 +243,15 @@ struct sharedSlsDetector {
|
||||
|
||||
/** overwrite enable */
|
||||
bool rxFileOverWrite;
|
||||
|
||||
/** receiver dbit size */
|
||||
int rxDbitListSize;
|
||||
|
||||
/** receiver dbit list */
|
||||
int rxDbitList[MAX_RX_DBIT];
|
||||
|
||||
/** reciever dbit offset */
|
||||
int rxDbitOffset;
|
||||
|
||||
};
|
||||
|
||||
@ -1218,6 +1225,77 @@ class slsDetector : public virtual slsDetectorDefs{
|
||||
* @returns ADC Enable mask
|
||||
*/
|
||||
uint32_t getADCEnableMask();
|
||||
|
||||
/**
|
||||
* Set ADC invert register (CTB, Moench)
|
||||
* @param value ADC invert value
|
||||
* @param detPos -1 for all detectors in list or specific detector position
|
||||
*/
|
||||
void setADCInvert(uint32_t value);
|
||||
|
||||
/**
|
||||
* Get ADC invert register (CTB, Moench)
|
||||
* @param detPos -1 for all detectors in list or specific detector position
|
||||
* @returns ADC invert value
|
||||
*/
|
||||
uint32_t getADCInvert();
|
||||
|
||||
/**
|
||||
* Set external sampling source (CTB only)
|
||||
* @param value external sampling source (Option: 0-63)
|
||||
* @param detPos -1 for all detectors in list or specific detector position
|
||||
* @returns external sampling source
|
||||
*/
|
||||
int setExternalSamplingSource(int value);
|
||||
|
||||
/**
|
||||
* Get external sampling source (CTB only)
|
||||
* @param detPos -1 for all detectors in list or specific detector position
|
||||
* @returns external sampling source
|
||||
*/
|
||||
int getExternalSamplingSource();
|
||||
|
||||
/**
|
||||
* Set external sampling enable (CTB only)
|
||||
* @param value external sampling source (Option: 0-63)
|
||||
* @param detPos -1 for all detectors in list or specific detector position
|
||||
* @returns external sampling enable
|
||||
*/
|
||||
int setExternalSampling(int value);
|
||||
|
||||
/**
|
||||
* Get external sampling source (CTB only)
|
||||
* @param detPos -1 for all detectors in list or specific detector position
|
||||
* @returns external sampling enable
|
||||
*/
|
||||
int getExternalSampling();
|
||||
|
||||
/**
|
||||
* Set external sampling enable (CTB only)
|
||||
* @param list external sampling source (Option: 0-63)
|
||||
* @param detPos -1 for all detectors in list or specific detector position
|
||||
*/
|
||||
void setReceiverDbitList(std::vector<int> list);
|
||||
|
||||
/**
|
||||
* Get external sampling source (CTB only)
|
||||
* @param detPos -1 for all detectors in list or specific detector position
|
||||
* @returns external sampling enable
|
||||
*/
|
||||
std::vector<int> getReceiverDbitList();
|
||||
|
||||
/**
|
||||
* Set digital data offset in bytes (CTB only)
|
||||
* @param value digital data offset in bytes
|
||||
* @returns digital data offset in bytes
|
||||
*/
|
||||
int setReceiverDbitOffset(int value);
|
||||
|
||||
/**
|
||||
* Get digital data offset in bytes (CTB only)
|
||||
* @returns digital data offset in bytes
|
||||
*/
|
||||
int getReceiverDbitOffset();
|
||||
|
||||
/**
|
||||
* Write to ADC register (Gotthard, Jungfrau, ChipTestBoard). For expert users
|
||||
|
Reference in New Issue
Block a user