public void Init(ref BusOptions busoptions, ref ParamListContainer deviceParamlistContainer, ref ParamListContainer sflParamlistContainer)
        {
            m_busoption = busoptions;
            m_Section_ParamlistContainer = deviceParamlistContainer;
            m_SFLs_ParamlistContainer    = sflParamlistContainer;
            SectionParameterListInit(ref deviceParamlistContainer);

            m_HwMode_RegList.Add(ElementDefine.OperationElement, m_OpRegImg);

            SharedAPI.ReBuildBusOptions(ref busoptions, ref deviceParamlistContainer);

            InitialImgReg();
            InitParameters();

            CreateInterface();

            m_dem_bm_base.parent   = this;
            m_dem_bm_base.dem_dm   = new DEMDataManageBase(m_dem_bm_base);
            m_expert_dem_bm.parent = this;
            m_expert_dem_bm.dem_dm = new DEMDataManageBase(m_dem_bm_base);
            m_trim_dem_bm.parent   = this;
            m_trim_dem_bm.dem_dm   = new DEMDataManageBase(m_dem_bm_base);

            LibInfor.AssemblyRegister(Assembly.GetExecutingAssembly(), ASSEMBLY_TYPE.OCE);
            LibErrorCode.UpdateDynamicalLibError(ref m_dynamicErrorLib_dic);
        }
Example #2
0
        public void Init(ref BusOptions busoptions, ref ParamListContainer deviceParamlistContainer, ref ParamListContainer sflParamlistContainer)
        {
            m_busoption = busoptions;
            m_Section_ParamlistContainer = deviceParamlistContainer;
            m_SFLs_ParamlistContainer    = sflParamlistContainer;
            //SectionParameterListInit(ref deviceParamlistContainer);

            m_HwMode_RegList.Add(ElementDefine.OperationElement, m_OpRegImg);

            SharedAPI.ReBuildBusOptions(ref busoptions, ref deviceParamlistContainer);
            InitialImgReg();

            m_dem_bm.Init(this);
            m_dem_dm.Init(this);
            LibInfor.AssemblyRegister(Assembly.GetExecutingAssembly(), ASSEMBLY_TYPE.OCE);
        }
        public void Init(ref BusOptions busoptions, ref ParamListContainer deviceParamlistContainer, ref ParamListContainer sflParamlistContainer)
        {
            m_busoption = busoptions;
            m_Section_ParamlistContainer = deviceParamlistContainer;
            m_SFLs_ParamlistContainer    = sflParamlistContainer;
            SectionParameterListInit(ref deviceParamlistContainer);

            m_HwMode_RegList.Add(ElementDefine.EFUSEElement, m_EFRegImg);
            m_HwMode_RegList.Add(ElementDefine.OperationElement, m_OpRegImg);
            AutoMationTest.AutoMationTest.init(m_HwMode_RegList);

            SharedAPI.ReBuildBusOptions(ref busoptions, ref deviceParamlistContainer);

            InitialImgReg();
            InitParameters();

            m_dem_bm.Init(this);
            m_dem_dm.Init(this);
            LibInfor.AssemblyRegister(Assembly.GetExecutingAssembly(), ASSEMBLY_TYPE.OCE);
            LibErrorCode.UpdateDynamicalLibError(ref m_dynamicErrorLib_dic);
        }
        public override UInt32 Command(ref TASKMessage msg)
        {
            UInt32 ret = LibErrorCode.IDS_ERR_SUCCESSFUL;

            switch ((ElementDefine.COMMAND)msg.sub_task)
            {
            case ElementDefine.COMMAND.MP_BIN_FILE_CHECK:
            {
                string binFileName = msg.sub_task_json;

                var blist = SharedAPI.LoadBinFileToList(binFileName);
                if (blist.Count == 0)
                {
                    ret = LibErrorCode.IDS_ERR_DEM_LOAD_BIN_FILE_ERROR;
                }
                else
                {
                    ret = CheckBinData(blist);
                }
                break;
            }

            case ElementDefine.COMMAND.MP_FROZEN_BIT_CHECK_PC:
                ret = PowerOn();
                if (ret != LibErrorCode.IDS_ERR_SUCCESSFUL)
                {
                    return(ret);
                }

                ret = FrozenBitCheck();
                if (ret != LibErrorCode.IDS_ERR_SUCCESSFUL)
                {
                    return(ret);
                }

                ret = PowerOff();
                if (ret != LibErrorCode.IDS_ERR_SUCCESSFUL)
                {
                    return(ret);
                }
                break;

            case ElementDefine.COMMAND.MP_FROZEN_BIT_CHECK:
                ret = FrozenBitCheck();
                if (ret != LibErrorCode.IDS_ERR_SUCCESSFUL)
                {
                    return(ret);
                }
                break;

            case ElementDefine.COMMAND.MP_DIRTY_CHIP_CHECK_PC:
                ret = PowerOn();
                if (ret != LibErrorCode.IDS_ERR_SUCCESSFUL)
                {
                    return(ret);
                }

                ret = DirtyChipCheck();
                if (ret != LibErrorCode.IDS_ERR_SUCCESSFUL)
                {
                    return(ret);
                }

                ret = PowerOff();
                if (ret != LibErrorCode.IDS_ERR_SUCCESSFUL)
                {
                    return(ret);
                }
                break;

            case ElementDefine.COMMAND.MP_DIRTY_CHIP_CHECK:
                ret = DirtyChipCheck();
                if (ret != LibErrorCode.IDS_ERR_SUCCESSFUL)
                {
                    return(ret);
                }
                break;

            case ElementDefine.COMMAND.MP_DOWNLOAD_PC:
            {
                ret = DownloadWithPowerControl(ref msg);
                if (ret != LibErrorCode.IDS_ERR_SUCCESSFUL)
                {
                    return(ret);
                }
#if debug
                Thread.Sleep(1000);
#endif
                break;
            }

            case ElementDefine.COMMAND.MP_DOWNLOAD:
            {
                ret = DownloadWithoutPowerControl(ref msg);
                if (ret != LibErrorCode.IDS_ERR_SUCCESSFUL)
                {
                    return(ret);
                }
#if debug
                Thread.Sleep(1000);
#endif
                break;
            }

            case ElementDefine.COMMAND.MP_READ_BACK_CHECK_PC:
            {
                ret = PowerOn();
                if (ret != LibErrorCode.IDS_ERR_SUCCESSFUL)
                {
                    return(ret);
                }

                ret = ReadBackCheck();
                if (ret != LibErrorCode.IDS_ERR_SUCCESSFUL)
                {
                    return(ret);
                }

                ret = PowerOff();
                if (ret != LibErrorCode.IDS_ERR_SUCCESSFUL)
                {
                    return(ret);
                }
                break;
            }

            case ElementDefine.COMMAND.MP_READ_BACK_CHECK:
            {
                ret = ReadBackCheck();
                if (ret != LibErrorCode.IDS_ERR_SUCCESSFUL)
                {
                    return(ret);
                }
                break;
            }
            }
            return(ret);
        }