Class Kunde

java.lang.Object
  extended byScreenElement
      extended byKunde

public class Kunde
extends ScreenElement


Field Summary
static int KUERZESTE
           
static int SCHNELLSTE
           
 
Constructor Summary
Kunde(int x, int y, int width, int height, java.awt.Color color, int strategie, long startZeit, double laenge)
           
 
Method Summary
 void einreihen(java.util.Vector kassen)
          der Kunde stellt sich an der kleinsten, offenen Kasse an
 double getArtikelmenge()
           
 double getArtikelmengeWahrgenommen()
           
 Kasse getKleinste(java.util.Vector kassen)
          wŠhlt aus der Menge Kassen die "kleinste" Kasse zurŸck.
 double getSchlangenLaenge()
           
 long getStartZeit()
           
 boolean kleiner(Kasse k1, Kasse k2)
          definiert eine Ordnung auf der Menge der Kassen, die bei der Schlangenwahl (getKleinste()) verwendet wird
 java.util.Vector offeneKassen(java.util.Vector kassen)
          gibt aus der Menge kassen, die Teilmenge der offenen Kassen zurŸck
 void paint(java.awt.Graphics2D g2)
           
 void setStrategie(int strategie)
           
 void verlasseSchlange()
          der Kunde verlŠsst die Schlange()
 void wechsleSchlange(java.util.Vector kassen)
          der Kunde prŸft, ob er die Schlange wechseln soll.
 
Methods inherited from class ScreenElement
getColor, getHeight, getWidth, getX, getY, setColor, setHeight, setWidth, setXY
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

KUERZESTE

public static final int KUERZESTE
See Also:
Constant Field Values

SCHNELLSTE

public static final int SCHNELLSTE
See Also:
Constant Field Values
Constructor Detail

Kunde

public Kunde(int x,
             int y,
             int width,
             int height,
             java.awt.Color color,
             int strategie,
             long startZeit,
             double laenge)
Method Detail

einreihen

public void einreihen(java.util.Vector kassen)
der Kunde stellt sich an der kleinsten, offenen Kasse an


getArtikelmenge

public double getArtikelmenge()

getArtikelmengeWahrgenommen

public double getArtikelmengeWahrgenommen()

getKleinste

public Kasse getKleinste(java.util.Vector kassen)
wŠhlt aus der Menge Kassen die "kleinste" Kasse zurŸck. Zur Entscheidung, welches die kleinste Kasse ist, wird die Methode "kleiner" verwendet, die eine Ordnung auf einer Menge von Kassen definiert.*

Returns:
ist die Menge von Kassen die leere Menge, so gibt getKleinste null zurŸck

getSchlangenLaenge

public double getSchlangenLaenge()

getStartZeit

public long getStartZeit()

kleiner

public boolean kleiner(Kasse k1,
                       Kasse k2)
definiert eine Ordnung auf der Menge der Kassen, die bei der Schlangenwahl (getKleinste()) verwendet wird


offeneKassen

public java.util.Vector offeneKassen(java.util.Vector kassen)
gibt aus der Menge kassen, die Teilmenge der offenen Kassen zurŸck


paint

public void paint(java.awt.Graphics2D g2)
Specified by:
paint in class ScreenElement

setStrategie

public void setStrategie(int strategie)

verlasseSchlange

public void verlasseSchlange()
der Kunde verlŠsst die Schlange()


wechsleSchlange

public void wechsleSchlange(java.util.Vector kassen)
der Kunde prŸft, ob er die Schlange wechseln soll. Die kleinste, offene Kasse, die dabei in Frage kommt, muss kleiner sein als die eigene Schlange (sonst wŸrde ein Kunde, der in einer kleineren Schlange einer Kasse steht, die geschlossen werden soll an eine grš§ere gešffnete Kasse wechseln