de.bsvrz.ste.rdstmc.verkehrsanalyse
Class StoerfallSituation

java.lang.Object
  extended by de.bsvrz.ste.rdstmc.verkehrsanalyse.StoerfallSituation
All Implemented Interfaces:
StoerfallListener

public class StoerfallSituation
extends java.lang.Object
implements StoerfallListener

Modelliert die überlagerten Zustände aller Störfallindikatoren eines Strassensegments.

Version:
$Revision: 1.2 $ / $Date: 2009/04/03 08:58:04 $ / ($Author: Sans $)
Author:
Dambach Werke GmbH, Stefan Sans

Field Summary
private static de.bsvrz.sys.funclib.debug.Debug _debug
          Debug-Logger für Logging-Ausgaben
private  StrassenSegment _segment
          Das äussere Strassensegment dieser Stöfallsituation
private  java.util.Collection<Stoerfall> _stoerfaelle
          Alle Störfalle (Störfallindikatoren) dieser Störfallsituation
private  java.util.Map<Stoerfall,StoerfallDaten> _stoerfallDaten
          Die StoerfallDaten für jeden Störfall mit der höchsten Priorität je Verfahren
private  java.util.Collection<StoerfallSituationListener> _stoerfallSituationListener
          Sammlung aller StoerfallSituationListener
private  java.util.List<StoerfallDaten> _ueberlagerteDaten
          Die überlagerten Störfalldaten im zugeordneten Segment
private  Verkehrsanalyse _verkehrsAnalyse
           
 int TIMEOUT
          Zeit in ms, nach der eine Überlagerungsberechnung erzwungen wird, falls die Ereignisqueue nicht leer wird
 
Constructor Summary
StoerfallSituation(StrassenSegment segment, Verkehrsanalyse verkehrsAnalyse)
          Konstruiert eine Instanz vom Typ StoerfallSituation
 
Method Summary
(package private)  void addStoerfall(Stoerfall stoerfall)
          Fügt dieser StoerfallSituation einen Stoerfall hinzu
 void addStoerfallSituationListener(StoerfallSituationListener listener)
           
private  java.util.List<StoerfallSituationDaten> bestimmeStoerfallSituationDaten(java.util.List<StoerfallSituationDaten> ueberlagerteDaten)
          Bestimmt aus den überlagerten Daten die Folge der StoerfallSituationsDaten mit dem schärfsten Zustand
 void fireStoerfallSituationListener()
          Benachrichtige alle angemeldeten Listener vom Typ StoerfallSituationDaten
(package private)  de.bsvrz.dav.daf.main.ClientDavInterface getConnection()
           
(package private)  RDSParameterDaten getParameter()
           
 StrassenSegment getSegment()
           
 java.util.Collection<Stoerfall> getStoerFaelle()
           
(package private)  Verkehrsanalyse getVerkehrsanalyse()
           
 void neuerStoerfall(Stoerfall quelle, StoerfallDaten daten)
          Zu implementierende Methode zur Notifizierung von Störfall-Änderungen
(package private)  void removeStoerfall(Stoerfall stoerfall)
          Entfernt einen Stoerfall aus dieser StoerfallSituation
 void renmoveStoerfallSituationListener(StoerfallSituationListener listener)
           
private  java.util.List<StoerfallSituationDaten> ueberlagereStaus()
           
private  void ueberlagern_neu(StoerfallDaten daten)
           
private  void ueberlagern()
           
private  void ueberlagern(StoerfallDaten daten)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

_debug

private static final de.bsvrz.sys.funclib.debug.Debug _debug
Debug-Logger für Logging-Ausgaben


TIMEOUT

public final int TIMEOUT
Zeit in ms, nach der eine Überlagerungsberechnung erzwungen wird, falls die Ereignisqueue nicht leer wird

See Also:
Constant Field Values

_segment

private StrassenSegment _segment
Das äussere Strassensegment dieser Stöfallsituation


_stoerfaelle

private java.util.Collection<Stoerfall> _stoerfaelle
Alle Störfalle (Störfallindikatoren) dieser Störfallsituation


_stoerfallSituationListener

private java.util.Collection<StoerfallSituationListener> _stoerfallSituationListener
Sammlung aller StoerfallSituationListener


_stoerfallDaten

private java.util.Map<Stoerfall,StoerfallDaten> _stoerfallDaten
Die StoerfallDaten für jeden Störfall mit der höchsten Priorität je Verfahren


_ueberlagerteDaten

private java.util.List<StoerfallDaten> _ueberlagerteDaten
Die überlagerten Störfalldaten im zugeordneten Segment


_verkehrsAnalyse

private Verkehrsanalyse _verkehrsAnalyse
Constructor Detail

StoerfallSituation

public StoerfallSituation(StrassenSegment segment,
                          Verkehrsanalyse verkehrsAnalyse)
Konstruiert eine Instanz vom Typ StoerfallSituation

Parameters:
connection - die DAV-Verbindung
segmentt - das korrespondierende Strassensegment
Method Detail

getSegment

public StrassenSegment getSegment()
Returns:
das (äussere) Strassensegment dieser Stöfallsituation

getVerkehrsanalyse

Verkehrsanalyse getVerkehrsanalyse()

getParameter

RDSParameterDaten getParameter()

getConnection

de.bsvrz.dav.daf.main.ClientDavInterface getConnection()

addStoerfall

void addStoerfall(Stoerfall stoerfall)
Fügt dieser StoerfallSituation einen Stoerfall hinzu

Parameters:
stoerfall - der hinzuzufügende Stoerfall

removeStoerfall

void removeStoerfall(Stoerfall stoerfall)
Entfernt einen Stoerfall aus dieser StoerfallSituation

Parameters:
stoerfall - der zu entfernende Stoerfall

neuerStoerfall

public void neuerStoerfall(Stoerfall quelle,
                           StoerfallDaten daten)
Description copied from interface: StoerfallListener
Zu implementierende Methode zur Notifizierung von Störfall-Änderungen

Specified by:
neuerStoerfall in interface StoerfallListener
daten - die geänderten Daten

ueberlagern_neu

private void ueberlagern_neu(StoerfallDaten daten)

ueberlagern

private void ueberlagern(StoerfallDaten daten)

getStoerFaelle

public java.util.Collection<Stoerfall> getStoerFaelle()

addStoerfallSituationListener

public void addStoerfallSituationListener(StoerfallSituationListener listener)

renmoveStoerfallSituationListener

public void renmoveStoerfallSituationListener(StoerfallSituationListener listener)

fireStoerfallSituationListener

public void fireStoerfallSituationListener()
Benachrichtige alle angemeldeten Listener vom Typ StoerfallSituationDaten


ueberlagereStaus

private java.util.List<StoerfallSituationDaten> ueberlagereStaus()

bestimmeStoerfallSituationDaten

private java.util.List<StoerfallSituationDaten> bestimmeStoerfallSituationDaten(java.util.List<StoerfallSituationDaten> ueberlagerteDaten)
Bestimmt aus den überlagerten Daten die Folge der StoerfallSituationsDaten mit dem schärfsten Zustand

Returns:
Liste der StoerfallSituationsDaten mit dem schärfsten Zustand

ueberlagern

private void ueberlagern()