Class TIFFReader
java.lang.Object
com.twelvemonkeys.imageio.metadata.MetadataReader
com.twelvemonkeys.imageio.metadata.tiff.TIFFReader
TIFFReader
- Version:
- $Id: TIFFReader.java,v 1.0 Nov 13, 2009 5:42:51 PM haraldk Exp$
-
Nested Class Summary
Nested Classes -
Field Summary
FieldsModifier and TypeFieldDescription(package private) static final booleanprivate longprivate booleanprivate intprivate static final Map<Integer, Collection<Integer>> private static final Collection<Integer> -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate intassertIntCount(long count) private static RationalcreateSafeRational(long numerator, long denominator) private static Map<Integer, Collection<Integer>> private long[]getPointerOffsets(Entry entry) private booleanisValidLengthAtOffset(ImageInputStream input, long offset, long valueLength) private booleanisValidOffset(ImageInputStream input, long pos) private booleanisValidType(short type) static voidread(ImageInputStream input) private TIFFEntryreadEntry(ImageInputStream pInput) private longreadEntryCount(ImageInputStream pInput) private IFDreadIFD(ImageInputStream pInput, long pOffset, Collection<Integer> subIFDIds) private TIFFDirectoryreadLinkedIFDs(ImageInputStream input) private longreadOffset(ImageInputStream input) private voidreadSubIFDs(ImageInputStream input, List<TIFFEntry> entries, Collection<Integer> subIFDIds) private static ObjectreadValue(ImageInputStream pInput, short pType, int pCount, boolean bigTIFF) private ObjectreadValueAt(ImageInputStream input, long offset, long length, short type, int count) private intreadValueCount(ImageInputStream pInput) private ObjectreadValueInLine(ImageInputStream pInput, short pType, int pCount)
-
Field Details
-
DEBUG
static final boolean DEBUG -
VALID_TOP_LEVEL_IFDS
-
VALID_SUB_IFDS
-
parsedIFDs
-
inputLength
private long inputLength -
longOffsets
private boolean longOffsets -
offsetSize
private int offsetSize
-
-
Constructor Details
-
TIFFReader
public TIFFReader()
-
-
Method Details
-
createSubIFDMap
-
read
- Specified by:
readin classMetadataReader- Throws:
IOException
-
readLinkedIFDs
- Throws:
IOException
-
readOffset
- Throws:
IOException
-
readIFD
private IFD readIFD(ImageInputStream pInput, long pOffset, Collection<Integer> subIFDIds) throws IOException - Throws:
IOException
-
readEntryCount
- Throws:
IOException
-
readSubIFDs
private void readSubIFDs(ImageInputStream input, List<TIFFEntry> entries, Collection<Integer> subIFDIds) throws IOException - Throws:
IOException
-
getPointerOffsets
- Throws:
IIOException
-
readEntry
- Throws:
IOException
-
isValidType
private boolean isValidType(short type) -
readValueCount
- Throws:
IOException
-
assertIntCount
- Throws:
IOException
-
isValidOffset
- Throws:
IOException
-
isValidLengthAtOffset
private boolean isValidLengthAtOffset(ImageInputStream input, long offset, long valueLength) throws IOException - Throws:
IOException
-
readValueAt
private Object readValueAt(ImageInputStream input, long offset, long length, short type, int count) throws IOException - Throws:
IOException
-
readValueInLine
- Throws:
IOException
-
readValue
private static Object readValue(ImageInputStream pInput, short pType, int pCount, boolean bigTIFF) throws IOException - Throws:
IOException
-
createSafeRational
-
main
- Throws:
IOException
-