edu.harvard.hul.ois.jhove.module.jpeg2000
Class CrossRefBox
java.lang.Object
edu.harvard.hul.ois.jhove.module.jpeg2000.BoxHolder
edu.harvard.hul.ois.jhove.module.jpeg2000.JP2Box
edu.harvard.hul.ois.jhove.module.jpeg2000.CrossRefBox
- All Implemented Interfaces:
- java.util.Iterator<java.lang.Object>
public class CrossRefBox
- extends JP2Box
Cross Reference Box (JPX).
A Cross Reference Box may be found in a Codestream
Header, Compositing Layer Header, or Association box.
When it is encountered, the box to which it refers
should be substituted for the Cross Reference Box.
Interesting features of the box are that it
isn't all in one place, but is
scattered through multiple locations by a fragment list,
and it doesn't follow standard superbox rules.
See ISO/IEC FCD15444-2: 2000, L.9.7
- Author:
- Gary McGath
Constructor Summary |
CrossRefBox(java.io.RandomAccessFile raf,
BoxHolder parent)
Constructor with superbox. |
Method Summary |
java.io.DataInputStream |
getCrossRefStream()
Returns a DataInputStream based on a FragmentInputStream
so that the fragments can be read as a single entity. |
protected java.lang.String |
getSelfPropName()
Returns the name of the Box. |
boolean |
readBox()
Reads the box, putting appropriate information in
the RepInfo object. |
Methods inherited from class edu.harvard.hul.ois.jhove.module.jpeg2000.JP2Box |
addAssociation, boxMaker, emptyBox, finalizeBytesRead, getBytesRead, getLength, getSelfPropDesc, init, initBytesRead, makeAssocProperty, selfDescProperty, setBoxHeader, setDataInputStream, setModule, setRandomAccessFile, setRepInfo, skipBox, wrongBoxContext, wrongBoxSize |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
CrossRefBox
public CrossRefBox(java.io.RandomAccessFile raf,
BoxHolder parent)
- Constructor with superbox.
- Parameters:
parent
- parent superbox of this box
or TopLevelBoxHolder
readBox
public boolean readBox()
throws java.io.IOException
- Reads the box, putting appropriate information in
the RepInfo object. setModule, setBoxHeader,
setRepInfo and setDataInputStream must be called
before
readBox
is called.
readBox
must completely consume the
box, so that the next byte to be read by the
DataInputStream is the FF
byte of the next Box.
- Specified by:
readBox
in class JP2Box
- Throws:
java.io.IOException
getCrossRefStream
public java.io.DataInputStream getCrossRefStream()
- Returns a DataInputStream based on a FragmentInputStream
so that the fragments can be read as a single entity.
getSelfPropName
protected java.lang.String getSelfPropName()
- Returns the name of the Box.
- Overrides:
getSelfPropName
in class JP2Box