maze-generator/src/main/java/ch/fritteli/maze/generator/serialization/AbstractMazeOutputStream.java

29 lines
737 B
Java

package ch.fritteli.maze.generator.serialization;
import ch.fritteli.maze.generator.model.Maze;
import java.io.ByteArrayOutputStream;
import lombok.NonNull;
public abstract class AbstractMazeOutputStream extends ByteArrayOutputStream {
public abstract void writeHeader();
public abstract void writeMazeData(@NonNull final Maze maze);
public void writeByte(final byte value) {
this.write(value);
}
public void writeInt(final int value) {
this.write(value >> 24);
this.write(value >> 16);
this.write(value >> 8);
this.write(value);
}
public void writeLong(final long value) {
this.writeInt((int) (value >> 32));
this.writeInt((int) value);
}
}