12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091 |
- #pragma once
- #ifndef SYNCGENUNITLOGICEX_EXPORTS
- #ifdef _WIN64
- #ifdef _DEBUG
- #pragma comment(lib, "SyncGenUnitLogicExX64D.lib")
- #else
- #pragma comment(lib, "SyncGenUnitLogicExX64.lib")
- #endif
- #else
- #ifdef _DEBUG
- #pragma comment(lib, "SyncGenUnitLogicExD.lib")
- #else
- #pragma comment(lib, "SyncGenUnitLogicEx.lib")
- #endif
- #endif
- #endif
- #ifdef SYNCGENUNITLOGICEX_EXPORTS
- #define SYNGENUNITLOGICEX_API __declspec(dllexport)
- #else
- #define SYNGENUNITLOGICEX_API __declspec(dllimport)
- #endif
- #include "LogicDevice.h"
- class SYNGENUNITLOGICEX_API SyncGen_LogicDeviceEx : public LogicDevice
- {
- public:
- SyncGen_LogicDeviceEx(void);
- virtual ~SyncGen_LogicDeviceEx(void);
- //get device type
- virtual bool SYSTEM_CALL GetDeviceType(GUID &DevType);
- //get device resource
- virtual RET_STATUS SYSTEM_CALL GetDeviceResource(ResDataObject PARAM_OUT *pDeviceResource);
- //ResourceCommand Request In and Response Out
- virtual RET_STATUS SYSTEM_CALL Request(ResDataObject PARAM_IN *pRequest, ResDataObject PARAM_OUT *pResponse);
- //notify to lower layer
- virtual RET_STATUS SYSTEM_CALL CmdToLogicDev(ResDataObject PARAM_IN *pCmd);
- public:
- //ex:发生器当前处于的同步状态
- ResDataObject * m_SyncStatus;
- //ex:发生器接收到的同步状态信号,如手闸一档信号,二档信号,以及曝光信号HV_Triger等
- ResDataObject * m_SyncExpectStatus;
- //Cur Exam Mode
- ResDataObject *m_pCurrentExamMode;
- ResDataObject *ExamList;
- public:
- virtual RET_STATUS SYSTEM_CALL GetSEQResource(ResDataObject PARAM_OUT *pDeviceResource);
- //virtual RET_STATUS SYSTEM_CALL SetXrayOnOff(bool state);
- //virtual RET_STATUS DATA_ACTION SetSyncMode(int nSyncMode);
- virtual RET_STATUS DATA_ACTION UpdateGeneratorSyncStatus(int snycmode);//from OEM Layer to Data Layer
- virtual RET_STATUS DATA_ACTION ExpectToSyncStatus(int snycmode);//from OEM Layer to Data Layer
- virtual RET_STATUS DATA_ACTION GetExamMode(const char *pExamKey);//from OEM Layer to Data Layer
- virtual RET_STATUS OEM_IF SetGeneratortoSyncStatus(int snycmode);//from Data Layer to OEM Layer
- virtual RET_STATUS OEM_IF SelectExamMode(const char *pExamKey);
- virtual BOOL OEM_IF PreSetGeneratortoSyncStatus(int snycmode);
- virtual int OEM_IF GetExpectToSyncStatus();
- virtual RET_STATUS SetExamInfo(ResDataObject PARAM_IN& pParam);
- virtual RET_STATUS SetExposureTimes(int num);
- //状态机相关
- virtual RET_STATUS DATA_ACTION FramePrep();
- virtual RET_STATUS DATA_ACTION FrameReady();
- virtual RET_STATUS DATA_ACTION FrameStart();
- virtual RET_STATUS DATA_ACTION FrameIn();
- virtual RET_STATUS DATA_ACTION FrameOut();
- virtual RET_STATUS DATA_ACTION FrameEnd();
- virtual RET_STATUS DATA_ACTION FramePost();
- virtual RET_STATUS DATA_ACTION SeqEnd();
- virtual RET_STATUS DATA_ACTION FrameError();
- virtual RET_STATUS DATA_ACTION SeqError();
- virtual bool DEVICE_SUPPORT Support_FramePrep();
- virtual bool DEVICE_SUPPORT Support_FrameReady();
- virtual bool DEVICE_SUPPORT Support_FrameStart();
- virtual bool DEVICE_SUPPORT Support_FrameIn();
- virtual bool DEVICE_SUPPORT Support_FrameOut();
- virtual bool DEVICE_SUPPORT Support_FramePost();
- virtual RET_STATUS RESET();
- virtual RET_STATUS GetHandSwitchState(int state);
- };
|