heute wollte ich euch mal über mein aktuelles Projekt informieren, an dem ich seit Wochen sitze mit sehr vielen und langen Pausen.
Es handelt sich dabei um eine in JAVA geschrieben TCP Zusi3 Schnittstelle die in eigene Projekte eingebunden werden kann um eigene Programme zu entwickeln. Damit spart man sich die Mühe eine Verbindung herzustellen, geschweige denn die Daten auszuwerten und zu verarbeiten. Das Projekt ist aber noch nicht fertig, da bis jetzt nur ausgelesen werden kann und das auch nur zum Teil und es noch keine "public" Methoden gibt, mit denen man senden kann.
Grundsätzlich ist der Aufbau so gedacht:
Code: Alles auswählen
ZusiConnection zusi = new ZusiConnection("127.0.0.1", 1436, "Clientname", "0.0.1");
zusi.requestFuehrerstandsanzeigen(Fuehrerstandsanzeigen.Geschwindigkeit);
zusi.requestFuehrerstandsanzeigen(Fuehrerstandsanzeigen.Druck_Hauptluftleitung); //usw.
zusi.register(this);
zusi.connect();
In dieser Klasse werden dann Methoden geschrieben, welche mit Annotations versehen werden.
Der Name der Methode kan ndabe ifrei gewählt werden, wichtig ist, dass die Anzahl der Parameter stimmen und die Datentypen.
Zum Beispiel für Ereignisse, die Zusi betreffen:
Code: Alles auswählen
@ZusiEvent(0x00)
public void onConnectionCreated(String version, String verbindungsinfo, boolean client_aktzeptiert) {
System.out.println("Zusi-Version: " + version);
System.out.println("Zusi-Verbindungsinfo: " + verbindungsinfo);
System.out.println("Client aktzeptiert: " + client_aktzeptiert);
}
Code: Alles auswählen
@ZusiData(Fuehrerstandsanzeigen.Geschwindigkeit)
public void geschwindigkeit(int geschwindigkeit) {
System.out.println(geschwindigkeit + " km/h");
}
Die Liste der Parameter die zur Zeit abgerufen werden, sidn auf den Stand der Zusi-Version 3.1.2.0
Das ist so der aktuelle Stand, dauert nicht mehr lange und dann sollte es fertig sein
Ich nutze diese im Moment für mein kleines ZusiFx Projekt
Hoffe euch gefällt meine Arbeit und vielleicht wird der eine oder andere sie dann nutzen