mirror of
https://github.com/slsdetectorgroup/slsDetectorPackage.git
synced 2025-06-23 01:58:00 +02:00
fifo fill level included
This commit is contained in:
@ -13,6 +13,8 @@
|
||||
|
||||
#include <string>
|
||||
|
||||
class Fifo;
|
||||
|
||||
class BinaryFile : private virtual slsReceiverDefs, public File, public BinaryFileStatic {
|
||||
|
||||
public:
|
||||
@ -33,11 +35,12 @@ class BinaryFile : private virtual slsReceiverDefs, public File, public BinaryFi
|
||||
* @param nf pointer to number of images in acquisition
|
||||
* @param dr pointer to dynamic range
|
||||
* @param portno pointer to udp port number for logging
|
||||
* @param fifo for logging fill level
|
||||
*/
|
||||
BinaryFile(int ind, uint32_t maxf, const uint32_t* ppf,
|
||||
int* nd, char* fname, char* fpath, uint64_t* findex,
|
||||
bool* frindexenable, bool* owenable,
|
||||
int* dindex, int* nunits, uint64_t* nf, uint32_t* dr, uint32_t* portno);
|
||||
int* dindex, int* nunits, uint64_t* nf, uint32_t* dr, uint32_t* portno, Fifo*& f);
|
||||
|
||||
/**
|
||||
* Destructor
|
||||
|
@ -61,6 +61,12 @@ class Fifo : private virtual slsReceiverDefs {
|
||||
*/
|
||||
void PopAddressToStream(char*& address);
|
||||
|
||||
/**
|
||||
* Get Maximum Level filled in Fifo Bound
|
||||
* and reset this value for next intake
|
||||
*/
|
||||
int GetMaxLevelForFifoBound();
|
||||
|
||||
private:
|
||||
|
||||
/**
|
||||
@ -94,4 +100,6 @@ class Fifo : private virtual slsReceiverDefs {
|
||||
|
||||
/** Circular Fifo pointing to addresses of to be streamed data in memory */
|
||||
CircularFifo<char>* fifoStream;
|
||||
|
||||
int status_fifoBound;
|
||||
};
|
||||
|
@ -13,6 +13,8 @@
|
||||
|
||||
#include <string>
|
||||
|
||||
class Fifo;
|
||||
|
||||
class File : private virtual slsReceiverDefs {
|
||||
|
||||
public:
|
||||
@ -33,11 +35,12 @@ class File : private virtual slsReceiverDefs {
|
||||
* @param nf pointer to number of images in acquisition
|
||||
* @param dr pointer to dynamic range
|
||||
* @param portno pointer to udp port number for logging
|
||||
* @param fifo for logging fill level
|
||||
*/
|
||||
File(int ind, uint32_t maxf, const uint32_t* ppf,
|
||||
int* nd, char* fname, char* fpath, uint64_t* findex,
|
||||
bool* frindexenable, bool* owenable,
|
||||
int* dindex, int* nunits, uint64_t* nf, uint32_t* dr, uint32_t* portno);
|
||||
int* dindex, int* nunits, uint64_t* nf, uint32_t* dr, uint32_t* portno, Fifo*& f);
|
||||
|
||||
/**
|
||||
* Destructor
|
||||
@ -91,6 +94,13 @@ class File : private virtual slsReceiverDefs {
|
||||
*/
|
||||
void SetPacketsPerFrame(const uint32_t* ppf);
|
||||
|
||||
/**
|
||||
* Set Fifo for logging fill level
|
||||
* @param f fifo reference
|
||||
*/
|
||||
void SetFifo(Fifo*& f);
|
||||
|
||||
|
||||
/**
|
||||
* Create file
|
||||
* @param fnum current frame index to include in file name
|
||||
@ -218,5 +228,8 @@ class File : private virtual slsReceiverDefs {
|
||||
/** UDP Port Number for logging */
|
||||
uint32_t* udpPortNumber;
|
||||
|
||||
/** Fifo structure for logging fill level*/
|
||||
Fifo* fifo;
|
||||
|
||||
};
|
||||
|
||||
|
@ -19,6 +19,8 @@
|
||||
#endif
|
||||
#include <string>
|
||||
|
||||
class Fifo;
|
||||
|
||||
class HDF5File : private virtual slsReceiverDefs, public File, public HDF5FileStatic {
|
||||
|
||||
public:
|
||||
@ -41,12 +43,13 @@ class HDF5File : private virtual slsReceiverDefs, public File, public HDF5FileSt
|
||||
* @param portno pointer to udp port number for logging
|
||||
* @param nx number of pixels in x direction
|
||||
* @param ny number of pixels in y direction
|
||||
* @param fifo for logging fill level
|
||||
*/
|
||||
HDF5File(int ind, uint32_t maxf, const uint32_t* ppf,
|
||||
int* nd, char* fname, char* fpath, uint64_t* findex,
|
||||
bool* frindexenable, bool* owenable,
|
||||
int* dindex, int* nunits, uint64_t* nf, uint32_t* dr, uint32_t* portno,
|
||||
uint32_t nx, uint32_t ny);
|
||||
uint32_t nx, uint32_t ny, Fifo*& f);
|
||||
|
||||
/**
|
||||
* Destructor
|
||||
|
Reference in New Issue
Block a user