public class DELzFhMessQuerschnitt extends AbstraktDELzFhObjekt implements de.bsvrz.dav.daf.main.ClientReceiverInterface
typ.messQuerschnittAllgemein und kapselt direkt oder indirekt
saemtliche Funktionalitaeten, die innerhalb der SWE DE
Langzeit-Fehlererkennung in Bezug auf Objekte dieses Typs benoetigt werden.
Insbesondere werden hier alle MQ-Werte des letzten Intervalls vorgehalten und
in korrespondierende DELzFh-Werte uebersetzt. Diese Werte werden dann an die
Messstelle bzw. die Messstellengruppe weitergeleitet| Modifier and Type | Class and Description |
|---|---|
private static class |
DELzFhMessQuerschnitt.MQDatum
Enthaelt alle Werte eines Datums der Attributgruppe
atg.verkehrsDatenKurzZeitMq, die fuer die SWE 4.DELzFh DE
Langzeit-Fehlererkennung benoetigt werden (sortierbar nach Zeitstempel). |
| Modifier and Type | Field and Description |
|---|---|
private Intervall |
fertigesIntervall
wenn dieser Wert auf
! |
private long |
intervallLaenge
aktuelle Maximallaenge des Pufferintervalls.
|
private boolean |
intervallLaengeInitialisiert
zeigt an, ob die Intervalllaenge bereits initialisiert wurde.
|
private Set<IDELzFhDatenListener> |
listenerMenge
Menge von Beobachtern der Online-Daten dieses Objektes.
|
private static de.bsvrz.sys.funclib.debug.Debug |
LOGGER |
private de.bsvrz.dav.daf.main.config.SystemObject |
mqObjekt
das mit diesem Messquerschnitt assoziierte Systemobjekt.
|
private SortedSet<DELzFhMessQuerschnitt.MQDatum> |
puffer
nach Zeitstempeln sortierter Datenpuffer.
|
dDav, langZeit, messStellenGruppe| Modifier | Constructor and Description |
|---|---|
protected |
DELzFhMessQuerschnitt(de.bsvrz.dav.daf.main.ClientDavInterface dav,
de.bsvrz.dav.daf.main.config.SystemObject mqObjekt,
DELzFhMessStellenGruppe messStellenGruppe,
boolean langZeit)
Standardkonstruktor.
|
| Modifier and Type | Method and Description |
|---|---|
private void |
addDatum(DELzFhMessQuerschnitt.MQDatum datum)
Fuegt ein Datum in diesen Puffer ein und loescht gleichzeitig alle
Elemente aus dem Puffer, die nicht mehr im Intervall liegen.
|
void |
addListener(IDELzFhDatenListener listener)
Fuegt diesem Objekt einen neuen Listener hinzu und informiert diesen ggf.
|
protected void |
aktualisiereMsgParameter(IMsgDatenartParameter parameter)
Aktualisiert die Parameter der assoziierten Messstellengruppe fuer dieses
Objekt (und dieses Vergleichsintervall).
|
private void |
aufraeumen()
Loescht alle Elemente aus dem Puffer, die nicht mehr im Intervall liegen.
|
private void |
berechneFertigesIntervall(long start,
long ende)
Kumuliert die Q-Werte eines Intervalls.
|
private long |
getEndeLetztesIntervallVor(long zeitStempel)
Erfragt den Zeitstempel des Endes des Intervalls, das in bezug auf den
uebergebenen Zeitstempel gerade vergangen ist.
|
de.bsvrz.dav.daf.main.config.SystemObject |
getObjekt()
Erfragt das mit diesem Messquerschnitt assoziierte Systemobjekt.
|
private void |
setJetzt(long jetzt)
Setzt den Jetzt-Zeitpunkt und bereinigt danach den Puffer.
|
String |
toString() |
void |
update(de.bsvrz.dav.daf.main.ResultData[] resultate) |
aktualisiereMsgParameter, init, isLangZeitprivate static final de.bsvrz.sys.funclib.debug.Debug LOGGER
private SortedSet<DELzFhMessQuerschnitt.MQDatum> puffer
private long intervallLaenge
private boolean intervallLaengeInitialisiert
private de.bsvrz.dav.daf.main.config.SystemObject mqObjekt
private Set<IDELzFhDatenListener> listenerMenge
private Intervall fertigesIntervall
!= null steht, bedeutet das, dass das
letzte eingetroffene Datum fuer dieses Objekt das erste des (neuen)
Intervalls I + 1 ist und das mindestens ein Datum fuer das Intervall I
vorhanden ist. In diesem Objekt stehen die Intervallgrenzenprotected DELzFhMessQuerschnitt(de.bsvrz.dav.daf.main.ClientDavInterface dav,
de.bsvrz.dav.daf.main.config.SystemObject mqObjekt,
DELzFhMessStellenGruppe messStellenGruppe,
boolean langZeit)
throws de.bsvrz.sys.funclib.bitctrl.dua.DUAInitialisierungsException
dav - Datenverteiler-VerbindungmqObjekt - Systemobjekt vom Typ typ.messQuerschnittAllgemeinmessStellenGruppe - die mit diesem Objekt assoziierte MessstellengruppelangZeit - Indiziert, ob sich dieses Objekt um das
Langzeit-Vergleichsintervall kuemmern sollde.bsvrz.sys.funclib.bitctrl.dua.DUAInitialisierungsException - wenn das Objekt nicht sinnvoll initialisiert werden konntepublic final de.bsvrz.dav.daf.main.config.SystemObject getObjekt()
public final void addListener(IDELzFhDatenListener listener)
listener - eine neuer Listenerpublic void update(de.bsvrz.dav.daf.main.ResultData[] resultate)
update in interface de.bsvrz.dav.daf.main.ClientReceiverInterfaceprotected void aktualisiereMsgParameter(IMsgDatenartParameter parameter)
AbstraktDELzFhObjektaktualisiereMsgParameter in class AbstraktDELzFhObjektparameter - aktuelle Parameter fuer die Ueberwachungprivate void addDatum(DELzFhMessQuerschnitt.MQDatum datum)
datum - ein MQDatumprivate void aufraeumen()
private void berechneFertigesIntervall(long start,
long ende)
start - Intervallbegin (absolute Zeit in ms)ende - Intervallende (absolute Zeit in ms)private long getEndeLetztesIntervallVor(long zeitStempel)
zeitStempel - ein Zeitpunktprivate void setJetzt(long jetzt)
jetzt - der Jetzt-ZeitpunktCopyright © 2017 BitCtrl Systems GmbH. All rights reserved.