CrossRefBox (JHOVE Documentation)
Date: 2013-09-08

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## 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

Field Summary

Fields inherited from class edu.harvard.hul.ois.jhove.module.jpeg2000.JP2Box
`_bytesRead, associations, DESCRIPTION_NAME, noJP2Hdr, startBytesRead`

Fields inherited from class edu.harvard.hul.ois.jhove.module.jpeg2000.BoxHolder
`_boxHeader, _dstrm, _module, _parentBox, _raf, _repInfo, bytesLeft, filePos, hasBoxes`

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 edu.harvard.hul.ois.jhove.module.jpeg2000.BoxHolder
`getFilePos, hasNext, next, remove, superboxOverrun, superboxUnderrun`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### CrossRefBox

    public CrossRefBox(java.io.RandomAccessFile raf,
                       BoxHolder parent)

  Constructor with superbox.

  Parameters:
    `parent` - parent superbox of this box or TopLevelBoxHolder

Method Detail

### 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`

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD