De controller is de centrale klasse van het P2L systeem. De controller verzorgt alle systeemoperaties (picking, batch kiezen, afspeelmodus, screen saver,...) en stuurt de displays aan. De controller klasse doet dit niet allemaal zelf. De meeste functionaliteit zit in de states, vb. Picking. De Controller klasse zelf zorgt voor het state management en is ook het punt naar waar alle button presses op de controller display worden gestuurd. Waar nodig biedt Controller ook methods aan voor de button presses die van de displays komen (bv. VerwerkDisplayPick). De controller is ook doorgeefluik van informatie tussen de controller states onderling en met andere systemen die aan het Pick To Light systeem iets moeten meedelen. Bv. het instellen van een batch id. persistent 1 ControllerButtonHandler,%Persistent 62061,48953.39641 61944,39628.806946 0 %Integer 1 %String 1 1 ControllerState 1 APPS.P2L.Core.PickToLightClient 1 1 %String 1 APPS.P2L.Core.PickSequence.PickItem list 1 1 Houdt de tijd bij van de laatste actie in seconden %Integer 1 1 Naam 1 Constructor Naam:%String 1 %Status 1 %Status 1 %ListOfObjects %Integer %String 1 %Status om een bepaalde state in te stellen. De composite state gebruikt deze method om de history state in te stellen.]]> State:ControllerState %Status Update de volledige state van het systeem: zet de state machines juist en stuurt de displays aan. %Status Verwerk het drukken van de Pick knop op de displays X:%Integer,Y:%Integer %Status %Status AfspeelModusPickSequence:%ListOfObjects %Status %Status Ga naar de Picking state met de opgegeven batch ID. GekozenBatchID:%Integer %Status %Status %Integer %Status %Status %Status %Status %Status %Status %Library.CacheStorage ^APPS.P2L.Control682.ControllerD ControllerDefaultData ^APPS.P2L.Control682.ControllerD ^APPS.P2L.Control682.ControllerI ^APPS.P2L.Control682.ControllerS %%CLASSNAME HuidigeState HuidigeStateNaam LaatsteActie GekozenBatchID