public virtual UInt32 Read(ref TASKMessage msg)
        {
            UInt16      wdata     = 0;
            UInt32      ret       = LibErrorCode.IDS_ERR_SUCCESSFUL;
            List <byte> OpReglist = new List <byte>();

            ParamContainer demparameterlist = msg.task_parameterlist;

            if (demparameterlist == null)
            {
                return(ret);
            }

            AutomationElement aElem = parent.m_busoption.GetATMElementbyGuid(AutomationElement.GUIDATMTestStart);

            if (aElem != null)
            {
                bool bsim = true;
                bsim |= (aElem.dbValue > 0.0) ? true : false;
                aElem = parent.m_busoption.GetATMElementbyGuid(AutomationElement.GUIDATMTestSimulation);
                bsim |= (aElem.dbValue > 0.0) ? true : false;
            }
            OpReglist = RegisterListGenerator.Generate(ref msg);
            if (OpReglist == null)
            {
                return(ret);
            }

            foreach (byte badd in OpReglist)
            {
                ret = ReadWord(badd, ref wdata);
                parent.m_OpRegImg[badd].err = ret;
                parent.m_OpRegImg[badd].val = wdata;
                if (ret != LibErrorCode.IDS_ERR_SUCCESSFUL)
                {
                    return(ret);
                }
            }
            return(ret);
        }
        public UInt32 Write(ref TASKMessage msg)
        {
            UInt32      ret       = LibErrorCode.IDS_ERR_SUCCESSFUL;
            List <byte> OpReglist = new List <byte>();

            OpReglist = RegisterListGenerator.Generate(ref msg);
            if (OpReglist == null)
            {
                return(ret);
            }

            foreach (byte badd in OpReglist)
            {
                ret = WriteWord(badd, parent.m_OpRegImg[badd].val);
                parent.m_OpRegImg[badd].err = ret;
                if (ret != LibErrorCode.IDS_ERR_SUCCESSFUL)
                {
                    return(ret);
                }
            }

            return(ret);
        }