#pragma once #include "DiosBoardCtrlParams.h" namespace DIOS::Dev::Detail::MachineryECOM { class IDIOSBoardProtocolWrapper { public: IDIOSBoardProtocolWrapper(){} virtual ~IDIOSBoardProtocolWrapper(){} public: virtual int GPIO_DO_Ctrl(DIOSBOARD_OP op, GPIO_DO_ID id, GPIO_DO_ATTRIBUTE attr, GPIO_DO_PARAM ¶ms) = 0; virtual int GPIO_DI_Ctrl(DIOSBOARD_OP op, GPIO_DI_ID id, GPIO_DI_ATTRIBUTE attr, GPIO_DI_PARAM ¶ms) = 0; virtual int AD_Ctrl(DIOSBOARD_OP op, AD_ID id, AD_ATTRIBUTE attr, AD_PARAM ¶ms) = 0; virtual int RS232_Ctrl(DIOSBOARD_OP op, RS232_ID id, RS232_ATTRIBUTE, RS232_PARAM ¶ms) = 0; virtual int SEC_Ctrl(DIOSBOARD_OP op, SEC_ID id, SEC_ATTRIBUTE attr, SEC_PARAM ¶ms) = 0; virtual int SCL_Ctrl(DIOSBOARD_OP op, SCL_ID id, SCL_ATTRIBUTE attr, SCL_PARAM ¶ms) = 0; virtual int ExposureCtrl(DIOSBOARD_OP op, EXPOSURE_ID id, EXPOSURE_PARAM ¶ms) = 0; virtual int MCU_Ctrl(DIOSBOARD_OP op, MCU_ID id, MCU_ATTRIBUTE attr, MCU_PARAM ¶ms) = 0; virtual int CAN_Ctrl(DIOSBOARD_OP op, CAN_ID id,CAN_ATTRIBUTE attr,CAN_PARAM ¶ms) = 0; }; }