view src/org/dancres/util/BytePacker.java @ 0:3dc0c5604566

Initial checkin of blitz 2.0 fcs - no installer yet.
author Dan Creswell <dan.creswell@gmail.com>
date Sat, 21 Mar 2009 11:00:06 +0000
parents
children
line wrap: on
line source

package org.dancres.util;

/**
   A class to pack and unpack longs or ints into a byte array
 */
public abstract class BytePacker {

    /**
       @return BytePacker that stores things in MSB order
     */
    public static BytePacker getMSBPacker() {
        return new MSBBytePacker();
    }

    /**
       @return BytePacker that stores things in MSB order
     */
    public static BytePacker getMSBPacker(byte[] aBytes) {
        return new MSBBytePacker(aBytes);
    }

    public abstract void setData(byte[] aBytes);
    public abstract int getInt(int anOffset);
    public abstract void putArray(byte[] anArray, int anOffset);
    public abstract byte[] getArray(int anOffset, int aLength);
    public abstract long getLong(int anOffset);
    public abstract void putInt(int anInt, int anOffset);
    public abstract void putLong(long aLong, int anOffset);
}