Interface ByteDataLayout<S extends DataBuffer<?>>
- Type Parameters:
S- type of buffer this layout can be applied to
- All Superinterfaces:
DataLayout<S,Byte>
A
DataLayout that converts data stored in a buffer to bytes.- See Also:
-
Method Summary
Modifier and TypeMethodDescriptiondefault ByteDataBufferApply this layout to the provided buffer.byteReadsn = scale()values from the buffer at the given index and return them as a byte.default BytereadObject(S buffer, long index) Readsn = scale()values from the buffer at the given index and return them as a single value in the user type.voidWrites a byte into the buffer at the given index after converting it to the buffer type.default voidwriteObject(S buffer, Byte value, long index) Writes a user value into the buffer at the given index after converting it to the buffer type.Methods inherited from interface DataLayout
scale
-
Method Details
-
applyTo
Description copied from interface:DataLayoutApply this layout to the provided buffer.The returned
DataBufferinstance is simply a wrapper to the original buffer and does not have a backing storage of his own.- Specified by:
applyToin interfaceDataLayout<S extends DataBuffer<?>, Byte>- Parameters:
buffer- the target buffer to apply this layout to- Returns:
- a buffer with this layout
-
writeByte
Writes a byte into the buffer at the given index after converting it to the buffer type.- Parameters:
buffer- the buffer to write tovalue- the byte to convert and writeindex- index in the buffer where the converted value should be written- See Also:
-
readByte
Readsn = scale()values from the buffer at the given index and return them as a byte.- Parameters:
buffer- the buffer to read fromindex- position of the buffer to read in the buffer- Returns:
- the byte value
- See Also:
-
writeObject
Description copied from interface:DataLayoutWrites a user value into the buffer at the given index after converting it to the buffer type.It is the responsibility of the implementors of this interface to write the converted value to the given buffer before this call returns, using the most appropriate method. For example, for a layout converting a
BigIntegerto a singlelong,@Override public void writeObject(LongDataBuffer buffer, BigInteger value, long index) { buffer.setLong(value.longValue(), index); }If a single user value scales over more than one buffer values,indexindicates the starting position of the sequence to be written to the buffer.- Specified by:
writeObjectin interfaceDataLayout<S extends DataBuffer<?>, Byte>- Parameters:
buffer- the buffer to write tovalue- the value in the user type to convert and writeindex- index in the buffer where the converted value should be written
-
readObject
Description copied from interface:DataLayoutReadsn = scale()values from the buffer at the given index and return them as a single value in the user type.It is the responsibility of the implementors of this interface to read the value to be converted from the given buffer, using the most appropriate method. For example, for a layout that converting a single
longto aBigInteger,@Override public BigInteger readObject(LongDataBuffer buffer, long index) { return BigInteger.valueOf(buffer.getLong(index)); }If a single user value scales over more than one buffer values,indexindicates the starting position of the sequence to be read from the buffer.- Specified by:
readObjectin interfaceDataLayout<S extends DataBuffer<?>, Byte>- Parameters:
buffer- the buffer to read fromindex- position of the buffer to read in the buffer- Returns:
- the converted value
-