Ejemplo n.º 1
0
        public string GetRecNum(UInt16 index)
        {
            if (index >= PageRecord.Count)
            {
                return(null);
            }
            OnePageRecord R = (OnePageRecord)PageRecord[index];

            return(R.num.ToString());
        }
Ejemplo n.º 2
0
        public byte[] GetRecToUpdate(UInt16 index, out UInt16 crc)
        {
            crc = 0;
            if (index >= PageRecord.Count)
            {
                return(null);
            }
            OnePageRecord R = (OnePageRecord)PageRecord[index];

            crc = R.crc;
            return(R.Data);
        }
Ejemplo n.º 3
0
        private void ResetData()
        {
            int           line = 0;
            int           i    = 0;
            OnePageRecord R    = new OnePageRecord();

            R.Data = new byte[500];
            for (i = 0; i < 500; i++)
            {
                R.Data[i] = 0xff;
            }
            R.line = "";
            UInt16 index = 0, crc = 0;
            int    len = 0;

            PageRecord.Clear();
            foreach (HEXRECORD rec in DataSet)
            {
                if ((len + rec.RecDataLen) > 500)
                {
                    R.Index = index;
                    PageRecord.Add(R);

                    R      = new OnePageRecord();
                    R.Data = new byte[500];
                    for (i = 0; i < 500; i++)
                    {
                        R.Data[i] = 0xff;
                    }
                    R.line = "";
                    R.num  = 0;
                    len    = 0;
                    index++;
                }
                Array.ConstrainedCopy(rec.Data, 0, R.Data, len, rec.RecDataLen);
                R.line = R.line + rec.line;
                len   += rec.RecDataLen;
                line++;
                R.num = line;
                crc   = CalculateCrc(rec.Data, crc, Convert.ToUInt64(rec.RecDataLen));
                R.crc = crc;
            }

            if (len > 0)
            {
                R.num   = line;
                R.Index = index;
                PageRecord.Add(R);
            }
        }