Acquisition.h 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. #pragma once
  2. #include "LogicDevice.h"
  3. class WorkStationDevice;
  4. class AcquisitionDevice :
  5. public LogicDevice
  6. {
  7. protected:
  8. WorkStationDevice *m_pWorkStation;
  9. protected:
  10. int m_ImgNumber; // 通知PACKET_CMD_DATA的次数
  11. int m_nAcqImgNum;
  12. float m_fTargetEXI;
  13. clock_t m_AcqStartTime; // 为计算PostFrameRate记录采集开始时间
  14. clock_t m_AcqFinishTime; // 为计算PostFrameRate记录采集结束时间
  15. bool m_UIExpEnable;
  16. float m_fTargetDose;
  17. float m_fDeviationRate;
  18. int m_nImageRecoveryCancel;
  19. string m_strImageRecoveryDevPath;
  20. ResDataObject m_ROI;
  21. int m_nImageFull;
  22. int m_nFpdSyncMode;
  23. int m_nSeqImageNumDefault; //采集默认图像数量
  24. HANDLE m_hGetImgEvent;
  25. int m_nSeqImageNum; // 上层设置的图像数或ProjectionNum属性通知的值
  26. public:
  27. AcquisitionDevice();
  28. virtual ~AcquisitionDevice();
  29. void SetWorkStation(WorkStationDevice* pWS) { m_pWorkStation = pWS; }
  30. RET_STATUS SetExpNumber(int nExpNum);
  31. public:
  32. //继承的接口实现
  33. virtual bool SYSTEM_CALL GetDeviceType(GUID& DevType) override;
  34. virtual RET_STATUS SYSTEM_CALL CmdToLogicDev(ResDataObject PARAM_IN* pCmd) override;
  35. RET_STATUS Request(ResDataObject PARAM_IN* pRequest, ResDataObject PARAM_OUT* pResponse) override;
  36. virtual RET_STATUS GetDeviceResource(ResDataObject PARAM_OUT* pDeviceResource) override;
  37. void SetSeqenceImageNumber(int number);
  38. };