1 package org.simantics.db.service;
\r
4 final public class Bytes {
\r
6 final public static void write(byte[] bytes, int index, byte value) {
\r
7 bytes[index] = value;
\r
10 final public static void writeLE(byte[] bytes, int index, long value) {
\r
12 bytes[index++] = (byte) (value & 0xFF);
\r
13 bytes[index++] = (byte) ((value >>> 8) & 0xFF);
\r
14 bytes[index++] = (byte) ((value >>> 16) & 0xFF);
\r
15 bytes[index++] = (byte) ((value >>> 24) & 0xFF);
\r
16 bytes[index++] = (byte) ((value >>> 32) & 0xFF);
\r
17 bytes[index++] = (byte) ((value >>> 40) & 0xFF);
\r
18 bytes[index++] = (byte) ((value >>> 48) & 0xFF);
\r
19 bytes[index++] = (byte) ((value >>> 56) & 0xFF);
\r
23 final public static void writeLE6(byte[] bytes, int index, long value) {
\r
25 bytes[index++] = (byte) (value & 0xFF);
\r
26 bytes[index++] = (byte) ((value >>> 8) & 0xFF);
\r
27 bytes[index++] = (byte) ((value >>> 16) & 0xFF);
\r
28 bytes[index++] = (byte) ((value >>> 24) & 0xFF);
\r
29 bytes[index++] = (byte) ((value >>> 32) & 0xFF);
\r
30 bytes[index++] = (byte) ((value >>> 40) & 0xFF);
\r
34 final public static void writeLE7(byte[] bytes, int index, long value) {
\r
36 bytes[index++] = (byte) (value & 0xFF);
\r
37 bytes[index++] = (byte) ((value >>> 8) & 0xFF);
\r
38 bytes[index++] = (byte) ((value >>> 16) & 0xFF);
\r
39 bytes[index++] = (byte) ((value >>> 24) & 0xFF);
\r
40 bytes[index++] = (byte) ((value >>> 32) & 0xFF);
\r
41 bytes[index++] = (byte) ((value >>> 40) & 0xFF);
\r
42 bytes[index++] = (byte) ((value >>> 48) & 0xFF);
\r
46 final public static void writeLE8(byte[] bytes, int index, long value) {
\r
48 bytes[index++] = (byte) (value & 0xFF);
\r
49 bytes[index++] = (byte) ((value >>> 8) & 0xFF);
\r
50 bytes[index++] = (byte) ((value >>> 16) & 0xFF);
\r
51 bytes[index++] = (byte) ((value >>> 24) & 0xFF);
\r
52 bytes[index++] = (byte) ((value >>> 32) & 0xFF);
\r
53 bytes[index++] = (byte) ((value >>> 40) & 0xFF);
\r
54 bytes[index++] = (byte) ((value >>> 48) & 0xFF);
\r
55 bytes[index++] = (byte) ((value >>> 56) & 0xFF);
\r
59 final public static void writeLE(byte[] bytes, int index, int value) {
\r
61 bytes[index++] = (byte) (value & 0xFF);
\r
62 bytes[index++] = (byte) ((value >>> 8) & 0xFF);
\r
63 bytes[index++] = (byte) ((value >>> 16) & 0xFF);
\r
64 bytes[index++] = (byte) ((value >>> 24) & 0xFF);
\r
68 final public static void writeLE(byte[] bytes, int index, short value) {
\r
70 bytes[index++] = (byte) (value & 0xFF);
\r
71 bytes[index++] = (byte) ((value >>> 8) & 0xFF);
\r
75 final public static byte read(byte[] bytes, int byteIndex) {
\r
76 return bytes[byteIndex++];
\r
79 final public static int readLE2(byte[] bytes, int byteIndex) {
\r
81 (((int)(bytes[byteIndex++] & 0xff)) |
\r
82 (((int)(bytes[byteIndex++] & 0xff))<<8));
\r
86 final public static int readLE4(byte[] bytes, int byteIndex) {
\r
88 (((int)(bytes[byteIndex++] & 0xff)) |
\r
89 (((int)(bytes[byteIndex++] & 0xff))<<8) |
\r
90 (((int)(bytes[byteIndex++] & 0xff))<<16) |
\r
91 (((int)(bytes[byteIndex++] & 0xff))<<24));
\r
95 final public static long readLE7(byte[] bytes, int byteIndex) {
\r
96 long result = (long)
\r
97 (((long)(bytes[byteIndex++] & 0xff)) |
\r
98 (((long)(bytes[byteIndex++] & 0xff))<<8) |
\r
99 (((long)(bytes[byteIndex++] & 0xff))<<16) |
\r
100 (((long)(bytes[byteIndex++] & 0xff))<<24) |
\r
101 (((long)(bytes[byteIndex++] & 0xff))<<32) |
\r
102 (((long)(bytes[byteIndex++] & 0xff))<<40) |
\r
103 (((long)(bytes[byteIndex++] & 0xff))<<48));
\r
107 final public static long readLE8(byte[] bytes, int byteIndex) {
\r
108 long result = (long)
\r
109 (((long)(bytes[byteIndex++] & 0xff)) |
\r
110 (((long)(bytes[byteIndex++] & 0xff))<<8) |
\r
111 (((long)(bytes[byteIndex++] & 0xff))<<16) |
\r
112 (((long)(bytes[byteIndex++] & 0xff))<<24) |
\r
113 (((long)(bytes[byteIndex++] & 0xff))<<32) |
\r
114 (((long)(bytes[byteIndex++] & 0xff))<<40) |
\r
115 (((long)(bytes[byteIndex++] & 0xff))<<48) |
\r
116 (((long)(bytes[byteIndex++] & 0xff))<<56));
\r