Package jj2000.j2k.fileformat.reader
Class FileFormatReader
java.lang.Object
jj2000.j2k.fileformat.reader.FileFormatReader
- All Implemented Interfaces:
FileFormatBoxes
This class reads the file format wrapper that may or may not exist around a
valid JPEG 2000 codestream. Since no information from the file format is
used in the actual decoding, this class simply goes through the file and
finds the first valid codestream.
- See Also:
-
Field Summary
Fields inherited from interface jj2000.j2k.fileformat.FileFormatBoxes
BITS_PER_COMPONENT_BOX, CAPTURE_RESOLUTION_BOX, CHANNEL_DEFINITION_BOX, COLOUR_SPECIFICATION_BOX, COMPONENT_MAPPING_BOX, CONTIGUOUS_CODESTREAM_BOX, CSB_APPROX, CSB_ENUM_GREY, CSB_ENUM_SRGB, CSB_ENUM_YCC, CSB_METH, CSB_PREC, DEFAULT_DISPLAY_RESOLUTION_BOX, FILE_TYPE_BOX, FT_BR, IMAGE_HEADER_BOX, IMB_C, IMB_IPR, IMB_UnkC, IMB_VERS, INTELLECTUAL_PROPERTY_BOX, JP2_HEADER_BOX, JP2_SIGNATURE_BOX, PALETTE_BOX, RESOLUTION_BOX, URL_BOX, UUID_BOX, UUID_INFO_BOX, UUID_LIST_BOX, XML_BOX -
Constructor Summary
ConstructorsConstructorDescriptionFileFormatReader(RandomAccessIO in, J2KMetadata metadata) The constructor of the FileFormatReader -
Method Summary
Modifier and TypeMethodDescriptionlong[]This method creates and returns an array of positions to contiguous codestreams in the fileReturns the color model created from the palette box.intThis method returns the length of the first contiguous codestreams in the fileintThis method returns the position of the first contiguous codestreams in the filevoidreadBitsPerComponentBox(int length) Read the bits per component.voidreadChannelDefinitionBox(int length) This method reads the Channel Definition boxvoidreadColourSpecificationBox(int length) Read the color specifications.voidreadComponentMappingBox(int length) Read the component mapping channel.booleanreadContiguousCodeStreamBox(int length, long longLength) This method skips the Contiguous codestream box and adds position of contiguous codestream to a vectorvoidThis method checks whether the given RandomAccessIO is a valid JP2 file and if so finds the first codestream in the file.booleanreadFileTypeBox(int length, long longLength) This method reads the File Type boxbooleanreadImageHeaderBox(int length) This method reads the Image Header boxvoidreadIntPropertyBox(int length) This method reads the contents of the Intellectual property boxbooleanreadJP2HeaderBox(int length) This method reads the JP2Header boxvoidreadPaletteBox(int length) This method reads the content of the palette boxvoidreadResolutionBox(int type, int length) Read the resolution.voidreadURLBox(int length) This method reads the contents of the XML boxvoidreadUUIDBox(int length) This method reads the contents of the Intellectual property boxvoidreadUUIDListBox(int length) This method reads the contents of the UUID List boxvoidreadXMLBox(int length) This method reads the contents of the XML box
-
Constructor Details
-
FileFormatReader
The constructor of the FileFormatReader- Parameters:
in- The RandomAccessIO from which to read the file format
-
-
Method Details
-
readFileFormat
This method checks whether the given RandomAccessIO is a valid JP2 file and if so finds the first codestream in the file. Currently, the information in the codestream is not used- Throws:
IOException- If an I/O error ocurred.EOFException- If end of file is reached
-
readFileTypeBox
This method reads the File Type box- Returns:
- false if the File Type box was not found or invalid else true
- Throws:
IOException- If an I/O error ocurred.EOFException- If the end of file was reached
-
readJP2HeaderBox
This method reads the JP2Header box- Parameters:
length- The length of the JP2Header box- Returns:
- false if the JP2Header box was not found or invalid else true
- Throws:
IOException- If an I/O error ocurred.EOFException- If the end of file was reached
-
readImageHeaderBox
This method reads the Image Header box- Parameters:
length- The length of the JP2Header box- Returns:
- false if the JP2Header box was not found or invalid else true
- Throws:
IOException- If an I/O error ocurred.EOFException- If the end of file was reached
-
readContiguousCodeStreamBox
public boolean readContiguousCodeStreamBox(int length, long longLength) throws IOException, EOFException This method skips the Contiguous codestream box and adds position of contiguous codestream to a vector- Parameters:
length- The length of the JP2Header boxlongLength- The length of the JP2Header box if greater than 1<<32- Returns:
- false if the Contiguous codestream box was not found or invalid else true
- Throws:
IOException- If an I/O error ocurred.EOFException- If the end of file was reached
-
readIntPropertyBox
This method reads the contents of the Intellectual property box- Throws:
IOException
-
readXMLBox
This method reads the contents of the XML box- Throws:
IOException
-
readURLBox
This method reads the contents of the XML box- Throws:
IOException
-
readUUIDBox
This method reads the contents of the Intellectual property box- Throws:
IOException
-
readUUIDListBox
This method reads the contents of the UUID List box- Throws:
IOException
-
readPaletteBox
This method reads the content of the palette box- Throws:
IOException
-
readComponentMappingBox
Read the component mapping channel.- Throws:
IOException
-
readChannelDefinitionBox
This method reads the Channel Definition box- Throws:
IOException- If an I/O error ocurred.
-
readBitsPerComponentBox
Read the bits per component.- Throws:
IOException
-
readColourSpecificationBox
Read the color specifications.- Throws:
IOException
-
readResolutionBox
Read the resolution.- Throws:
IOException
-
getCodeStreamPos
public long[] getCodeStreamPos()This method creates and returns an array of positions to contiguous codestreams in the file- Returns:
- The positions of the contiguous codestreams in the file
-
getFirstCodeStreamPos
public int getFirstCodeStreamPos()This method returns the position of the first contiguous codestreams in the file- Returns:
- The position of the first contiguous codestream in the file
-
getFirstCodeStreamLength
public int getFirstCodeStreamLength()This method returns the length of the first contiguous codestreams in the file- Returns:
- The length of the first contiguous codestream in the file
-
getColorModel
Returns the color model created from the palette box.
-