//Starts the processing of the transfered order/programFile public bool TransferOrder(MachineOrderData orderData, byte[] programFile) { if (StateData.CurrentState == MachineStates.Idle) { OrderData = orderData; OrderData.OrderState = MachineOrderStates.Transfered; MachineOrderDataChanged?.Invoke(OrderData); _StartTimer.Start(); return(true); } return(false); }
public ExampleAdapter() { Name = "HelloWorldAdapter"; Description = "Example machine adapter for demo purpose"; Homepage = "http:\\www.eckelmann.de"; //Initialises Icon from embeded ressource Icon = ImageConvert.ImageArrayFromResource(Assembly.GetAssembly(GetType()), "MMS-Logo.png"); //Initalises the orderdata with default informations (no order) OrderData = new MachineOrderData(); OrderData.ProgramName = ""; OrderData.OrderName = ""; OrderData.OrderId = 0; OrderData.OrderState = MachineOrderStates.Unknown; //Sets the machine geo-position Position = new MachinePositionData(); Position.GeoPosition = "50°03'35.84\" N 8°17'06.36\" O"; StateData = new MachineStateData(); Parameters = new Dictionary <string, string>(); Tags = new Dictionary <string, string>(); //Simulates a preparation time till the start of an order _StartTimer = new Timer(2000.0); _StartTimer.Elapsed += StartTimer_Elapsed; //Simulates the processing time of an order till it's finished. _FinishedTimer = new Timer(10000.0); _FinishedTimer.Elapsed += FinishedTimer_Elapsed; //Sets the inital state to idle ChangeState(MachineStates.Idle, MachineStates.Operating, Int32.MaxValue); }