|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectucar.nc2.iosp.Indexer
ucar.nc2.iosp.RegularSectionLayout
public class RegularSectionLayout
Assume that the data is stored divided into sections, described by dataSection. All the data within a dataSection is stored contiguously, in a regular layout. Assume dataSection strides must be = 1, that is the stored data is not strided.
The user asks for some section, wantSection (may have strides). For each dataSection that intersects wantSection, a RegularSectionLayout is created, which figures out the optimal access pattern, based on reading contiguous runs of data. Each RegularSectionLayout handles only one dataSection. Both dataSection and wantSection refer to the variable's overall shape.
| Nested Class Summary |
|---|
| Nested classes/interfaces inherited from class ucar.nc2.iosp.Indexer |
|---|
Indexer.Chunk |
| Constructor Summary | |
|---|---|
RegularSectionLayout(long startFilePos,
int elemSize,
Section dataSection,
Section wantSection)
Deprecated. Constructor. |
|
| Method Summary | |
|---|---|
static Indexer |
factory(long startFilePos,
int elemSize,
Section dataSection,
Section wantSection)
Deprecated. This factory allows us to optimize special cases. |
int |
getElemSize()
Deprecated. |
long |
getTotalNelems()
Deprecated. |
boolean |
hasNext()
Deprecated. |
Indexer.Chunk |
next()
Deprecated. Get the next chunk |
java.lang.String |
toString()
Deprecated. |
| Methods inherited from class ucar.nc2.iosp.Indexer |
|---|
printa, printa |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Constructor Detail |
|---|
public RegularSectionLayout(long startFilePos,
int elemSize,
Section dataSection,
Section wantSection)
throws InvalidRangeException
startFilePos - starting address of the dataSectionelemSize - size of an element in bytes.dataSection - the section of data we actually have. must have all ranges with stride = 1.wantSection - the wanted section of data, it will be intersected with dataSection.
dataSection.intersects(wantSection) must be true
InvalidRangeException - if ranges are malformed| Method Detail |
|---|
public static Indexer factory(long startFilePos,
int elemSize,
Section dataSection,
Section wantSection)
throws InvalidRangeException
startFilePos - starting address of the dataSectionelemSize - size of an element in bytes.dataSection - the section of data we actually have. must have all ranges with stride = 1.wantSection - the wanted section of data, it will be intersected with dataSection.
dataSection.intersects(wantSection) must be true
InvalidRangeException - if ranges are malformedpublic long getTotalNelems()
getTotalNelems in class Indexerpublic int getElemSize()
getElemSize in class Indexerpublic boolean hasNext()
hasNext in class Indexerpublic Indexer.Chunk next()
Indexer
next in class Indexerpublic java.lang.String toString()
toString in class java.lang.Object
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||