#pragma once // 下列 ifdef 块是创建使从 DLL 导出更简单的 // 宏的标准方法。此 DLL 中的所有文件都是用命令行上定义的 APLATFORMDCS_EXPORTS // 符号编译的。在使用此 DLL 的 // 任何其他项目上不应定义此符号。这样,源文件中包含此文件的任何其他项目都会将 // APLATFORMDCS_API 函数视为是从 DLL 导入的,而此 DLL 则将用此宏定义的 // 符号视为是被导出的。 #ifndef APLATFORMDCS_EXPORTS #ifdef _WIN64 #ifdef _DEBUG #pragma comment(lib, "APlatformDcsX64D.lib") #else #pragma comment(lib, "APlatformDcsX64.lib") #endif #else #ifdef _DEBUG #pragma comment(lib, "APlatformDcsD.lib") #else #pragma comment(lib, "APlatformDcs.lib") #endif #endif #endif #ifdef APLATFORMDCS_EXPORTS #define APLATFORMDCS_API __declspec(dllexport) #define APLATFORMDCS_CAPI extern "C" __declspec(dllexport) #else #define APLATFORMDCS_API __declspec(dllimport) #define APLATFORMDCS_CAPI extern "C" __declspec(dllimport) #endif #include "CcosConsoleScript.h" //class CommonLogicClient; //struct WFTStatus //{ // WFTStatus() // : nCalibrationStatus(0) // , nCalibrationProgress(0) // , nSMState(-1) // { // } // int nCalibrationStatus; // int nCalibrationProgress; // int nCalibrationFrame; // int nSMState; //}; // 此类是从 APlatformDcs.dll 导出的 class APLATFORMDCS_API APlatformDcs : public CcosConsoleScript { public: APlatformDcs(void); virtual ~APlatformDcs(); virtual void Help(); //inputcmd : helloworld 2020 Joy_Derk //[0]:helloworld //[1]:2020 //[2]:Joy_Derk //[0]:command,[1]:P1,[2]:P2... virtual DCS_RET Command(ResDataObject &Req); DCS_RET Exit(ResDataObject &Req); DCS_RET Hello(ResDataObject &Req); DCS_RET Procs(ResDataObject &Req); DCS_RET Devs(ResDataObject &Req); DCS_RET PrintDev(ResDataObject &Req); DCS_RET Connect(ResDataObject &Req); DCS_RET Disconnect(ResDataObject &Req); DCS_RET RemoteProcs(ResDataObject &Req); DCS_RET RemoteDevs(ResDataObject &Req); DCS_RET CT(ResDataObject &Req); DCS_RET Test(ResDataObject &Req); DCS_RET Ctrlcpu(ResDataObject &Req); DCS_RET Action(ResDataObject &Req); DCS_RET MechTest(ResDataObject &Req); DCS_RET Gen(ResDataObject &Req); DCS_RET Dap(ResDataObject &Req); DCS_RET AddDPC(ResDataObject &Req); DCS_RET DelDPC(ResDataObject &Req); DCS_RET ConfigDriver(ResDataObject &Req); DCS_RET FDacq(ResDataObject &Req); DCS_RET FDcalib(ResDataObject &Req); //DCS_RET WorkFlowTest(ResDataObject &Req); //bool WFTWaitForState(CommonLogicClient &client, const char* szKey, const char* state, int nTimeout = 15000); //bool WFTActiveAndStartSMForErr(); //bool WFTTriggerEvtPrep(int nErr = 0); //bool WFTTriggerEvtExpOn(); //bool WFTSetErrStatus(int nErr, const char* pszState); //bool WFTReset(int nErr = 0); //bool WFTTestRunAllStates(int nErr); //bool WFTTestRunOnce(int nErr, const char* pszState); //bool WFTCalibrateGain(); //bool WFTCalibrateGainActive(); //bool WFTSetAPR(); private: //WFTStatus* m_statWFT; }; APLATFORMDCS_CAPI CcosConsoleScript* LoadDCS();//user要集成此功能 APLATFORMDCS_CAPI void UnLoadDCS(CcosConsoleScript* pDcs);