Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package ltd.genuinesounds.game.SaveFormat;
- import java.nio.ByteBuffer;
- public class Format {
- public static final byte TAG_READ_ONLY = 0b00000001;
- public static final byte TAG_SIZE_IN_BYTES = 0b00000010;
- public static final byte TAG_START_NAME = 0b00000100;
- public static final byte TAG_END_NAME = 0b00001000;
- public static final byte TAG_START_CONTENT = 0b00010000;
- public static final byte TAG_END_CONTENT = 0b00100000;
- public static final byte CASE_BOOLEAN = 0;
- public static final byte CASE_BYTE = 1;
- public static final byte CASE_SHORT = 2;
- public static final byte CASE_CHAR = 3;
- public static final byte CASE_INT = 4;
- public static final byte CASE_FLOAT = 5;
- public static final byte CASE_DOUBLE = 6;
- public static final byte CASE_LONG = 7;
- public static final byte CASE_STRING = 8;
- @SuppressWarnings("unchecked")
- public static void saveAs(int caser, ISetting<?> setting) {
- byte[] array = new byte[] {};
- switch (caser) {
- case CASE_BOOLEAN:
- array = createByteArrayForBoolean((ISetting<Boolean>) setting);
- break;
- }
- }
- private static byte[] createByteArrayForBoolean(ISetting<Boolean> setting) {
- ByteBuffer bb = ByteBuffer.allocate(0xFFFFFFFF);
- // Set read-only bit.
- bb.put(setting.isReadOnly() ? TAG_READ_ONLY : 0);
- bb.rewind();
- return bb.array();
- }
- }
Advertisement