public synchronized PixelData getCol(Integer x, Integer z, Integer c, Integer t) throws IOException, DimensionsOutOfBoundsException { t = getRasterizedT(z, c, t); c = 0; z = 0; PixelData data = delegate().getCol(x, z, c, t); data.setOrder(byteOrder); return data; }
public synchronized PixelData getPlane(Integer z, Integer c, Integer t) throws IOException, DimensionsOutOfBoundsException { t = getRasterizedT(z, c, t); c = 0; z = 0; PixelData data = delegate().getPlane(z, c, t); data.setOrder(byteOrder); return data; }
public synchronized PixelData getRow(Integer y, Integer z, Integer c, Integer t) throws IOException, DimensionsOutOfBoundsException { t = getRasterizedT(z, c, t); c = 0; z = 0; PixelData data = delegate().getRow(y, z, c, t); data.setOrder(byteOrder); return data; }
public synchronized PixelData getPlaneRegion(Integer x, Integer y, Integer width, Integer height, Integer z, Integer c, Integer t, Integer stride) throws IOException, DimensionsOutOfBoundsException { t = getRasterizedT(z, c, t); c = 0; z = 0; PixelData data = delegate().getPlaneRegion(x, y, width, height, z, c, t, stride); data.setOrder(byteOrder); return data; }
public synchronized PixelData getTile(Integer z, Integer c, Integer t, Integer x, Integer y, Integer w, Integer h) throws IOException { checkTileParameters(x, y, w, h); t = getRasterizedT(z, c, t); c = 0; z = 0; PixelData data = delegate().getTile(z, c, t, x, y, w, h); data.setOrder(byteOrder); return data; }
public PixelData getRow(Integer y, Integer z, Integer c, Integer t) throws IOException, DimensionsOutOfBoundsException { final BfPixelsWrapper reader = reader(); PixelData d; byte[] buffer = new byte[reader.getRowSize()]; reader.getRow(y,z,c,t,buffer); d = new PixelData(reader.getPixelsType(), ByteBuffer.wrap(buffer)); d.setOrder(isLittleEndian()? ByteOrder.LITTLE_ENDIAN : ByteOrder.BIG_ENDIAN); return d; }
public PixelData getCol(Integer x, Integer z, Integer c, Integer t) throws IOException, DimensionsOutOfBoundsException { final BfPixelsWrapper reader = reader(); PixelData d; byte[] buffer = new byte[reader.getColSize()]; reader.getCol(x,z,c,t,buffer); d = new PixelData(reader.getPixelsType(), ByteBuffer.wrap(buffer)); d.setOrder(isLittleEndian()? ByteOrder.LITTLE_ENDIAN : ByteOrder.BIG_ENDIAN); return d; }
public PixelData getStack(Integer c, Integer t) throws IOException, DimensionsOutOfBoundsException { final BfPixelsWrapper reader = reader(); PixelData d; int size = RomioPixelBuffer.safeLongToInteger(reader.getStackSize()); byte[] buffer = new byte[size]; reader.getStack(c,t,buffer); d = new PixelData(reader.getPixelsType(), ByteBuffer.wrap(buffer)); d.setOrder(isLittleEndian()? ByteOrder.LITTLE_ENDIAN : ByteOrder.BIG_ENDIAN); return d; }
public PixelData getPlane(Integer z, Integer c, Integer t) throws IOException, DimensionsOutOfBoundsException { final BfPixelsWrapper reader = reader(); PixelData d; int size = RomioPixelBuffer.safeLongToInteger(reader.getPlaneSize()); byte[] buffer = new byte[size]; reader.getPlane(z,c,t,buffer); d = new PixelData(reader.getPixelsType(), ByteBuffer.wrap(buffer)); d.setOrder(isLittleEndian()? ByteOrder.LITTLE_ENDIAN : ByteOrder.BIG_ENDIAN); return d; }
public PixelData getTimepoint(Integer t) throws IOException, DimensionsOutOfBoundsException { final BfPixelsWrapper reader = reader(); PixelData d; int size = RomioPixelBuffer.safeLongToInteger( reader.getTimepointSize()); byte[] buffer = new byte[size]; reader.getTimepoint(t,buffer); d = new PixelData(reader.getPixelsType(), ByteBuffer.wrap(buffer)); d.setOrder(isLittleEndian()? ByteOrder.LITTLE_ENDIAN : ByteOrder.BIG_ENDIAN); return d; }
public PixelData getHypercube(List<Integer> offset, List<Integer> size, List<Integer> step) throws IOException, DimensionsOutOfBoundsException { final BfPixelsWrapper reader = reader(); PixelData d; int hypercubeSize = RomioPixelBuffer.safeLongToInteger( getHypercubeSize(offset,size,step)); byte[] buffer = new byte[hypercubeSize]; reader.getHypercube(offset,size,step,buffer); d = new PixelData(reader.getPixelsType(), ByteBuffer.wrap(buffer)); d.setOrder(isLittleEndian()? ByteOrder.LITTLE_ENDIAN : ByteOrder.BIG_ENDIAN); return d; }
public PixelData getTile(Integer z, Integer c, Integer t, Integer x, Integer y, Integer w, Integer h) throws IOException { final BfPixelsWrapper reader = reader(); byte[] buffer = new byte[ w * h * FormatTools.getBytesPerPixel(reader.getPixelsType())]; try { // Call getTile on reader() rather than on this // so as not to swap the bytes twice. reader().getTile(z, c, t, x, y, w, h, buffer); PixelData d = new PixelData( reader.getPixelsType(), ByteBuffer.wrap(buffer)); d.setOrder(isLittleEndian()? ByteOrder.LITTLE_ENDIAN : ByteOrder.BIG_ENDIAN); return d; } catch (FormatException e) { throw new RuntimeException(e); } }