In This Topic
This class reads main and tile-part headers from the codestream given a RandomAccessIO instance located at the beginning of the codestream (i.e just before the SOC marker) or at the beginning of a tile-part (i.e. just before a SOT marker segment) respectively.
A marker segment includes a marker and eventually marker segment parameters. It is designed by the three letters code of the marker associated with the marker segment. JPEG 2000 part 1 defines 6 types of markers segments:
- Delimiting : SOC, SOT, SOD, EOC
- Fixed information: SIZ.
- Functional: COD, COC, RGN, QCD, QCC,POC.
- In bit-stream: SOP, EPH.
- Pointer: TLM, PLM, PLT, PPM, PPT.
- Informational: CRG, COM.
The main header is read when the constructor is called whereas tile-part headers are read when the FileBitstreamReaderAgent instance is created. The reading is done in 2 passes:
- All marker segments are buffered and their corresponding flag is activated (extractMainMarkSeg and extractTilePartMarkSeg methods).
- Buffered marker segment are analyzed in a logical way and specifications are stored in appropriate member of DecoderSpecs instance (readFoundMainMarkSeg and readFoundTilePartMarkSeg methods).
Whenever a marker segment is not recognized a warning message is displayed and its length parameter is used to skip it.
The information found in this header is stored in HeaderInfo and DecoderSpecs instances.
Object Model
Syntax
'Declaration
Public Class HeaderDecoder
public class HeaderDecoder
Inheritance Hierarchy
System.Object
CSJ2K.j2k.codestream.reader.HeaderDecoder
See Also