public abstract class BinaryObject
extends java.lang.Object
Binäre Darstellung eines Objekts in der Konfigurationsdatei (ConfigAreaFile
).
Diese Klasse bietet einfache Methoden um Objekte aus DataInput
-Objekten (wie DataInputStreams oder BufferedRandomAccessFile
s) einzulesen und sie wieder zu schreiben.
Modifier and Type | Field and Description |
---|---|
static int |
CONFIG_OBJ_HEADER_SIZE
Größe des Headers fär Konfigurationsobjekte: ID (long), PidHashCode (int), Typ-ID (long), Objekttyp (byte), Ungültig (short), Gültig (short)
|
static int |
CONFIGURATION_OBJECT_TYPE |
static int |
DYN_OBJ_HEADER_SIZE
Größe des Headers fär dynamische Objekte: ID (long), PidHashCode (int), Typ-ID (long), Objekttyp (byte), Ungültig (long), Gültig (long), Simulationsvariante (short)
|
static int |
DYNAMIC_OBJECT_TYPE |
Constructor and Description |
---|
BinaryObject() |
Modifier and Type | Method and Description |
---|---|
static BinaryObject |
fromDataInput(java.io.DataInput input)
Liest ein Objekt ein
|
abstract long |
getObjectId()
Gibt die Objekt-ID zurück
|
abstract byte[] |
getPackedBytes()
Gibt die gepackten Bytes zurück.
|
abstract int |
getPidHashCode()
Gibt den Pid-Hashcode zurück
|
abstract long |
getTypeId()
Gibt die ID des Objekttyps zuück
|
abstract SystemObjectInformationInterface |
toSystemObjectInfo(ConfigAreaFile file,
long position) |
abstract int |
write(java.io.DataOutput output)
Schreibt das Objekt in den Ausgabe-Stream
|
public static final int CONFIG_OBJ_HEADER_SIZE
Größe des Headers fär Konfigurationsobjekte: ID (long), PidHashCode (int), Typ-ID (long), Objekttyp (byte), Ungültig (short), Gültig (short)
public static final int DYN_OBJ_HEADER_SIZE
Größe des Headers fär dynamische Objekte: ID (long), PidHashCode (int), Typ-ID (long), Objekttyp (byte), Ungültig (long), Gültig (long), Simulationsvariante (short)
public static final int CONFIGURATION_OBJECT_TYPE
public static final int DYNAMIC_OBJECT_TYPE
public static BinaryObject fromDataInput(java.io.DataInput input) throws java.io.IOException
Liest ein Objekt ein
input
- Eingabe-Stream oder BufferedRandomAccessFile
, das sich an der richtigen Position befindet. Der Stream befindet sich nach dem Einlesen garantiert an der Position nach dem Objekt (oder der Lücke), wo also ein weiteres Objekt gelesen werden kännte.java.io.IOException
public abstract int write(java.io.DataOutput output) throws java.io.IOException
Schreibt das Objekt in den Ausgabe-Stream
output
- Ausgabejava.io.IOException
public abstract long getObjectId()
Gibt die Objekt-ID zurück
public abstract int getPidHashCode()
Gibt den Pid-Hashcode zurück
public abstract long getTypeId()
Gibt die ID des Objekttyps zuück
public abstract byte[] getPackedBytes()
Gibt die gepackten Bytes zurück. Die gepackten Bytes enthalten weitere Objektinformationen wie die Name, Pid, Konfigurationsdaten usw.
public abstract SystemObjectInformationInterface toSystemObjectInfo(ConfigAreaFile file, long position) throws java.io.IOException, NoSuchVersionException
java.io.IOException
NoSuchVersionException