QXRD  0.11.16
qxrddataprocessorthreaded.h
Go to the documentation of this file.
1 #ifndef QXRDDATAPROCESSORTHREADED_H
2 #define QXRDDATAPROCESSORTHREADED_H
3 
4 #include "qcepmacros.h"
5 
7 #include "qxrdresultserializer.h"
9 #include "qxrdroidata.h"
10 #include "qxrdroidata-ptr.h"
11 #include "qxrdhistogramdata.h"
12 #include "qxrdhistogramdata-ptr.h"
13 #include "qcepimagedata.h"
14 #include "qcepimagedata-ptr.h"
15 
17 {
18  Q_OBJECT
19 public:
23  QxrdFileSaverWPtr filesaver);
25 
26 public:
27  void beginAcquisition(int isDark);
28  void idleInt16Image(QcepInt16ImageDataPtr image, bool liveView);
33 
34 private slots:
37  void onROIDataAvailable();
39 
40 public slots:
41  void sumImages(QStringList names);
42  void addImages(QStringList names);
43  void subtractImages(QStringList names);
44  void projectImages(QStringList names, int px, int py, int pz);
45  void integrateData(QString name);
46  void correlateImages(QStringList names);
47 
48  void clearAccumulator();
49  void integrateAndAccumulate(QStringList names);
50  void saveAccumulator(QString &path, QString filter);
51 
52  void shiftImage(int dx, int dy);
53 
54  void reflectVertically();
55  void reflectHorizontally();
56 
57  void fitPeakNear(double x, double y);
58 
59  void processData(QString name);
60  void processDataSequence(QString path, QString filter="*.tif");
61  void processDataSequence(QStringList paths);
62  void processDataSequence(QString path, QStringList filter);
63  void processNormalizedFile(QString path, double v1);
64  void processNormalizedFile(QString path, double v1, double v2);
65  void processNormalizedFile(QString path, QcepDoubleList v);
66  void setFileNormalization(QString path, double v1);
67  void setFileNormalization(QString path, double v1, double v2);
68  void setFileNormalization(QString path, QcepDoubleList v);
69 
70  void slicePolygon(QVector<QPointF> poly);
72 
73  void fixupBadBackgroundSubtraction(QString imagePattern, int nImgExposures, QString darkPath, int nDarkExposures);
74 
75 private:
83 
84 private:
89 
90 protected:
91  double estimatedProcessingTime(double estSerTime, double estParallelTime);
92 };
93 
94 #endif // QXRDDATAPROCESSORTHREADED_H
void setFileNormalization(QString path, double v1)
QcepMaskDataPtr mask() const
QxrdResultSerializer< QxrdHistogramDataPtr > m_HistogramData
QxrdResultSerializer< QcepIntegratedDataPtr > m_IntegratedData
void acquiredDoubleImage(QcepDoubleImageDataPtr image, QcepMaskDataPtr overflow)
QxrdResultSerializer< QcepDoubleImageDataPtr > m_CorrectedImages
void processDataSequence(QString path, QString filter="*.tif")
void fixupBadBackgroundSubtraction(QString imagePattern, int nImgExposures, QString darkPath, int nDarkExposures)
void processNormalizedFile(QString path, double v1)
double estimatedProcessingTime(double estSerTime, double estParallelTime)
QxrdDataProcessorThreaded(QcepSettingsSaverWPtr saver, QxrdExperimentWPtr doc, QxrdAcquisitionWPtr acq, QxrdFileSaverWPtr filesaver)
QWeakPointer< QxrdExperiment > QxrdExperimentWPtr
QSharedPointer< QcepIntegratedData > QcepIntegratedDataPtr
void correlateImages(QStringList names)
void fitPeakNear(double x, double y)
QcepDoubleImageDataPtr correctInt16Image(QcepDoubleImageDataPtr corrected, QcepInt16ImageDataPtr image, QcepDoubleImageDataPtr dark, QcepMaskDataPtr mask, QcepMaskDataPtr overflow)
void integrateAndAccumulate(QStringList names)
QcepIntegratedDataPtr integrateImage(QcepIntegratedDataPtr integ, QcepDoubleImageDataPtr image, QcepMaskDataPtr mask, double cx, double cy)
QcepDoubleImageDataPtr correctInt32Image(QcepDoubleImageDataPtr corrected, QcepInt32ImageDataPtr image, QcepDoubleImageDataPtr dark, QcepMaskDataPtr mask, QcepMaskDataPtr overflow)
QSharedPointer< QxrdROIData > QxrdROIDataPtr
QcepDoubleImageDataPtr correctDoubleImage(QcepDoubleImageDataPtr corrected, QcepDoubleImageDataPtr image, QcepDoubleImageDataPtr dark, QcepMaskDataPtr mask, QcepMaskDataPtr overflow)
QWeakPointer< QxrdFileSaver > QxrdFileSaverWPtr
QList< double > QcepDoubleList
Definition: qcepmacros.h:28
void slicePolygon(QVector< QPointF > poly)
void projectImages(QStringList names, int px, int py, int pz)
void acquiredInt16Image(QcepInt16ImageDataPtr image, QcepMaskDataPtr overflow)
void idleInt16Image(QcepInt16ImageDataPtr image, bool liveView)
QxrdResultSerializer< QxrdROIDataPtr > m_ROIData
void subtractImages(QStringList names)
QWeakPointer< QxrdAcquisition > QxrdAcquisitionWPtr
QSharedPointer< QcepInt32ImageData > QcepInt32ImageDataPtr
QString name
Definition: qcepobject.h:49
QSharedPointer< QxrdHistogramData > QxrdHistogramDataPtr
void acquiredInt32Image(QcepInt32ImageDataPtr image, QcepMaskDataPtr overflow)
QSharedPointer< QcepInt16ImageData > QcepInt16ImageDataPtr
QSharedPointer< QcepMaskData > QcepMaskDataPtr
QcepMaskDataPtr overflow() const
QWeakPointer< QcepSettingsSaver > QcepSettingsSaverWPtr
void saveAccumulator(QString &path, QString filter)
QSharedPointer< QcepDoubleImageData > QcepDoubleImageDataPtr