mirror of
https://github.com/slsdetectorgroup/slsDetectorPackage.git
synced 2025-06-12 21:07:13 +02:00
eiger server: quad, interrupt subframe, reg left and right (#45)
* eiger server: quad, interrupt subframe, reg left and right * eiger server: beb can fail in setting up quad, quad and gap pixels
This commit is contained in:

committed by
Erik Fröjdh

parent
e17de0609c
commit
d72b6c3659
@ -39,6 +39,7 @@ class DataProcessor : private virtual slsDetectorDefs, public ThreadObject {
|
||||
* @param act pointer to activated
|
||||
* @param depaden pointer to deactivated padding enable
|
||||
* @param sm pointer to silent mode
|
||||
* @param qe pointer to quad Enable
|
||||
* @param cdl pointer to vector or ctb digital bits enable
|
||||
* @param cdo pointer to digital bits offset
|
||||
* @param cad pointer to ctb analog databytes
|
||||
@ -46,7 +47,7 @@ class DataProcessor : private virtual slsDetectorDefs, public ThreadObject {
|
||||
DataProcessor(int ind, detectorType dtype, Fifo* f, fileFormat* ftype,
|
||||
bool fwenable, bool* mfwenable, bool* dsEnable, bool* gpEnable, uint32_t* dr,
|
||||
uint32_t* freq, uint32_t* timer,
|
||||
bool* fp, bool* act, bool* depaden, bool* sm,
|
||||
bool* fp, bool* act, bool* depaden, bool* sm, bool* qe,
|
||||
std::vector <int> * cdl, int* cdo, int* cad);
|
||||
|
||||
/**
|
||||
@ -368,6 +369,9 @@ class DataProcessor : private virtual slsDetectorDefs, public ThreadObject {
|
||||
/** Silent Mode */
|
||||
bool* silentMode;
|
||||
|
||||
/** quad enable */
|
||||
bool* quadEnable;
|
||||
|
||||
/** frame padding */
|
||||
bool* framePadding;
|
||||
|
||||
|
@ -178,8 +178,10 @@ public:
|
||||
/**
|
||||
* Enable Gap Pixels changes member variables
|
||||
* @param enable true if gap pixels enable, else false
|
||||
* @param dr dynamic range
|
||||
* @param q quad enable
|
||||
*/
|
||||
virtual void SetGapPixelsEnable(bool b, int dr) {
|
||||
virtual void SetGapPixelsEnable(bool b, int dr, bool q) {
|
||||
FILE_LOG(logERROR) << "SetGapPixelsEnable is a generic function that should be overloaded by a derived class";
|
||||
};
|
||||
|
||||
@ -463,13 +465,17 @@ class EigerData : public GeneralData {
|
||||
* Enable Gap Pixels changes member variables
|
||||
* @param enable true if gap pixels enable, else false
|
||||
* @param dr dynamic range
|
||||
* @param q quad enable
|
||||
*/
|
||||
void SetGapPixelsEnable(bool b, int dr) {
|
||||
void SetGapPixelsEnable(bool b, int dr, bool q) {
|
||||
if (dr == 4)
|
||||
b = 0;
|
||||
switch((int)b) {
|
||||
case 1:
|
||||
nPixelsX = (256 * 2) + 3;
|
||||
if (q) {
|
||||
nPixelsX = (256 * 2) + 2;
|
||||
}
|
||||
nPixelsY = 256 + 1;
|
||||
imageSize = nPixelsX * nPixelsY * ((dr > 16) ? 4 : // 32 bit
|
||||
((dr > 8) ? 2 : // 16 bit
|
||||
|
@ -399,8 +399,9 @@ class slsReceiverImplementation : private virtual slsDetectorDefs {
|
||||
/**
|
||||
* Set Quad type Enable (eiger and hardware specific)
|
||||
* @param true if quad enabled, else false
|
||||
* @return OK or FAIL
|
||||
*/
|
||||
void setQuad(const bool b);
|
||||
int setQuad(const bool b);
|
||||
|
||||
/**
|
||||
* Set readout flags (eiger, chiptestboard, moench)
|
||||
|
Reference in New Issue
Block a user