public interface StreamSegmentMapper
SegmentedImageInputStream
 class.  An instance of the StreamSegmentMapper
 interface provides the location and length of a segment of a source
 ImageInputStream corresponding to the initial portion of
 a desired segment of the output stream.
  As an example, consider a mapping between a source
 ImageInputStream src and a SegmentedImageInputStream
 dst comprising bytes 100-149 and 200-249 of the source
 stream.  The dst stream has a reference to an instance
 mapper of StreamSegmentMapper.
 
 A call to dst.seek(0); dst.read(buf, 0, 10) will
 result in a call to mapper.getStreamSegment(0, 10),
 returning a new StreamSegment with a starting
 position of 100 and a length of 10 (or less).  This indicates that
 in order to read bytes 0-9 of the segmented stream, bytes 100-109
 of the source stream should be read.
 
 A call to dst.seek(10); int nbytes = dst.read(buf, 0,
 100) is somewhat more complex, since it will require data
 from both segments of src.  The method 
 mapper.getStreamSegment(10, 100) will be called.  This
 method will return a new StreamSegment with a starting
 position of 110 and a length of 40 (or less).  The length is
 limited to 40 since a longer value would result in a read past the
 end of the first segment.  The read will stop after the first 40
 bytes and an addition read or reads will be required to obtain the
 data contained in the second segment.
| Modifier and Type | Method and Description | 
|---|---|
| StreamSegment | getStreamSegment(long pos,
                int length)Returns a  StreamSegmentobject indicating the
 location of the initial portion of a desired segment in the
 source stream. | 
| void | getStreamSegment(long pos,
                int length,
                StreamSegment seg)Sets the values of a  StreamSegmentobject
 indicating the location of the initial portion of a desired
 segment in the source stream. | 
StreamSegment getStreamSegment(long pos, int length)
StreamSegment object indicating the
 location of the initial portion of a desired segment in the
 source stream.  The length of the returned
 StreamSegment may be smaller than the desired
 length.pos - The desired starting position in the
 SegmentedImageInputStream, as a long.length - The desired segment length.void getStreamSegment(long pos,
                      int length,
                      StreamSegment seg)
StreamSegment object
 indicating the location of the initial portion of a desired
 segment in the source stream.  The length of the returned
 StreamSegment may be smaller than the desired
 length.pos - The desired starting position in the
 SegmentedImageInputStream, as a long.length - The desired segment length.seg - A StreamSegment object to be overwritten.Copyright © 2017 Open Microscopy Environment