mirror of
https://github.com/slsdetectorgroup/slsDetectorPackage.git
synced 2025-06-23 18:17:59 +02:00
WIP, new eiger serveR
This commit is contained in:
@ -495,7 +495,115 @@ class Detector {
|
||||
* @param pos detector position
|
||||
*/
|
||||
void configureMAC(Positions pos = {});
|
||||
|
||||
|
||||
/**
|
||||
* Get number of Frames
|
||||
* @returns number of Frames
|
||||
*/
|
||||
Result<int64_t> getNumberOfFrames() const;
|
||||
|
||||
/**
|
||||
* Set number of Frames
|
||||
* @param value number of Frames
|
||||
*/
|
||||
void setNumberOfFrames(int64_t value);
|
||||
|
||||
/**
|
||||
* Get number of Cycles
|
||||
* @returns number of Cycles
|
||||
*/
|
||||
Result<int64_t> getNumberOfCycles() const;
|
||||
|
||||
/**
|
||||
* Set number of Cycles
|
||||
* @param value number of Cycles
|
||||
*/
|
||||
void setNumberOfCycles(int64_t value);
|
||||
|
||||
/**
|
||||
* Get number of additional storage cells (Jungfrau)
|
||||
* @returns number of additional storage cells
|
||||
*/
|
||||
Result<int64_t> getNumberOfStorageCells() const;
|
||||
|
||||
/**
|
||||
* Set number of additional storage cells (Jungfrau)
|
||||
* @param value number of additional storage cells
|
||||
*/
|
||||
void setNumberOfStorageCells(int64_t value);
|
||||
|
||||
/**
|
||||
* Get number of analog samples (CTB)
|
||||
* @param pos detector position
|
||||
* @returns number of analog samples
|
||||
*/
|
||||
Result<int64_t> getNumberOfAnalogSamples(Positions pos = {}) const;
|
||||
|
||||
/**
|
||||
* Set number of analog samples (CTB)
|
||||
* @param value number of analog samples (CTB)
|
||||
* @param pos detector position
|
||||
*/
|
||||
void setNumberOfAnalogSamples(int64_t value, Positions pos = {});
|
||||
|
||||
/**
|
||||
* Get number of digital samples (CTB)
|
||||
* @param pos detector position
|
||||
* @returns number of digital samples
|
||||
*/
|
||||
Result<int64_t> getNumberOfDigitalSamples(Positions pos = {}) const;
|
||||
|
||||
/**
|
||||
* Set number of digital samples (CTB)
|
||||
* @param value number of digital samples (CTB)
|
||||
* @param pos detector position
|
||||
*/
|
||||
void setNumberOfDigitalSamples(int64_t value, Positions pos = {});
|
||||
|
||||
/**
|
||||
* Get delay after trigger in ns(Gotthard, Jungfrau)
|
||||
* @param pos detector position
|
||||
* @returns delay after trigger in ns
|
||||
*/
|
||||
Result<ns> getDelayAfterTrigger(Positions pos = {}) const;
|
||||
|
||||
/**
|
||||
* Set delay after trigger (Gotthard, Jungfrau)
|
||||
* @param value delay after trigger in ns
|
||||
* @param pos detector position
|
||||
*/
|
||||
void setDelayAfterTrigger(ns value, Positions pos = {});
|
||||
|
||||
/**
|
||||
* Get sub frame dead time in ns (Eiger in 32 bit mode)
|
||||
* @param pos detector position
|
||||
* @returns delay after trigger in ns
|
||||
*/
|
||||
Result<ns> getSubFrameDeadTime(Positions pos = {}) const;
|
||||
|
||||
/**
|
||||
* Set sub frame dead time after trigger (Eiger in 32 bit mode)
|
||||
* @param value delay after trigger in ns
|
||||
* @param pos detector position
|
||||
*/
|
||||
void setSubFrameDeadTime(ns value, Positions pos = {});
|
||||
|
||||
/**
|
||||
* Get storage cell delay (Jungfrau)
|
||||
* @param pos detector position
|
||||
* @returns storage cell delay in ns. Range: (0-1638375 ns (resolution of
|
||||
* 25ns)
|
||||
*/
|
||||
Result<ns> getStorageCellDelay(Positions pos = {}) const;
|
||||
|
||||
/**
|
||||
* Set storage cell delay (Jungfrau)
|
||||
* @param value storage cell delay in ns. Range: (0-1638375 ns (resolution
|
||||
* of 25ns)
|
||||
* @param pos detector position
|
||||
*/
|
||||
void setStorageCellDelay(ns value, Positions pos = {});
|
||||
|
||||
// Erik
|
||||
|
||||
Result<int> getFramesCaughtByReceiver(Positions pos = {}) const;
|
||||
|
@ -15,7 +15,7 @@ class detectorData;
|
||||
#include <thread>
|
||||
#include <vector>
|
||||
|
||||
#define MULTI_SHMAPIVERSION 0x190807
|
||||
#define MULTI_SHMAPIVERSION 0x190809
|
||||
#define MULTI_SHMVERSION 0x190807
|
||||
#define SHORT_STRING_LENGTH 50
|
||||
#define DATE_LENGTH 30
|
||||
@ -84,9 +84,6 @@ struct sharedMultiSlsDetector {
|
||||
* one dimension */
|
||||
int maxNumberOfChannelsPerDetector[2];
|
||||
|
||||
/** timer values */
|
||||
int64_t timerValue[slsDetectorDefs::timerIndex::MAX_TIMERS];
|
||||
|
||||
/** flag for acquiring */
|
||||
bool acquiringFlag;
|
||||
|
||||
@ -712,7 +709,7 @@ class multiSlsDetector : public virtual slsDetectorDefs {
|
||||
* Configures in detector the destination for UDP packets
|
||||
* @param detPos -1 for all detectors in list or specific detector position
|
||||
*/
|
||||
void configureMAC(int detPos = -1);
|
||||
void configureMAC(int detPos = -1); //
|
||||
|
||||
/**
|
||||
* Set starting frame number for the next acquisition
|
||||
@ -731,12 +728,12 @@ class multiSlsDetector : public virtual slsDetectorDefs {
|
||||
/**
|
||||
* Set/get timer value (not all implemented for all detectors)
|
||||
* @param index timer index
|
||||
* @param t time in ns or number of...(e.g. frames, gates, probes)
|
||||
* @param t time in ns or number of...(e.g. frames, probes)
|
||||
* @param detPos -1 for all detectors in list or specific detector position
|
||||
* @returns timer set value in ns or number of...(e.g. frames, gates,
|
||||
* @returns timer set value in ns or number of...(e.g. frames,
|
||||
* probes)
|
||||
*/
|
||||
int64_t setTimer(timerIndex index, int64_t t = -1, int detPos = -1);
|
||||
int64_t setTimer(timerIndex index, int64_t t = -1, int detPos = -1); //
|
||||
|
||||
/**
|
||||
* Set/get exposure time
|
||||
@ -766,7 +763,7 @@ class multiSlsDetector : public virtual slsDetectorDefs {
|
||||
* @returns delay after trigger in ns, or s if specified
|
||||
*/
|
||||
double setDelayAfterTrigger(double t = -1, bool inseconds = false,
|
||||
int detPos = -1);
|
||||
int detPos = -1);//
|
||||
|
||||
/**
|
||||
* (Advanced users)
|
||||
@ -788,7 +785,7 @@ class multiSlsDetector : public virtual slsDetectorDefs {
|
||||
* @returns sub frame dead time in ns, or s if specified
|
||||
*/
|
||||
double setSubFrameExposureDeadTime(double t = -1, bool inseconds = false,
|
||||
int detPos = -1);
|
||||
int detPos = -1);//
|
||||
|
||||
/**
|
||||
* Set/get number of frames
|
||||
@ -796,7 +793,7 @@ class multiSlsDetector : public virtual slsDetectorDefs {
|
||||
* @param detPos -1 for all detectors in list or specific detector position
|
||||
* @returns number of frames
|
||||
*/
|
||||
int64_t setNumberOfFrames(int64_t t = -1, int detPos = -1);
|
||||
int64_t setNumberOfFrames(int64_t t = -1, int detPos = -1);//
|
||||
|
||||
/**
|
||||
* Set/get number of cycles
|
||||
@ -804,15 +801,7 @@ class multiSlsDetector : public virtual slsDetectorDefs {
|
||||
* @param detPos -1 for all detectors in list or specific detector position
|
||||
* @returns number of cycles
|
||||
*/
|
||||
int64_t setNumberOfCycles(int64_t t = -1, int detPos = -1);
|
||||
|
||||
/**
|
||||
* Set/get number of gates (none of the detectors at the moment)
|
||||
* @param t number of gates (-1 gets)
|
||||
* @param detPos -1 for all detectors in list or specific detector position
|
||||
* @returns number of gates
|
||||
*/
|
||||
int64_t setNumberOfGates(int64_t t = -1, int detPos = -1);
|
||||
int64_t setNumberOfCycles(int64_t t = -1, int detPos = -1);//
|
||||
|
||||
/**
|
||||
* Set/get number of additional storage cells (Jungfrau)
|
||||
@ -820,7 +809,7 @@ class multiSlsDetector : public virtual slsDetectorDefs {
|
||||
* @param detPos -1 for all detectors in list or specific detector position
|
||||
* @returns number of additional storage cells
|
||||
*/
|
||||
int64_t setNumberOfStorageCells(int64_t t = -1, int detPos = -1);
|
||||
int64_t setNumberOfStorageCells(int64_t t = -1, int detPos = -1);//
|
||||
|
||||
/**
|
||||
* Get measured period between previous two frames (EIGER)
|
||||
@ -844,9 +833,9 @@ class multiSlsDetector : public virtual slsDetectorDefs {
|
||||
* Set/get timer value left in acquisition (not all implemented for all
|
||||
* detectors)
|
||||
* @param index timer index
|
||||
* @param t time in ns or number of...(e.g. frames, gates, probes)
|
||||
* @param t time in ns or number of...(e.g. frames, probes)
|
||||
* @param detPos -1 for all detectors in list or specific detector position
|
||||
* @returns timer set value in ns or number of...(e.g. frames, gates,
|
||||
* @returns timer set value in ns or number of...(e.g. frames,
|
||||
* probes)
|
||||
*/
|
||||
int64_t getTimeLeft(timerIndex index, int detPos = -1);
|
||||
|
@ -658,8 +658,8 @@ class slsDetector : public virtual slsDetectorDefs {
|
||||
/**
|
||||
* Set/get timer value (not all implemented for all detectors)
|
||||
* @param index timer index
|
||||
* @param t time in ns or number of...(e.g. frames, gates, probes)
|
||||
* @returns timer set value in ns or number of...(e.g. frames, gates,
|
||||
* @param t time in ns or number of...(e.g. frames, probes)
|
||||
* @returns timer set value in ns or number of...(e.g. frames,
|
||||
* probes)
|
||||
*/
|
||||
int64_t setTimer(timerIndex index, int64_t t = -1);
|
||||
@ -668,8 +668,8 @@ class slsDetector : public virtual slsDetectorDefs {
|
||||
* Set/get timer value left in acquisition (not all implemented for all
|
||||
* detectors)
|
||||
* @param index timer index
|
||||
* @param t time in ns or number of...(e.g. frames, gates, probes)
|
||||
* @returns timer set value in ns or number of...(e.g. frames, gates,
|
||||
* @param t time in ns or number of...(e.g. frames, probes)
|
||||
* @returns timer set value in ns or number of...(e.g. frames,
|
||||
* probes)
|
||||
*/
|
||||
int64_t getTimeLeft(timerIndex index) const;
|
||||
|
@ -358,14 +358,6 @@ public:
|
||||
*/
|
||||
int64_t setNumberOfCycles(int64_t t = -1, int detPos = -1);
|
||||
|
||||
/**
|
||||
* Set/get number of gates (none of the detectors at the moment)
|
||||
* @param t number of gates (-1 gets)
|
||||
* @param detPos -1 for all detectors in list or specific detector position
|
||||
* @returns number of gates
|
||||
*/
|
||||
int64_t setNumberOfGates(int64_t t = -1, int detPos = -1);
|
||||
|
||||
/**
|
||||
* Set/get number of additional storage cells (Jungfrau)
|
||||
* @param t number of additional storage cells. Default is 0. (-1 gets)
|
||||
@ -396,7 +388,7 @@ public:
|
||||
* Set/get timing mode
|
||||
* @param pol timing mode (-1 gets)
|
||||
* Options (slsDetectorDefs::externalCommunicationMode)
|
||||
* (Eiger: AUTO_TIMING, TRIGGER_EXPOSURE, BURST_TRIGGER, GATE_FIX_NUMBER)
|
||||
* (Eiger: AUTO_TIMING, TRIGGER_EXPOSURE, BURST_TRIGGER, GATED)
|
||||
* (Jungfrau: AUTO_TIMING, TRIGGER_EXPOSURE)
|
||||
* (Gotthard: AUTO_TIMING, TRIGGER_EXPOSURE)
|
||||
* @param detPos -1 for all detectors in list or specific detector position
|
||||
|
Reference in New Issue
Block a user