using System; using System.Collections.Generic; using System.Text; using System.Runtime.InteropServices; namespace Sys { public partial class MACHINEINTERFACEDLL { public enum EMACHINE_AXIS { MACHINE_AXIS_NONE = 0, MACHINE_AXIS_X, MACHINE_AXIS_Y, MACHINE_AXIS_Z, MACHINE_AXIS_ZOOM, MACHINE_AXIS_R, MACHINE_AXIS_ALL = 5 }; public enum EHOME_MACHINE_MODE { HOME_NONE, HOME_XYZ = 1, HOME_X = 10, HOME_Y, HOME_Z, HOME_XY = 20, HOME_XZ, HOME_YZ, HOME_R = 30, HOME_TOATAL = 255 }; public enum EIO_PORT { INPORT_J2 = 0,//Effective bit:0-5 OUTPORT_J1,//Effective bit:0-2 OUTPORT_J3,//Effective bit:0-5 LIMIT_SWITCH_J4//Effective bit:0-5 }; public enum SSI_STATUS_MOTION { SSI_STATUS_MOTION_NORMAL = 0, SSI_STATUS_MOTION_DATALINK_ERROR, SSI_STATUS_MOTION_LIMIT_REACHED, SSI_STATUS_MOTION_INVALID_PARAMETERS, SSI_STATUS_MOTION_TIMEOUT, SSI_STATUS_SO7_CONFIG_FILE_NOT_FOUND, SSI_STATUS_MOTOR_DAT_FILE_NOT_FOUND, SSI_STATUS_MACHINE_UNINITIALIZED, SSI_STATUS_UNKNOWN_ERROR }; [DllImport("MachineInterfaceDll.dll")] public static extern SSI_STATUS_MOTION Machine_Startup(bool bOfflineOnly, EHOME_MACHINE_MODE cHomeMachineMode); [DllImport("MachineInterfaceDll.dll")] public static extern SSI_STATUS_MOTION Machine_Shutdown(); [DllImport("MachineInterfaceDll.dll")] public static extern SSI_STATUS_MOTION Machine_GetDIO(EIO_PORT Channel, ref Byte bDISts); [DllImport("MachineInterfaceDll.dll")] public static extern SSI_STATUS_MOTION Machine_SetDO(EIO_PORT Channel, Byte bDOSts); } }