using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace COMM
{
    public enum EDIName : byte
    {
        EMERGENCY_F1 = 0x00,
        EMERGENCY_F2,
        EMERGENCY_R1,
        EMERGENCY_R2,

        AIR_DETECT,
        BUTTON_AIR,
        BUTTON_START,
        BUTTON_STOP,
        BUTTON_RESET,

        DOOR_FC,
        DOOR_FR,
        DOOR_FL,
        DOOR_RC,
        DOOR_RL,
        DOOR_RR,

        Loader_MGZ_Check = 0x10,
        Loader_MGZ_Arrive,
        Loader_Elevator_MGZ_Check,
        Loader_MGZ_Out,
        Loader_MGZ_Gripper_MGZ_Check1,
        Loader_MGZ_Gripper_MGZ_Check2,
        Loader_MGZ_Clamp_Down,
        Loader_MGZ_Clamp_Up,
        Loader_MGZ_Clamp_Bwd,
        Loader_MGZ_Clamp_Fwd,
        Loader_Pusher_Back,
        Loader_Pusher_Fwd,
        Loader_Pusher_Overload,
        Loader_PCB_MGZ_Out,
        Index_Gripper_Open,
        Index_Gripper_Close,

        Loader_MGZ_EndCap_Check = 0x20,
        Loader_Rail_PCB_CheckL,
        Loader_Rail_PCB_CheckM,
        Loader_Rail_PCB_CheckR,
        PickerL_Close,
        PickerL_Open,        
        Picker1_PCB_Check1,
        Picker1_PCB_Check2,
        PickerU_Close,
        PickerU_Open,
        Picker2_PCB_Check1,
        Picker2_PCB_Check2,

        SaftyArea_Left = 0x2E,
        SaftyArea_Right,

        UnLoader_Rail_PCB_CheckL = 0x30,
        UnLoader_Rail_PCB_CheckM,
        UnLoader_Rail_PCB_CheckR,
        UnLoader_Pusher_Overload,
        Unloader_MGZ_Check,
        UnLoader_MGZ_Arrive,
        UnLoader_Elevator_MGZ_Check,
        UnLoader_MGZ_Out,
        UnLoader_MGZ_Gripper_MGZ_Check1,
        UnLoader_MGZ_Gripper_MGZ_Check2,
        UnLoader_MGZ_Clamp_Up,
        UnLoader_MGZ_Clamp_Down,
        UnLoader_MGZ_Clamp_Fwd,
        UnLoader_MGZ_Clamp_Bwd,
        UnLoader_PCB_MGZ_Out,
        UnLoader_MGZ_EndCap_Check = 0x3F,

        Table_Vac_Check = 0x40,
        Side_Clamp1_Close = 0x43,
        Side_Clamp1_Open,
        Side_Clamp2_Close,
        Side_Clamp2_Open,

        Glass_Press1_Up = 0x48,
        Glass_Press1_Down,
        Glass_Press2_Up,
        Glass_Press2_Down,

        SR2000_OK = 0x04D,
        SR2000_ER,
        SR2000_BS,

        CL3000U_RUN=0x50,
        CL3000U_ALM,
        CL3000U_ERR,

        CL3000D_RUN = 0x54,
        CL3000D_ALM,
        CL3000D_ERR,

        Loader_MGZ_Stopper_Up = 0x57,
        Loader_MGZ_Stopper_Down,
        UnLoader_MGZ_Stopper_Up,
        UnLoader_MGZ_Stopper_Down


    }

    public enum EDOName : byte
    {//output

        EMERGENCY_F1 = 0x000,
        EMERGENCY_F2 = 0x001,
        EMERGENCY_R1 = 0x002,
        EMERGENCY_R2 = 0x003,

        BUTTON_AIR = 0x005,
        BUTTON_START = 0x006,
        BUTTON_STOP = 0x007,
        BUTTON_RESET = 0x008,
        AIR_DETECT = 0x009,
        BUZZER_ERROR = 0x00A,

        TOWER_GRN = 0x00B,
        TOWER_YEL = 0x00C,
        TOWER_RED = 0x00D,

        ROOM_LIGHT = 0x00F,

        Loader_MGZ_Clamp_Up = 0x10,
        Loader_MGZ_Clamp_Down,
        Loader_MGZ_Clamp_Fwd,
        Loader_MGZ_Clamp_Bwd,
        Loader_Pusher_Fwd,
        Index_Gripper_Close,
        PickerL_Open,
        PCB_Side_Clamp_Close,
        PCB_Glass_Press_Plate_Down,
        PickerU_Open = 0x19,
        Unloader_MGZ_Clamp_Up,
        UnLoader_MGZ_Clamp_Down,
        UnLoader_MGZ_Clamp_Fwd,
        Unloader_MGZ_Clamp_Bwd,
        Table_Eject1_On,
        Table_Vacuum1_On,

        Loader_MGZ_InMotor_Run = 0x20,
        Loader_MGZ_OutMotor_Run,
        UnLoader_MGZ_InMotor_Run,
        UnLoader_MGZ_OutMotor_Run,

        MOTOR_01_POWER_OFF = 0x024,
        MOTOR_02_POWER_OFF,
        MOTOR_03_POWER_OFF,
        MOTOR_04_POWER_OFF,
        MOTOR_05_POWER_OFF,
        MOTOR_06_POWER_OFF,
        MOTOR_07_POWER_OFF,
        MOTOR_08_POWER_OFF,
        MOTOR_09_POWER_OFF,
        MOTOR_10_POWER_OFF,
        MOTOR_11_POWER_OFF,

        CL_3000L_POWER = 0x30,
        CL_3000R_POWER,

        CL_3000L_ZERO1 = 0x33,
        CL_3000L_ZERO2,

        CL_3000R_ZERO1 = 0x35,
        CL_3000R_ZERO2,

        Loader_MGZ_Stopper_Up=0x38,
        UnLoader_MGZ_Stopper_Up,

        SR2000_TRIGGER = 0x3F,
    }


}
