示例#1
0
        public CmdMessage(MessageType type, byte SelectedCamera, Command Command, byte Parameters)
        {
            frame            = new SVS_CMD();
            frame.Id         = MSG_ID;
            frame.length     = MSG_LENGHT;
            frame.MsgCounter = MessageCounter++;

            if (MessageCounter > 0xFF)
            {
                MessageCounter = 0;
            }

            frame.Type = type;

            if (type == MessageType.KEEP_ALIVE)
            {
                frame.LastMsgType = LastImageCommand;
            }
            else
            {
                frame.LastMsgType = MessageType.NONE;
            }

            if (type == MessageType.SINGLE_IMG ||
                type == MessageType.ELAB_IMG ||
                type == MessageType.CFG_TV ||
                type == MessageType.STATUS_TV)
            {
                frame.SelectCamera = SelectedCamera;
            }
            else if (type == MessageType.KEEP_ALIVE &&
                     ((frame.LastMsgType == MessageType.SINGLE_IMG) || (frame.LastMsgType == MessageType.ELAB_IMG))
                     )
            {
                frame.SelectCamera = SelectedCamera;
            }
            else
            {
                frame.SelectCamera = 0;
            }

            if (frame.Type == MessageType.CFG_TV)
            {
                frame.Command    = Command;
                frame.Parameters = Parameters;
            }
            else
            {
                frame.Command    = Command.NULL;
                frame.Parameters = 0;
            }
        }
示例#2
0
        public CmdMessage(MessageType type, byte SelectedCamera, Command Command, byte Parameters)
        {
            frame = new SVS_CMD();
            frame.Id = MSG_ID;
            frame.length = MSG_LENGHT;
            frame.MsgCounter = MessageCounter++;

            if(MessageCounter>0xFF)
            {
                MessageCounter = 0;
            }

            frame.Type = type;

            if (type == MessageType.KEEP_ALIVE)
            {
                frame.LastMsgType = LastImageCommand;
            }
            else
            {
                frame.LastMsgType = MessageType.NONE;
            }

            if(type == MessageType.SINGLE_IMG ||
               type == MessageType.ELAB_IMG  ||
               type == MessageType.CFG_TV ||
               type == MessageType.STATUS_TV)
            {
                frame.SelectCamera = SelectedCamera;
            }
            else if(type == MessageType.KEEP_ALIVE &&
                    ((frame.LastMsgType == MessageType.SINGLE_IMG) || (frame.LastMsgType == MessageType.ELAB_IMG))
                   )
            {
                frame.SelectCamera = SelectedCamera;
            }
            else
            {
                frame.SelectCamera = 0;
            }

            if(frame.Type == MessageType.CFG_TV)
            {
                frame.Command = Command;
                frame.Parameters = Parameters;
            }
            else
            {
                frame.Command = Command.NULL;
                frame.Parameters = 0;
            }
        }