public final int hash(ByteBuffer buf, int seed) {
    final int hash = hash(buf, buf.position(), buf.remaining(), seed);
    buf.position(buf.limit());
    return hash;
  }
public final int hash ( ByteBuffer buf , int seed ) { final int hash = hash ( buf , buf . position ( ) , buf . remaining ( ) , seed ) ; buf . position ( buf . limit ( ) ) ; return hash ; }
Computes the hash of the given {@link ByteBuffer}. The
{@link ByteBuffer#position() position} is moved in order to reflect bytes
which have been read.

@param buf the input data
@param seed the seed to use
@return the hash value