Exemple #1
0
        /**Copy the datas to the queue of boardStatus.*/
        private void copyToStatusPacket(BoardStatusSetPacket statusPacket, UniSetPacket setPacket)
        {
            //DEFINATION
            ItemHeader      head;
            UploadTagHeader tag;
            BoardStatus     status;
            int             uintOffset;

            //INIT
            head       = statusPacket.head;
            tag        = statusPacket.tag;
            status     = statusPacket.status;
            uintOffset = 0;

            //PROCESSING
            //head
            head.port = setPacket.port;
            head.id   = setPacket.id;
            head.bin  = setPacket.bin;
            head.size = setPacket.size;

            //tag
            tag.stampMode = setPacket.stampMode;
            Array.Copy(setPacket.stampPos, tag.stampPos, 3);
            Array.Copy(setPacket.stampInc, tag.stampInc, 3);
            tag.cellNum = setPacket.cellNum;

            //status
            status.status    = setPacket.ud[uintOffset++];
            status.errCode   = (int)setPacket.ud[uintOffset++];
            status.beatHeart = setPacket.ud[uintOffset++];
        }
Exemple #2
0
        public ParseThread(ParseThreadEnv tmpEnv)
        {
            timer.Elapsed  += new System.Timers.ElapsedEventHandler(UpdateAscan);
            timer.AutoReset = true;

            init         = tmpEnv.init;
            clean        = tmpEnv.clean;
            status       = tmpEnv.status;
            inputQueue   = tmpEnv.captureOutQueue;
            ascanQueue   = tmpEnv.ascanQueue;
            mergeInQueue = tmpEnv.mergeInQueue;

            mergeInQueueElement = new MergeInQueueElement();
            ascanQueueElement   = new AscanQueueElement();
            boardStatusPacket   = new BoardStatusSetPacket();

            thread = new Thread(parseFunc);
            thread.IsBackground = true;

            updateCallBack = new updateDelegate(FormList.MDIChild.updateAscanbytimer);
        }