Package ucar.nc2.iosp
Class LayoutBBTiled
- java.lang.Object
-
- ucar.nc2.iosp.LayoutBBTiled
-
public class LayoutBBTiled extends Object implements LayoutBB
For datasets where the data are stored in chunks, and must be processed, eg compressed or filtered. The data is read, processed, and placed in a ByteBuffer. Chunks have an offset into the ByteBuffer. "Tiled" means that all chunks are assumed to be equal size. Chunks do not necessarily cover the array, missing data is possible.- Since:
- Jan 9, 2008
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interface
LayoutBBTiled.DataChunk
A data chunkstatic interface
LayoutBBTiled.DataChunkIterator
An iterator over the data chunks.
-
Constructor Summary
Constructors Constructor Description LayoutBBTiled(LayoutBBTiled.DataChunkIterator chunkIterator, int[] chunkSize, int elemSize, Section wantSection)
Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description int
getElemSize()
Get size of each element in bytes.long
getTotalNelems()
Get total number of elements in the wanted subset.boolean
hasNext()
Is there more to doLayoutBB.Chunk
next()
Get the next chunkString
toString()
-
-
-
Constructor Detail
-
LayoutBBTiled
public LayoutBBTiled(LayoutBBTiled.DataChunkIterator chunkIterator, int[] chunkSize, int elemSize, Section wantSection)
Constructor.- Parameters:
chunkIterator
- iterator over all data chunkschunkSize
- all chunks assumed to be the same sizeelemSize
- size of an element in bytes.wantSection
- the wanted section of data, contains a List of Range objects. Must be complete.
-
-
Method Detail
-
getTotalNelems
public long getTotalNelems()
Description copied from interface:LayoutBB
Get total number of elements in the wanted subset.- Specified by:
getTotalNelems
in interfaceLayout
- Specified by:
getTotalNelems
in interfaceLayoutBB
- Returns:
- total number of elements in the wanted subset.
-
getElemSize
public int getElemSize()
Description copied from interface:LayoutBB
Get size of each element in bytes.- Specified by:
getElemSize
in interfaceLayout
- Specified by:
getElemSize
in interfaceLayoutBB
- Returns:
- size of each element in bytes.
-
hasNext
public boolean hasNext()
Description copied from interface:LayoutBB
Is there more to do
-
next
public LayoutBB.Chunk next()
Description copied from interface:LayoutBB
Get the next chunk
-
-