public class Asn1NasUtil
extends java.lang.Object
| Modifier and Type | Class and Description | 
|---|---|
static class  | 
Asn1NasUtil.ARFCNRange  | 
| Modifier and Type | Field and Description | 
|---|---|
static int | 
FREQ_LIST_FMT_BITMAP0
Enumeration of the formats supported for ARFCN encoding. 
 | 
static int | 
FREQ_LIST_FMT_RANGE_1024  | 
static int | 
FREQ_LIST_FMT_RANGE_128  | 
static int | 
FREQ_LIST_FMT_RANGE_256  | 
static int | 
FREQ_LIST_FMT_RANGE_512  | 
static int | 
FREQ_LIST_FMT_VAR_BITMAP  | 
| Constructor and Description | 
|---|
Asn1NasUtil()  | 
| Modifier and Type | Method and Description | 
|---|---|
static int[] | 
decodeARFCN(int format,
           byte[] data,
           int numbits)
Decode a list of ARFCN (frequency list) that have been encoded as
 described in 44.018 10.5.2.13 Frequency List and Annex J. 
 | 
static void | 
encodeARFCN(int[] arfcns,
           int format,
           int range,
           int f0,
           Asn1BitString data)
Encode a list of ARFCN (frequency list). 
 | 
static Asn1NasUtil.ARFCNRange | 
getARFCNRange(int[] arfcns)
Determines the minimum range for the given list of ARFCNs according to
 44.018 Annex F. 
 | 
public static final int FREQ_LIST_FMT_BITMAP0
public static final int FREQ_LIST_FMT_RANGE_1024
public static final int FREQ_LIST_FMT_RANGE_512
public static final int FREQ_LIST_FMT_RANGE_256
public static final int FREQ_LIST_FMT_RANGE_128
public static final int FREQ_LIST_FMT_VAR_BITMAP
public static int[] decodeARFCN(int format,
                                byte[] data,
                                int numbits)
format - The format in which the ARFCNs have been encoded.
    One of the FREQ_LIST_FMT_* constants.data - The encoding of the ARFCNs.  This only
    includes the bits that actually encode the ARFCNs and not the bits that
    indicate the choice of the format.  For example, in the Frequency List
    IE, format range 1024, data begins with bit 3 of octet 3.numbits - The number of bits to be decoded.public static void encodeARFCN(int[] arfcns,
                               int format,
                               int range,
                               int f0,
                               Asn1BitString data)
arfcns - Array of ARFCNs to be encoded. The values must be
    distinct.  Their ordering does not matter.format - The format to apply to the encoding. One of the
    FREQ_LIST_FMT_* constants.  It is an error if the given ARFCNs cannot
    be encoded in the given format.
    For bitmap0, all ARFCNs must be in the range 1..124.
    For range formats 512, 256, and 128, the ARFCNs have a corresponding
    minimum range of less than or equal to 512, 256, and 128, respectively.range - The minimum range of the given arfcns. The minimum range
    R is the smallest value such that there is some value in the set, F0,
    such that every value in the set can be expressed as:
          (F0 + N) % 1024   for some N in [0, R-1]
    getARFCNRange can be used to obtain the minimum range and a
    value for F0. This argument is not used for format bitmap0.f0 - An ARFCN from the list serving as F0 for the given range. This
    argument is not used for format bitmap0.data - Receives the encoded ARFCNs (includes the F0/orig_arfcn
    fields.)public static Asn1NasUtil.ARFCNRange getARFCNRange(int[] arfcns)
arfcns - array of ARFCNs