public class ArrayEncoder
extends java.lang.Object
| Constructor and Description |
|---|
ArrayEncoder() |
| Modifier and Type | Method and Description |
|---|---|
static int[] |
decodeMod3Sves(byte[] data,
int N)
Decodes a
byte array encoded with encodeMod3Sves(int[]) back to an int array
with N coefficients between -1 and 1. |
static int[] |
decodeMod3Tight(byte[] b,
int N)
Converts a byte array produced by
encodeMod3Tight(int[]) back to an int array. |
static int[] |
decodeMod3Tight(java.io.InputStream is,
int N)
Converts data produced by
encodeMod3Tight(int[]) back to an int array. |
static int[] |
decodeModQ(byte[] data,
int N,
int q)
|
static int[] |
decodeModQ(java.io.InputStream is,
int N,
int q)
Decodes data encoded with
encodeModQ(int[], int) back to an int array. |
static byte[] |
encodeMod3Sves(int[] arr)
Encodes an
int array whose elements are between -1 and 1, to a byte array. |
static byte[] |
encodeMod3Tight(int[] intArray)
Encodes an
int array whose elements are between -1 and 1, to a byte array. |
static byte[] |
encodeModQ(int[] a,
int q)
Encodes an int array whose elements are between 0 and
q,
to a byte array leaving no gaps between bits. |
public static byte[] encodeModQ(int[] a,
int q)
q,
to a byte array leaving no gaps between bits.q must be a power of 2.a - the input arrayq - the moduluspublic static int[] decodeModQ(byte[] data,
int N,
int q)
byte array encoded with encodeModQ(int[], int) back to an int array.N is the number of coefficients. q must be a power of 2.data - an encoded ternary polynomialN - number of coefficientsq - N coefficients between 0 and q-1public static int[] decodeModQ(java.io.InputStream is,
int N,
int q)
throws java.io.IOException
encodeModQ(int[], int) back to an int array.N is the number of coefficients. q must be a power of 2.is - an encoded ternary polynomialN - number of coefficientsq - java.io.IOExceptionpublic static int[] decodeMod3Sves(byte[] data,
int N)
byte array encoded with encodeMod3Sves(int[]) back to an int array
with N coefficients between -1 and 1.data - an encoded ternary polynomialN - number of coefficientspublic static byte[] encodeMod3Sves(int[] arr)
int array whose elements are between -1 and 1, to a byte array.
coeffs[2*i] and coeffs[2*i+1] must not both equal -1 for any integer i,
so this method is only safe to use with arrays produced by decodeMod3Sves(byte[], int).arr - public static byte[] encodeMod3Tight(int[] intArray)
int array whose elements are between -1 and 1, to a byte array.public static int[] decodeMod3Tight(byte[] b,
int N)
encodeMod3Tight(int[]) back to an int array.b - a byte arrayN - number of coefficientspublic static int[] decodeMod3Tight(java.io.InputStream is,
int N)
throws java.io.IOException
encodeMod3Tight(int[]) back to an int array.is - an input stream containing the data to decodeN - number of coefficientsjava.io.IOException