GenuineSounds

Saving Format

May 25th, 2012
183
0
Never
1
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.32 KB | None | 0 0
  1. package ltd.genuinesounds.game.SaveFormat;
  2.  
  3. import java.nio.ByteBuffer;
  4.  
  5. public class Format {
  6.  
  7.     public static final byte TAG_READ_ONLY = 0b00000001;
  8.     public static final byte TAG_SIZE_IN_BYTES = 0b00000010;
  9.     public static final byte TAG_START_NAME = 0b00000100;
  10.     public static final byte TAG_END_NAME = 0b00001000;
  11.     public static final byte TAG_START_CONTENT = 0b00010000;
  12.     public static final byte TAG_END_CONTENT = 0b00100000;
  13.  
  14.     public static final byte CASE_BOOLEAN = 0;
  15.     public static final byte CASE_BYTE = 1;
  16.     public static final byte CASE_SHORT = 2;
  17.     public static final byte CASE_CHAR = 3;
  18.     public static final byte CASE_INT = 4;
  19.     public static final byte CASE_FLOAT = 5;
  20.     public static final byte CASE_DOUBLE = 6;
  21.     public static final byte CASE_LONG = 7;
  22.     public static final byte CASE_STRING = 8;
  23.  
  24.     @SuppressWarnings("unchecked")
  25.     public static void saveAs(int caser, ISetting<?> setting) {
  26.         byte[] array = new byte[] {};
  27.         switch (caser) {
  28.             case CASE_BOOLEAN:
  29.                 array = createByteArrayForBoolean((ISetting<Boolean>) setting);
  30.                 break;
  31.         }
  32.     }
  33.  
  34.     private static byte[] createByteArrayForBoolean(ISetting<Boolean> setting) {
  35.         ByteBuffer bb = ByteBuffer.allocate(0xFFFFFFFF);
  36.  
  37.         // Set read-only bit.
  38.         bb.put(setting.isReadOnly() ? TAG_READ_ONLY : 0);
  39.  
  40.         bb.rewind();
  41.         return bb.array();
  42.     }
  43.  
  44. }
Advertisement
Comments
  • User was banned
Add Comment
Please, Sign In to add comment