Exemplo n.º 1
0
        private static Task ProcessPacket(PacketHeader packet)
        {
            Communication.FirmwareRequests.Request request = (Communication.FirmwareRequests.Request)packet.Request;

            if (Program.UpdateOnly && request != Communication.FirmwareRequests.Request.ObjectModel)
            {
                // Don't process any requests except for object model responses if only the firmware is supposed to be updated
                return(Task.CompletedTask);
            }

            switch (request)
            {
            case Communication.FirmwareRequests.Request.ResendPacket:
                DataTransfer.ResendPacket(packet);
                break;

            case Communication.FirmwareRequests.Request.ObjectModel:
                return(HandleObjectModel());

            case Communication.FirmwareRequests.Request.CodeBufferUpdate:
                HandleCodeBufferUpdate();
                break;

            case Communication.FirmwareRequests.Request.CodeReply:
                HandleCodeReply();
                break;

            case Communication.FirmwareRequests.Request.ExecuteMacro:
                return(HandleMacroRequest());

            case Communication.FirmwareRequests.Request.AbortFile:
                return(HandleAbortFileRequest());

            case Communication.FirmwareRequests.Request.StackEvent:
                return(HandleStackEvent());

            case Communication.FirmwareRequests.Request.PrintPaused:
                return(HandlePrintPaused());

            case Communication.FirmwareRequests.Request.HeightMap:
                return(HandleHeightMap());

            case Communication.FirmwareRequests.Request.Locked:
                return(HandleResourceLocked());

            case Communication.FirmwareRequests.Request.RequestFileChunk:
                return(HandleFileChunkRequest());
            }
            return(Task.CompletedTask);
        }
Exemplo n.º 2
0
        private static Task ProcessPacket(Communication.PacketHeader packet)
        {
            Communication.FirmwareRequests.Request request = (Communication.FirmwareRequests.Request)packet.Request;
            switch (request)
            {
            case Communication.FirmwareRequests.Request.ResendPacket:
                DataTransfer.ResendPacket(packet);
                break;

            case Communication.FirmwareRequests.Request.ObjectModel:
                return(HandleObjectModel());

            case Communication.FirmwareRequests.Request.CodeBufferUpdate:
                HandleCodeBufferUpdate();
                break;

            case Communication.FirmwareRequests.Request.CodeReply:
                HandleCodeReply();
                break;

            case Communication.FirmwareRequests.Request.ExecuteMacro:
                return(HandleMacroRequest());

            case Communication.FirmwareRequests.Request.AbortFile:
                return(HandleAbortFileRequest());

            case Communication.FirmwareRequests.Request.StackEvent:
                return(HandleStackEvent());

            case Communication.FirmwareRequests.Request.PrintPaused:
                return(HandlePrintPaused());

            case Communication.FirmwareRequests.Request.HeightMap:
                return(HandleHeightMap());

            case Communication.FirmwareRequests.Request.Locked:
                return(HandleResourceLocked());
            }
            return(Task.CompletedTask);
        }