////////////////////////////////////////////////////////////////////// #ifndef SO7_TCPIP_SERVER_H_INCLUDED_ #define SO7_TCPIP_SERVER_H_INCLUDED_ #if _MSC_VER > 1000 #pragma once #endif // _MSC_VER > 1000 #include #include #include #include "So7_TCPIP.h" #define MAX_SOCKET 56 #define PLC_MAX_SENSOR_STATE 20 #define MAX_CCD_ADDR 120 enum OMRON_PLC_SENSOR { OMRON_PLC_CCD1_CAMERA1=0, OMRON_PLC_CCD1_CAMERA2, OMRON_PLC_CCD2_CAMERA1, OMRON_PLC_CCD2_CAMERA2, OMRON_PLC_CCD3_CAMERA1, OMRON_PLC_CCD3_CAMERA2, OMRON_PLC_CCD4_CAMERA1, OMRON_PLC_CCD4_CAMERA2, OMRON_PLC_CCD5_CAMERA1, OMRON_PLC_CCD5_CAMERA2, OMRON_PLC_LASER1_HEADA, OMRON_PLC_LASER1_HEADB, OMRON_PLC_LASER2_HEADA, OMRON_PLC_LASER2_HEADB, OMRON_PLC_LASER3_HEADA, OMRON_PLC_LASER3_HEADB, OMRON_PLC_LASER4_HEADA, OMRON_PLC_LASER4_HEADB, OMRON_PLC_LASER5_HEADA, OMRON_PLC_LASER5_HEADB, OMRON_PLC_SENSOR_TOTAL=PLC_MAX_SENSOR_STATE }; struct s_tcpip_state { TCPIP_RETURN_CODE _SendReturnCode; TCPIP_RETURN_CODE _RecvReturnCode; bool _ConnectionSuccessful; bool _HandshakeSuccessful; bool _WriteDataCompleted; bool _ReadDataCompleted; int _PLCRunningState; BYTE _PLCSensorState[10]; bool _PLCSensorTrigged[10]; int _PCState; int _PCMeasureResult; s_tcpip_state() { _SendReturnCode=TCPIP_CONNECT_OK; _RecvReturnCode=TCPIP_CONNECT_OK; _ConnectionSuccessful=false; _HandshakeSuccessful=false; _WriteDataCompleted=true; _ReadDataCompleted=true; _PLCRunningState=0; for(int i=0;i