/** Adds the given reader class to this format's supported reader list. */ public void addReader(final Class<IFormatReader> readerClass) { readerClasses.addClass(readerClass); }
/** * Prepends a list of classes which must be assignable to the base class */ public void prepend(List<Class<? extends T>> l) { for (int i = l.size() -1; i >= 0; i--) { addClass(0, l.get(i)); } }
/** * Appends a list of classes which must be assignable to the base class */ public void append(List<Class<? extends T>> l) { for (int i = 0; i < l.size(); i++) { addClass(l.get(i)); } }
/** * Prepends a list of classes which must be assignable to the base class */ public void prepend(List<Class<? extends T>> l) { for (int i = l.size() -1; i >= 0; i--) { addClass(0, l.get(i)); } }
/** * Appends a list of classes which must be assignable to the base class */ public void append(List<Class<? extends T>> l) { for (int i = 0; i < l.size(); i++) { addClass(l.get(i)); } }
/** * Constructs a FileStitcher with the given reader. * @param r The reader to use for reading stitched files. * @param patternIds Whether string ids given should be treated as file * patterns rather than single file paths. */ public FileStitcher(IFormatReader r, boolean patternIds) { super(r); if (r.getClass().getPackage().getName().equals("loci.formats.in")) { ClassList<IFormatReader> classes = new ClassList<IFormatReader>(IFormatReader.class); classes.addClass(r.getClass()); setReaderClassList(classes); } else { reader = DimensionSwapper.makeDimensionSwapper(r); } setUsingPatternIds(patternIds); }
/** * Constructs a FileStitcher with the given reader. * @param r The reader to use for reading stitched files. * @param patternIds Whether string ids given should be treated as file * patterns rather than single file paths. */ public FileStitcher(IFormatReader r, boolean patternIds) { super(r); if (r.getClass().getPackage().getName().equals("loci.formats.in")) { ClassList<IFormatReader> classes = new ClassList<IFormatReader>(IFormatReader.class); classes.addClass(r.getClass()); setReaderClassList(classes); } else { reader = DimensionSwapper.makeDimensionSwapper(r); } setUsingPatternIds(patternIds); }
/** Constructs a new pattern reader. */ public FilePatternReader() { super("File pattern", new String[] {"pattern"}); ClassList<IFormatReader> classes = ImageReader.getDefaultReaderClasses(); Class<? extends IFormatReader>[] classArray = classes.getClasses(); ClassList<IFormatReader> newClasses = new ClassList<IFormatReader>(IFormatReader.class); for (Class<? extends IFormatReader> c : classArray) { if (!c.equals(FilePatternReader.class)) { newClasses.addClass(c); } } helper = new FileStitcher(new ImageReader(newClasses)); suffixSufficient = true; }
/** * Compiles the list of Bio-Formats reader classes, excluding the * {@link #DO_NOT_CONVERT} blacklist. * * @return true if the reader class list was re-generated. */ private boolean cacheReaderClasses() { final Class<? extends IFormatReader>[] defaultClasses = ImageReader.getDefaultReaderClasses().getClasses(); final int currentHash = Arrays.hashCode(defaultClasses); // If our classList is uninitialized, or the Bio-Formats classList has // changed, compute the current reader classes. if (readerClasses == null || cachedReaderHash != currentHash) { final ClassList<IFormatReader> targetClasses = new ClassList<IFormatReader>(IFormatReader.class); // add reader classes to the list, excluding the blacklist for (final Class<? extends IFormatReader> c : defaultClasses) { if (convert(c)) targetClasses.addClass(c); } readerClasses = targetClasses; cachedReaderHash = currentHash; return true; } return false; }
/** Constructs a new pattern reader. */ public FilePatternReader() { super("File pattern", new String[] {"pattern"}); ClassList<IFormatReader> classes = ImageReader.getDefaultReaderClasses(); Class<? extends IFormatReader>[] classArray = classes.getClasses(); ClassList<IFormatReader> newClasses = new ClassList<IFormatReader>(IFormatReader.class); for (Class<? extends IFormatReader> c : classArray) { if (!c.equals(FilePatternReader.class)) { newClasses.addClass(c); } } helper = new FileStitcher(new ImageReader(newClasses)); suffixSufficient = true; }
for (Class<? extends IFormatReader> c : classArray) { if (!c.equals(NRRDReader.class)) { newClasses.addClass(c);
for (Class<? extends IFormatReader> c : classArray) { if (!c.equals(NRRDReader.class)) { newClasses.addClass(c);
@Test public void testAddClass() { c = new ClassList<Iterable>(Iterable.class); c.addClass(AbstractList.class); assertEquals(c.getClasses().length, 1); assertEquals(c.getClasses()[0], AbstractList.class); c.addClass(ArrayList.class); assertEquals(c.getClasses().length, 2); assertEquals(c.getClasses()[1], ArrayList.class); c.addClass(ArrayList.class); assertEquals(c.getClasses().length, 3); assertEquals(c.getClasses()[2], ArrayList.class); }
for (Class<? extends IFormatReader> c : classArray) { if (!c.equals(HitachiReader.class)) { newClasses.addClass(c);
for (Class<? extends IFormatReader> c : classArray) { if (!c.equals(HitachiReader.class)) { newClasses.addClass(c);
for (int i=0; i<c.length; i++) { boolean on = LociPrefs.isReaderEnabled(c[i]); if (on) enabledClasses.addClass(c[i]);
for (int i=0; i<c.length; i++) { boolean on = LociPrefs.isReaderEnabled(c[i]); if (on) enabledClasses.addClass(c[i]);