@Override public void close(boolean fileOnly) throws IOException { super.close(fileOnly); if (tiffReader != null) tiffReader.close(fileOnly); if (!fileOnly) { tiffInfo = null; tiffReader = null; planes = null; directoryCache.clear(); } }
@Override protected void countImages() { core.get(0).imageCount = planes.size(); super.countImages(); } // -- Helpers --
protected void initFileMain(String id) throws FormatException, IOException { MetadataStore store = makeFilterMetadata(); initVars(id); fillMetadataPass1(store); fillMetadataPass2(store); fillMetadataPass3(store); fillMetadataPass4(store); fillMetadataPass5(store); fillMetadataPass6(store); MetadataTools.populatePixels(store, this, true); storeROIs(store); fillMetadataPass7(store); }
int effectiveSizeC = 0; try { effectiveSizeC = getEffectiveSizeC(); if (key.equals("Image Channel Index")) { cIndex = Integer.parseInt(value); addGlobalMetaList(key, cIndex); continue; if (getSizeX() == 0 || v < getSizeX()) { core.get(0).sizeX = v; if (getSizeY() == 0 || v < getSizeY()) core.get(0).sizeY = v; if (realHeight == 0 || v > realHeight) realHeight = v; if (key.endsWith("Date")) { try { metavalue = DateTools.convertDate(parseTimestamp(value), DateTools.UNIX, DateTools.ISO8601_FORMAT_MS); addGlobalMeta(key, metavalue); rowCount = parseInt(value); colCount = parseInt(value); rawCount = parseInt(value); final Double number = Double.valueOf(value); stageX.put(image, new Length(number, UNITS.REFERENCEFRAME));
@Override protected void fillMetadataPass5(MetadataStore store) throws FormatException, IOException { super.fillMetadataPass5(store); for (int i = 0; i < planes.size(); i++) { Plane plane = planes.get(i); parseMainTags(i, store, plane.taglist); } }
@Override protected void fillMetadataPass1(MetadataStore store) throws FormatException, IOException { super.fillMetadataPass1(store); int nplanes = tiffInfo.handler.planes.size();
@Override protected void fillMetadataPass2(MetadataStore store) throws FormatException, IOException { super.fillMetadataPass2(store); core.get(0).interleaved = false; }
@Override protected void fillMetadataPass3(MetadataStore store) throws FormatException, IOException { super.fillMetadataPass3(store); // calculate tile dimensions and number of tiles if (core.size() > 1) { Integer[] t = tiles.keySet().toArray(new Integer[tiles.size()]); Arrays.sort(t); final List<Integer> tmpOffsets = new ArrayList<Integer>(); final List<String> tmpFiles = new ArrayList<String>(); int index = 0; for (Integer key : t) { int nTiles = tiles.get(key).intValue(); if (nTiles < getImageCount()) { tiles.remove(key); } else { for (int p=0; p<nTiles; p++) { tmpOffsets.add(offsets[index + p]); tmpFiles.add(imageFiles[index + p]); } } index += nTiles; } offsets = new int[tmpOffsets.size()]; for (int i=0; i<offsets.length; i++) { offsets[i] = tmpOffsets.get(i).intValue(); } imageFiles = tmpFiles.toArray(new String[tmpFiles.size()]); } }
int effectiveSizeC = 0; try { effectiveSizeC = getEffectiveSizeC(); if (key.equals("Image Channel Index")) { cIndex = Integer.parseInt(value); addGlobalMetaList(key, cIndex); continue; if (getSizeX() == 0 || v < getSizeX()) { core.get(0).sizeX = v; if (getSizeY() == 0 || v < getSizeY()) core.get(0).sizeY = v; if (realHeight == 0 || v > realHeight) realHeight = v; if (key.endsWith("Date")) { try { metavalue = DateTools.convertDate(parseTimestamp(value), DateTools.UNIX, DateTools.ISO8601_FORMAT_MS); addGlobalMeta(key, metavalue); rowCount = parseInt(value); colCount = parseInt(value); rawCount = parseInt(value); final Double number = Double.valueOf(value); stageX.put(image, new Length(number, UNITS.REFERENCEFRAME));
@Override protected void fillMetadataPass5(MetadataStore store) throws FormatException, IOException { super.fillMetadataPass5(store); for (int i = 0; i < planes.size(); i++) { Plane plane = planes.get(i); parseMainTags(i, store, plane.taglist); } }
@Override protected void fillMetadataPass1(MetadataStore store) throws FormatException, IOException { super.fillMetadataPass1(store); int nplanes = tiffInfo.handler.planes.size();
@Override protected void fillMetadataPass2(MetadataStore store) throws FormatException, IOException { super.fillMetadataPass2(store); core.get(0).interleaved = false; }
@Override protected void fillMetadataPass3(MetadataStore store) throws FormatException, IOException { super.fillMetadataPass3(store); // calculate tile dimensions and number of tiles if (core.size() > 1) { Integer[] t = tiles.keySet().toArray(new Integer[tiles.size()]); Arrays.sort(t); final List<Integer> tmpOffsets = new ArrayList<Integer>(); final List<String> tmpFiles = new ArrayList<String>(); int index = 0; for (Integer key : t) { int nTiles = tiles.get(key).intValue(); if (nTiles < getImageCount()) { tiles.remove(key); } else { for (int p=0; p<nTiles; p++) { tmpOffsets.add(offsets[index + p]); tmpFiles.add(imageFiles[index + p]); } } index += nTiles; } offsets = new int[tmpOffsets.size()]; for (int i=0; i<offsets.length; i++) { offsets[i] = tmpOffsets.get(i).intValue(); } imageFiles = tmpFiles.toArray(new String[tmpFiles.size()]); } }
protected void initFileMain(String id) throws FormatException, IOException { MetadataStore store = makeFilterMetadata(); initVars(id); fillMetadataPass1(store); fillMetadataPass2(store); fillMetadataPass3(store); fillMetadataPass4(store); fillMetadataPass5(store); fillMetadataPass6(store); MetadataTools.populatePixels(store, this, true); storeROIs(store); fillMetadataPass7(store); }
@Override public void close(boolean fileOnly) throws IOException { super.close(fileOnly); if (tiffReader != null) tiffReader.close(fileOnly); if (!fileOnly) { tiffInfo = null; tiffReader = null; planes = null; directoryCache.clear(); } }
@Override protected void fillMetadataPass5(MetadataStore store) throws FormatException, IOException { super.fillMetadataPass5(store); for (String name : tagsToParse) { int imageNum = getImageNumber(name, -1); parseTags(imageNum, name, store); } }
@Override protected void countImages() { core.get(0).imageCount = planes.size(); super.countImages(); } // -- Helpers --
@Override protected void fillMetadataPass1(MetadataStore store) throws FormatException, IOException { super.fillMetadataPass1(store);
@Override public void close(boolean fileOnly) throws IOException { super.close(fileOnly); if (poi != null) poi.close(); if (currentPlane != null) currentPlane.close(); poi = null; files = null; currentPlane = null; currentPlaneIndex = -1; }
@Override protected void fillMetadataPass5(MetadataStore store) throws FormatException, IOException { super.fillMetadataPass5(store); for (String name : tagsToParse) { int imageNum = getImageNumber(name, -1); parseTags(imageNum, name, store); } }