From 06b5113f3d98a44530c2ade6810bc75092fccc31 Mon Sep 17 00:00:00 2001 From: Anton Tananaev Date: Tue, 20 Oct 2015 13:59:44 +1300 Subject: Refactor bit utililies class --- src/org/traccar/helper/BitUtil.java | 24 ++++++++++++++++-------- 1 file changed, 16 insertions(+), 8 deletions(-) (limited to 'src/org/traccar/helper/BitUtil.java') diff --git a/src/org/traccar/helper/BitUtil.java b/src/org/traccar/helper/BitUtil.java index 81c638a68..31271a691 100644 --- a/src/org/traccar/helper/BitUtil.java +++ b/src/org/traccar/helper/BitUtil.java @@ -24,20 +24,28 @@ public final class BitUtil { return (number & (1 << index)) != 0; } - public static int range(int number, int index) { - return number >> index; + public static int between(int number, int from, int to) { + return (number >> from) & ((1 << to - from) - 1); } - public static int range(int number, int index, int length) { - return (number >> index) & ((1 << length) - 1); + public static int from(int number, int from) { + return number >> from; } - public static long range(long number, int index) { - return number >> index; + public static int to(int number, int to) { + return between(number, 0, to); } - public static long range(long number, int index, int length) { - return (number >> index) & ((1L << length) - 1); + public static long between(long number, int from, int to) { + return (number >> from) & ((1L << to - from) - 1L); + } + + public static long from(long number, int from) { + return number >> from; + } + + public static long to(long number, int to) { + return between(number, 0, to); } } -- cgit v1.2.3