Package org.apache.lucene.util.packed

# Enum Class PackedInts.Format

java.lang.Object
java.lang.Enum<PackedInts.Format>
org.apache.lucene.util.packed.PackedInts.Format

All Implemented Interfaces:
  `Serializable`, `Comparable<PackedInts.Format>`, `Constable`

Enclosing class:
  `PackedInts`

public static enum PackedInts.Format extends Enum<PackedInts.Format>
A format to write packed ints.

NOTE: This API is for internal purposes only and might change in incompatible ways in the next release.

## Nested Class Summary

## Nested classes/interfaces inherited from class java.lang.Enum

`Enum.EnumDesc<E extends Enum<E>>`

## Enum Constant Summary

Enum Constants
Enum Constant
Description
`PACKED`
Compact format, all bits are written contiguously.
`PACKED_SINGLE_BLOCK`
Deprecated.
Use `PACKED` instead.

## Field Summary

Fields
Modifier and Type
Field
Description
`final int`
`id`

## Method Summary

Modifier and Type
Method
Description
`static PackedInts.Format`
`byId(int id)`
Get a format according to its ID.
`long`
`byteCount(int packedIntsVersion, int valueCount, int bitsPerValue)`
Computes how many byte blocks are needed to store `values` values of size `bitsPerValue`.
`int`
`getId()`
Returns the ID of the format.
`boolean`
`isSupported(int bitsPerValue)`
Tests whether the provided number of bits per value is supported by the format.
`int`
`longCount(int packedIntsVersion, int valueCount, int bitsPerValue)`
Computes how many long blocks are needed to store `values` values of size `bitsPerValue`.
`float`
`overheadPerValue(int bitsPerValue)`
Returns the overhead per value, in bits.
`final float`
`overheadRatio(int bitsPerValue)`
Returns the overhead ratio (`overhead per value / bits per value`).
`static PackedInts.Format`
`valueOf(String name)`
Returns the enum constant of this class with the specified name.
`static PackedInts.Format[]`
`values()`
Returns an array containing the constants of this enum class, in the order they are declared.

### Methods inherited from class java.lang.Enum

`clone, compareTo, describeConstable, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf`

### Methods inherited from class java.lang.Object

`getClass, notify, notifyAll, wait, wait, wait`

## Enum Constant Details

### PACKED

public static final PackedInts.Format PACKED
Compact format, all bits are written contiguously.

### PACKED_SINGLE_BLOCK

@Deprecated public static final PackedInts.Format PACKED_SINGLE_BLOCK
Deprecated.
Use `PACKED` instead.
A format that may insert padding bits to improve encoding and decoding speed. Since this format doesn't support all possible bits per value, you should never use it directly, but rather use `PackedInts.fastestFormatAndBits(int, int, float)` to find the format that best suits your needs.

## Field Details

### id

public final int id

## Method Details

### values

public static PackedInts.Format[] values()
Returns an array containing the constants of this enum class, in the order they are declared.

Returns:
  an array containing the constants of this enum class, in the order they are declared

### valueOf

public static PackedInts.Format valueOf(String name)
Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (Extraneous whitespace characters are not permitted.)

Parameters:
  `name` - the name of the enum constant to be returned.
Returns:
  the enum constant with the specified name
Throws:
  `IllegalArgumentException` - if this enum class has no constant with the specified name
  `NullPointerException` - if the argument is null

### byId

public static PackedInts.Format byId(int id)
Get a format according to its ID.

### getId

public int getId()
Returns the ID of the format.

### byteCount

public long byteCount(int packedIntsVersion, int valueCount, int bitsPerValue)
Computes how many byte blocks are needed to store `values` values of size `bitsPerValue`.

### longCount

public int longCount(int packedIntsVersion, int valueCount, int bitsPerValue)
Computes how many long blocks are needed to store `values` values of size `bitsPerValue`.

### isSupported

public boolean isSupported(int bitsPerValue)
Tests whether the provided number of bits per value is supported by the format.

### overheadPerValue

public float overheadPerValue(int bitsPerValue)
Returns the overhead per value, in bits.

### overheadRatio

public final float overheadRatio(int bitsPerValue)
Returns the overhead ratio (`overhead per value / bits per value`).