# SortedFloatBinding (Oracle - Berkeley DB Java API)
Date: 2010-04-12

Berkeley DB version 4.8.30

## com.sleepycat.bind.tuple
Class SortedFloatBinding

    java.lang.Object
      com.sleepycat.bind.tuple.TupleBase<E>
          com.sleepycat.bind.tuple.TupleBinding<Float>
              com.sleepycat.bind.tuple.SortedFloatBinding

All Implemented Interfaces:
  EntryBinding<Float>

    public class SortedFloatBinding

extends TupleBinding<Float>

A concrete `TupleBinding` for a `Float` primitive wrapper or a `float` primitive.

This class produces byte array values that by default (without a custom comparator) sort correctly, including sorting of negative values. Therefore, this class should normally be used instead of `FloatBinding` which does not by default support sorting of negative values. Please note that:

- The byte array (stored) formats used by `FloatBinding` and `SortedFloatBinding` are different and incompatible. They are not interchangeable once data has been stored.
- An instance of `FloatBinding`, not `SortedFloatBinding`, is returned by `TupleBinding.getPrimitiveBinding(java.lang.Class<T>)` method. Therefore, to use `SortedFloatBinding`, `TupleBinding.getPrimitiveBinding(java.lang.Class<T>)` should not be called.

There are two ways to use this class:

1. When using the `com.sleepycat.db` package directly, the static methods in this class can be used to convert between primitive values and `DatabaseEntry` objects.
2. When using the `com.sleepycat.collections` package, an instance of this class can be used with any stored collection.

Constructor Summary
`SortedFloatBinding()`

Method Summary
`static float` `entryToFloat(DatabaseEntry entry)` Converts an entry buffer into a simple `float` value.
`Float` `entryToObject(TupleInput input)` Constructs a key or data object from a `TupleInput` entry.
`static void` `floatToEntry(float val, DatabaseEntry entry)` Converts a simple `float` value into an entry buffer.
`protected TupleOutput` `getTupleOutput(Float object)` Returns an empty TupleOutput instance that will be used by the tuple binding or key creator.
`void` `objectToEntry(Float object, TupleOutput output)` Converts a key or data object to a tuple entry.

Methods inherited from class com.sleepycat.bind.tuple.TupleBinding
`entryToObject, getPrimitiveBinding, objectToEntry`

Methods inherited from class com.sleepycat.bind.tuple.TupleBase
`entryToInput, getTupleBufferSize, inputToEntry, newOutput, newOutput, outputToEntry, setTupleBufferSize`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### SortedFloatBinding

    public SortedFloatBinding()

Method Detail

### entryToObject

    public Float entryToObject(TupleInput input)

  Description copied from class: `TupleBinding`
  Constructs a key or data object from a `TupleInput` entry.

  Specified by:
    `entryToObject` in class `TupleBinding<Float>`
  Parameters:
    `input` - is the tuple key or data entry.
  Returns:
    the key or data object constructed from the entry.

### objectToEntry

    public void objectToEntry(Float object,
                              TupleOutput output)

  Description copied from class: `TupleBinding`
  Converts a key or data object to a tuple entry.

  Specified by:
    `objectToEntry` in class `TupleBinding<Float>`
  Parameters:
    `object` - is the key or data object.
    `output` - is the tuple entry to which the key or data should be written.

### getTupleOutput

    protected TupleOutput getTupleOutput(Float object)

  Description copied from class: `TupleBase`
  Returns an empty TupleOutput instance that will be used by the tuple binding or key creator.

  The default implementation of this method creates a new TupleOutput with an initial buffer size that can be changed using the `TupleBase.setTupleBufferSize(int)` method.

  This method may be overridden to return a TupleOutput instance. For example, an instance per thread could be created and returned by this method. If a TupleOutput instance is reused, be sure to call its `FastOutputStream.reset()` method before each use.

  Overrides:
    `getTupleOutput` in class `TupleBase<Float>`
  Parameters:
    `object` - is the object to be written to the tuple output, and may be used by subclasses to determine the size of the output buffer.
  Returns:
    an empty TupleOutput instance.
  See Also:
    `TupleBase.setTupleBufferSize(int)`

### entryToFloat

    public static float entryToFloat(DatabaseEntry entry)

  Converts an entry buffer into a simple `float` value.

  Parameters:
    `entry` - is the source entry buffer.
  Returns:
    the resulting value.

### floatToEntry

    public static void floatToEntry(float val,
                                    DatabaseEntry entry)

  Converts a simple `float` value into an entry buffer.

  Parameters:
    `val` - is the source value.
    `entry` - is the destination entry buffer.

Berkeley DB version 4.8.30

Copyright (c) 1996-2009 Oracle. All rights reserved.