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); }
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); }