1 #ifndef QXRDACQUISITION_H
2 #define QXRDACQUISITION_H
13 #if QT_VERSION >= 0x040700
14 #include <QElapsedTimer>
56 void printMessage(QString msg, QDateTime ts=QDateTime::currentDateTime())
const;
57 void criticalMessage(QString msg, QDateTime ts=QDateTime::currentDateTime())
const;
58 void statusMessage(QString msg, QDateTime ts=QDateTime::currentDateTime())
const;
148 Q_PROPERTY(QString
qtVersion READ get_QtVersion STORED false)
151 Q_PROPERTY(
int detectorCount READ get_DetectorCount WRITE set_DetectorCount)
154 Q_PROPERTY(
int lastAcquired READ get_LastAcquired WRITE set_LastAcquired STORED false)
157 Q_PROPERTY(
int fileIndex READ get_FileIndex WRITE set_FileIndex)
172 Q_PROPERTY(QString fileBase READ get_FileBase WRITE set_FileBase)
175 Q_PROPERTY(
int overflowLevel READ get_OverflowLevel WRITE set_OverflowLevel)
178 Q_PROPERTY(
double raw16SaveTime READ get_Raw16SaveTime WRITE set_Raw16SaveTime)
181 Q_PROPERTY(
double raw32SaveTime READ get_Raw32SaveTime WRITE set_Raw32SaveTime)
184 Q_PROPERTY(
double rawSaveTime READ get_RawSaveTime WRITE set_RawSaveTime)
187 Q_PROPERTY(
double darkSaveTime READ get_DarkSaveTime WRITE set_DarkSaveTime)
190 Q_PROPERTY(QString
userComment1 READ get_UserComment1 WRITE set_UserComment1)
193 Q_PROPERTY(QString
userComment2 READ get_UserComment2 WRITE set_UserComment2)
196 Q_PROPERTY(QString
userComment3 READ get_UserComment3 WRITE set_UserComment3)
199 Q_PROPERTY(QString
userComment4 READ get_UserComment4 WRITE set_UserComment4)
205 Q_PROPERTY(
int droppedFrames READ get_DroppedFrames WRITE set_DroppedFrames STORED false)
214 Q_PROPERTY(
bool retryDropped READ get_RetryDropped WRITE set_RetryDropped)
QSharedPointer< QxrdDetectorProxy > QxrdDetectorProxyPtr
void indicateDroppedFrame(int n)
QWeakPointer< QxrdDataProcessor > QxrdDataProcessorWPtr
QVector< QxrdDetectorPtr > m_Detectors
QxrdSynchronizedAcquisitionPtr m_SynchronizedAcquisition
QxrdDataProcessorWPtr m_DataProcessor
QxrdExperimentWPtr experiment()
QSharedPointer< QxrdAcquisition > QxrdAcquisitionPtr
#define QCEP_DOUBLE_PROPERTY(propname)
void getFileBaseAndName(QString filePattern, QString extent, int detNum, int fileIndex, int phase, int nphases, QString &fileBase, QString &fileName)
QString currentFileBase(int detNum, QString extension="")
void detectorStateChanged()
void statusMessage(QString msg, QDateTime ts=QDateTime::currentDateTime()) const
void copyParameters(int isDark)
QxrdAcquisitionScalerModelPtr m_ScalerModel
void configureDetector(int i)
bool acquisitionCancelsLiveView
int currentPhase(int frameNumber)
virtual void stopIdling()
#define QCEP_DOUBLE_VECTOR_PROPERTY(propname)
void appendDetectorProxy(QxrdDetectorProxyPtr proxy)
QWeakPointer< QxrdExperiment > QxrdExperimentWPtr
void processImage(const QxrdProcessArgs &args)
QxrdDetectorPtr detector(int n)
QSharedPointer< QxrdAcquisitionScalerModel > QxrdAcquisitionScalerModelPtr
bool sanityCheckAcquireDark()
QVector< double > QcepDoubleVector
QxrdDataProcessorWPtr dataProcessor()
void appendDetector(int detType)
virtual void startIdling()
QSharedPointer< QxrdSynchronizedAcquisition > QxrdSynchronizedAcquisitionPtr
void setWindow(QxrdWindowWPtr win)
void openDetectorControlWindow(int i)
QcepDoubleVector scalerValues
double scalerValue(int i)
QxrdSynchronizedAcquisitionPtr synchronizedAcquisition() const
#define QCEP_INTEGER_PROPERTY(propname)
QcepDoubleList normalization
void copyDynamicProperties(QObject *dest)
QWeakPointer< QxrdWindow > QxrdWindowWPtr
virtual void setupExposureMenu(QDoubleSpinBox *cb)
QxrdDetectorThreadPtr detectorThread(int n)
void setNIDAQPlugin(QxrdNIDAQPluginInterfacePtr nidaqPlugin)
void extraInputsChanged()
QxrdAcquisitionPtr myself()
QList< double > QcepDoubleList
void accumulateAcquiredImage(QcepInt16ImageDataPtr image, QcepInt32ImageDataPtr accum, QcepMaskDataPtr overflow)
#define QCEP_STRING_PROPERTY(propname)
QxrdExperimentWPtr m_Experiment
virtual void onExposureTimeChanged()
QWeakPointer< QcepAllocator > QcepAllocatorWPtr
void onBufferSizeChanged(int newMB)
QSharedPointer< QxrdNIDAQPluginInterface > QxrdNIDAQPluginInterfacePtr
virtual QxrdAcquisitionDialogPtr controlPanel(QxrdWindowWPtr win)
#define QCEP_BOOLEAN_PROPERTY(propname)
QVector< QxrdDetectorThreadPtr > m_DetectorThreads
void processAcquiredImage(QString filePattern, QString extent, int fileIndex, int phase, int nPhases, bool trig, QcepInt32ImageDataPtr image, QcepMaskDataPtr overflow)
void printMessage(QString msg, QDateTime ts=QDateTime::currentDateTime()) const
void readSettings(QSettings *settings, QString section)
QxrdAcquisitionExtraInputsPtr acquisitionExtraInputs() const
void writeSettings(QSettings *settings, QString section)
QSharedPointer< QcepInt32ImageData > QcepInt32ImageDataPtr
void processDarkImage(QString filePattern, QString extent, int fileIndex, QcepInt32ImageDataPtr image, QcepMaskDataPtr overflow)
QxrdAcquisition(QcepSettingsSaverWPtr saver, QxrdExperimentWPtr doc, QxrdDataProcessorWPtr proc, QcepAllocatorWPtr allocator)
QcepAllocatorWPtr allocator() const
void criticalMessage(QString msg, QDateTime ts=QDateTime::currentDateTime()) const
QSharedPointer< QxrdDetectorThread > QxrdDetectorThreadPtr
QSharedPointer< QxrdDetector > QxrdDetectorPtr
QcepAllocatorWPtr m_Allocator
void acquisition(int isDark)
QSharedPointer< QcepImageDataBase > QcepImageDataBasePtr
QSharedPointer< QcepInt16ImageData > QcepInt16ImageDataPtr
bool sanityCheckAcquire()
QSharedPointer< QcepMaskData > QcepMaskDataPtr
#define QCEP_DOUBLE_LIST_PROPERTY(propname)
QxrdAcquisitionDialogPtr m_ControlPanel
QxrdAcquisitionExtraInputsPtr m_AcquisitionExtraInputs
QWeakPointer< QcepSettingsSaver > QcepSettingsSaverWPtr
void Message(QString cmd)
QxrdNIDAQPluginInterfacePtr nidaqPlugin() const
QxrdAcquisitionScalerModelPtr acquisitionScalerModel() const