Package com.esri.core.geometry
Class AttributeStreamOfInt8
- java.lang.Object
-
- com.esri.core.geometry.AttributeStreamBase
-
- com.esri.core.geometry.AttributeStreamOfInt8
-
public final class AttributeStreamOfInt8 extends AttributeStreamBase
-
-
Constructor Summary
Constructors Constructor Description AttributeStreamOfInt8(int size)
AttributeStreamOfInt8(int size, byte defaultValue)
AttributeStreamOfInt8(AttributeStreamOfInt8 other)
AttributeStreamOfInt8(AttributeStreamOfInt8 other, int maxSize)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
add(byte value)
Adds a new value at the end of the stream.void
addRange(AttributeStreamBase src, int start, int count, boolean bForward, int stride)
Adds a range of elements from the source stream.int
calculateHashImpl(int hashCode, int start, int end)
int
capacity()
boolean
empty()
boolean
equals(AttributeStreamBase other, int start, int end)
boolean
equals(AttributeStreamBase other, int start, int end, double tol)
void
eraseRange(int index, int count, int validSize)
Erases a range from the buffer and defragments the result.long
estimateMemorySize()
Returns an estimate of this object size in bytes.byte[]
getBackingArray()
Returns the backing array.byte
getLast()
int
getPersistence()
Returns the Persistence type of the stream.void
insertAttributes(int before, Point[] src, int count, int semantics, int validSize_)
void
insertAttributes(int start, Point pt, int semantics, int validSize_)
Inserts the attributes of a given semantics from a Point geometry.void
insertRange(int start, double value, int count, int validSize_)
Inserts a range of elements of the given value.void
insertRange(int start, AttributeStreamBase src, int srcStart, int count, boolean bForward, int stride, int validSize_)
Inserts a range of elements from the source stream.byte
read(int offset)
Reads a value from the buffer at given offset.double
readAsDbl(int offset)
Reads given element and returns it as double.int
readAsInt(int offset)
Reads given element and returns it as int (truncated if double).long
readAsInt64(int offset)
Reads given element and returns it as int (truncated if double).void
readRange(int srcStart, int count, ByteBuffer dst, int dstOffset, boolean bForward)
Write a range of elements to the source byte buffer.void
removeLast()
void
reserve(int reserve)
void
resize(int newSize)
Resizes the AttributeStream to the new size.void
resize(int newSize, double defaultValue)
Resizes the AttributeStream to the new size.void
resizePreserveCapacity(int newSize)
Resizes the AttributeStream to the new size.AttributeStreamBase
restrictedClone(int maxsize)
Creats a copy of the stream that contains upto maxsize elements.void
reverseRange(int index, int count, int stride)
Reverses a range from the buffer.void
set(int offset, byte value)
void
setBits(int offset, byte mask)
OR's the given element with new value.void
setRange(double value, int start, int count)
Sets a range of values to given value.int
size()
byte[]
toArray()
Copies content of this buffer into an array of size size().int
virtualSize()
Returns the number of elements in the stream.void
write(int offset, byte value)
Overwrites given element with new value.void
writeAsDbl(int offset, double d)
Writes given element as double.void
writeAsInt(int offset, int d)
Writes given element as int.void
writeAsInt64(int offset, long d)
Writes given element as int.void
writeRange(int startElement, int count, AttributeStreamBase _src, int srcStart, boolean bForward, int stride)
Adds a range of elements from the source byte buffer.void
writeRange(int startElement, int count, ByteBuffer src, int offsetBytes, boolean bForward)
Adds a range of elements from the source byte buffer.-
Methods inherited from class com.esri.core.geometry.AttributeStreamBase
createAttributeStreamWithPersistence, createAttributeStreamWithPersistence, createAttributeStreamWithSemantics, createAttributeStreamWithSemanticsUninitialized, createByteStream, createByteStream, createDoubleStream, createDoubleStream, createIndexStream, createIndexStream, growBy25, growSize, rotate
-
-
-
-
Constructor Detail
-
AttributeStreamOfInt8
public AttributeStreamOfInt8(int size)
-
AttributeStreamOfInt8
public AttributeStreamOfInt8(int size, byte defaultValue)
-
AttributeStreamOfInt8
public AttributeStreamOfInt8(AttributeStreamOfInt8 other)
-
AttributeStreamOfInt8
public AttributeStreamOfInt8(AttributeStreamOfInt8 other, int maxSize)
-
-
Method Detail
-
size
public int size()
-
empty
public boolean empty()
-
reserve
public void reserve(int reserve)
-
capacity
public int capacity()
-
read
public byte read(int offset)
Reads a value from the buffer at given offset.- Parameters:
offset
- is the element number in the stream.
-
write
public void write(int offset, byte value)
Overwrites given element with new value.- Parameters:
offset
- is the element number in the stream.value
- is the value to write.
-
set
public void set(int offset, byte value)
-
add
public void add(byte value)
Adds a new value at the end of the stream.- Parameters:
value
- is the value to write.
-
restrictedClone
public AttributeStreamBase restrictedClone(int maxsize)
Description copied from class:AttributeStreamBase
Creats a copy of the stream that contains upto maxsize elements.- Specified by:
restrictedClone
in classAttributeStreamBase
-
virtualSize
public int virtualSize()
Description copied from class:AttributeStreamBase
Returns the number of elements in the stream.- Specified by:
virtualSize
in classAttributeStreamBase
-
estimateMemorySize
public long estimateMemorySize()
Description copied from class:AttributeStreamBase
Returns an estimate of this object size in bytes.- Specified by:
estimateMemorySize
in classAttributeStreamBase
- Returns:
- Returns an estimate of this object size in bytes.
-
getPersistence
public int getPersistence()
Description copied from class:AttributeStreamBase
Returns the Persistence type of the stream.- Specified by:
getPersistence
in classAttributeStreamBase
-
readAsDbl
public double readAsDbl(int offset)
Description copied from class:AttributeStreamBase
Reads given element and returns it as double.- Specified by:
readAsDbl
in classAttributeStreamBase
-
readAsInt
public int readAsInt(int offset)
Description copied from class:AttributeStreamBase
Reads given element and returns it as int (truncated if double).- Specified by:
readAsInt
in classAttributeStreamBase
-
readAsInt64
public long readAsInt64(int offset)
Description copied from class:AttributeStreamBase
Reads given element and returns it as int (truncated if double).- Specified by:
readAsInt64
in classAttributeStreamBase
-
resize
public void resize(int newSize)
Description copied from class:AttributeStreamBase
Resizes the AttributeStream to the new size.- Specified by:
resize
in classAttributeStreamBase
-
resizePreserveCapacity
public void resizePreserveCapacity(int newSize)
Description copied from class:AttributeStreamBase
Resizes the AttributeStream to the new size. Does not change the capacity of the stream.- Specified by:
resizePreserveCapacity
in classAttributeStreamBase
-
resize
public void resize(int newSize, double defaultValue)
Description copied from class:AttributeStreamBase
Resizes the AttributeStream to the new size.- Specified by:
resize
in classAttributeStreamBase
-
writeAsDbl
public void writeAsDbl(int offset, double d)
Description copied from class:AttributeStreamBase
Writes given element as double. The double is cast to the internal representation (truncated when int).- Specified by:
writeAsDbl
in classAttributeStreamBase
-
writeAsInt64
public void writeAsInt64(int offset, long d)
Description copied from class:AttributeStreamBase
Writes given element as int. The int is cast to the internal representation.- Specified by:
writeAsInt64
in classAttributeStreamBase
-
writeAsInt
public void writeAsInt(int offset, int d)
Description copied from class:AttributeStreamBase
Writes given element as int. The int is cast to the internal representation.- Specified by:
writeAsInt
in classAttributeStreamBase
-
setBits
public void setBits(int offset, byte mask)
OR's the given element with new value.- Parameters:
offset
- is the element number in the stream.mask
- is the value to OR.
-
calculateHashImpl
public int calculateHashImpl(int hashCode, int start, int end)
- Specified by:
calculateHashImpl
in classAttributeStreamBase
-
equals
public boolean equals(AttributeStreamBase other, int start, int end)
- Specified by:
equals
in classAttributeStreamBase
-
equals
public boolean equals(AttributeStreamBase other, int start, int end, double tol)
- Specified by:
equals
in classAttributeStreamBase
-
getLast
public byte getLast()
-
removeLast
public void removeLast()
-
addRange
public void addRange(AttributeStreamBase src, int start, int count, boolean bForward, int stride)
Description copied from class:AttributeStreamBase
Adds a range of elements from the source stream. The streams must be of the same type.- Specified by:
addRange
in classAttributeStreamBase
- Parameters:
src
- The source stream to read elements from.start
- The index of the element in the source stream to start reading from.count
- The number of elements to add.bForward
- True if adding the elements in order of the incoming source stream. False if adding the elements in reverse.stride
- The number of elements to be grouped together if adding the elements in reverse.
-
insertRange
public void insertRange(int start, AttributeStreamBase src, int srcStart, int count, boolean bForward, int stride, int validSize_)
Description copied from class:AttributeStreamBase
Inserts a range of elements from the source stream. The streams must be of the same type.- Specified by:
insertRange
in classAttributeStreamBase
- Parameters:
start
- The index where to start the insert.src
- The source stream to read elements from.srcStart
- The index of the element in the source stream to start reading from.count
- The number of elements to read from the source stream.validSize_
- The number of valid elements in this stream.
-
insertRange
public void insertRange(int start, double value, int count, int validSize_)
Description copied from class:AttributeStreamBase
Inserts a range of elements of the given value.- Specified by:
insertRange
in classAttributeStreamBase
- Parameters:
start
- The index where to start the insert.value
- The value to be inserted.count
- The number of elements to be inserted.validSize_
- The number of valid elements in this stream.
-
insertAttributes
public void insertAttributes(int start, Point pt, int semantics, int validSize_)
Description copied from class:AttributeStreamBase
Inserts the attributes of a given semantics from a Point geometry.- Specified by:
insertAttributes
in classAttributeStreamBase
- Parameters:
start
- The index where to start the insert.pt
- The Point geometry holding the attributes to be inserted.semantics
- The attribute semantics that are being inserted.validSize_
- The number of valid elements in this stream.
-
insertAttributes
public void insertAttributes(int before, Point[] src, int count, int semantics, int validSize_)
- Specified by:
insertAttributes
in classAttributeStreamBase
-
eraseRange
public void eraseRange(int index, int count, int validSize)
Description copied from class:AttributeStreamBase
Erases a range from the buffer and defragments the result.- Specified by:
eraseRange
in classAttributeStreamBase
- Parameters:
index
- The index in this stream where the erasing starts.count
- The number of elements to be erased.validSize
- The number of valid elements in this stream.
-
readRange
public void readRange(int srcStart, int count, ByteBuffer dst, int dstOffset, boolean bForward)
Description copied from class:AttributeStreamBase
Write a range of elements to the source byte buffer.- Specified by:
readRange
in classAttributeStreamBase
- Parameters:
srcStart
- The element index to start writing from.count
- The number of AttributeStream elements to write.dst
- The destination ByteBuffer. The buffer must be large enough or it will throw.dstOffset
- The offset in the destination ByteBuffer to start write elements from.
-
reverseRange
public void reverseRange(int index, int count, int stride)
Description copied from class:AttributeStreamBase
Reverses a range from the buffer.- Specified by:
reverseRange
in classAttributeStreamBase
- Parameters:
index
- The index in this stream where the reversing starts.count
- The number of elements to be reversed.stride
- The number of elements to be grouped together when doing the reverse.
-
setRange
public void setRange(double value, int start, int count)
Description copied from class:AttributeStreamBase
Sets a range of values to given value.- Specified by:
setRange
in classAttributeStreamBase
- Parameters:
value
- The value to set stream elements to.start
- The index of the element to start writing to.count
- The number of elements to set.
-
writeRange
public void writeRange(int startElement, int count, AttributeStreamBase _src, int srcStart, boolean bForward, int stride)
Description copied from class:AttributeStreamBase
Adds a range of elements from the source byte buffer. This stream is resized automatically to accomodate required number of elements.- Specified by:
writeRange
in classAttributeStreamBase
- Parameters:
startElement
- the index of the element in this stream to start setting elements from.count
- The number of AttributeStream elements to read._src
- The source ByteBuffer to read elements from.srcStart
- The offset from the start of the ByteBuffer in bytes.bForward
- When False, the source is written in reversed order.stride
- Used for reversed writing only to indicate the unit of writing. elements inside a stride are not reversed. Only the strides are reversed.
-
writeRange
public void writeRange(int startElement, int count, ByteBuffer src, int offsetBytes, boolean bForward)
Description copied from class:AttributeStreamBase
Adds a range of elements from the source byte buffer. The stream is resized automatically to accomodate required number of elements.- Specified by:
writeRange
in classAttributeStreamBase
- Parameters:
startElement
- the index of the element in this stream to start setting elements from.count
- The number of AttributeStream elements to read.src
- The source ByteBuffer to read elements from.offsetBytes
- The offset from the start of the ByteBuffer in bytes.
-
toArray
public byte[] toArray()
Copies content of this buffer into an array of size size().- Returns:
- Allocated array.
-
getBackingArray
public byte[] getBackingArray()
Returns the backing array.- Returns:
- Either internal buffer or a copy of the internal buffer.
-
-