LizardTech::NITFReaderManager Class Reference

class for reading an NITF file More...

#include <NITFReaderManager.h>

Inheritance diagram for LizardTech::NITFReaderManager:

LTIImageStageManager LTIReferenceCountedObject

List of all members.

Public Member Functions

LT_STATUS initialize (const LTFileSpec &fileSpec, bool useWorldFile=true)
 initialization Creates an NITFReaderManager object from the given file.
LT_STATUS initialize (LTIOStreamInf *stream)
 initialization Creates an NITFReaderManager object from the given stream.
LT_STATUS setTileMaskList (const lt_uint32 *tileMaskList, lt_uint32 tileMaskListLen)
LT_STATUS createReader (Nitf::ImageReader *&reader, lt_uint32 idx)
 creates a reader for a single segment
LT_STATUS createImageStage (lt_uint32 imageNumber, LTIImageStage *&imageStage)
 create an image stage
void setCompat_2500B_N2 (bool use2500B)
 COMRAT compliance control.
bool getCompat_2500B_N2 () const
 COMRAT compliance setting.
lt_int64 getFileSize () const
const Nitf::FileHeadergetFileHeader () const
 returns FileHeader metadata
lt_uint32 getNumImageSegments () const
 returns number of image segments
const Nitf::ImageSegmentgetImageSegment (lt_uint32 num) const
 returns an image segment
const char * getImageSegmentIID1 (lt_uint32 num) const
 returns the IID1 field of the given image segment
lt_uint32 getNumGraphicSegments () const
 returns the number of graphic segments
const Nitf::GraphicSegmentgetGraphicSegment (lt_uint32 num) const
 returns a graphic segment
lt_uint32 getNumLabelSegments () const
 returns the number of label segments
const Nitf::LabelSegmentgetLabelSegment (lt_uint32 num) const
 returns a label segment
lt_uint32 getNumTextSegments () const
 returns the number of text segments
const Nitf::TextSegmentgetTextSegment (lt_uint32 num) const
 returns a text segment
lt_uint32 getNumDataSegments () const
 returns the number of data segments
const Nitf::DataSegmentgetDataSegment (lt_uint32 num) const
 returns a data segment
lt_uint32 getNumResSegments () const
 returns the number of RES segments
const Nitf::ReservedSegmentgetResSegment (lt_uint32 num) const
 returns a RES segment
const char * getVersionString () const
 returns NITF version information
const Nitf::FileMetadatagetFileMetadata () const
 returns the file-level metadata
const Nitf::SecurityMetadatagetSecurityMetadata () const
 returns file-level security metadata
LTFileSpecgetFileSpec () const

Static Public Member Functions

static NITFReaderManagercreate (void)

Protected Member Functions

 NITFReaderManager (void)
virtual ~NITFReaderManager (void)


Detailed Description

This class is the main entry point for reading from an NITF file. You should initially construct a NITFReaderManager, then use the functions it provides to access the segments in the image, such as getImageSegment() or getTextSegment.

To extract pixels from an image, you need to createReader() for the image segment desired. This will return an object derived from LTIImageReader which can be used for decode requests.

Definition at line 53 of file NITFReaderManager.h.


Constructor & Destructor Documentation

LizardTech::NITFReaderManager::NITFReaderManager ( void   )  [protected]

virtual LizardTech::NITFReaderManager::~NITFReaderManager ( void   )  [protected, virtual]


Member Function Documentation

static NITFReaderManager* LizardTech::NITFReaderManager::create ( void   )  [static]

LT_STATUS LizardTech::NITFReaderManager::initialize ( const LTFileSpec fileSpec,
bool  useWorldFile = true 
)

Parameters:
fileSpec the NITF file to be opened
useWorldFile indicates world file to be used for geo coords (applies to the first image segment only)
Returns:
success or failure

LT_STATUS LizardTech::NITFReaderManager::initialize ( LTIOStreamInf stream  ) 

Parameters:
stream the NITF stream to be opened
Returns:
success or failure

LT_STATUS LizardTech::NITFReaderManager::setTileMaskList ( const lt_uint32 tileMaskList,
lt_uint32  tileMaskListLen 
)

LT_STATUS LizardTech::NITFReaderManager::createReader ( Nitf::ImageReader *&  reader,
lt_uint32  idx 
)

This function is used to create an ImageReader for a single given image segment, specified by number.

The reader is allocated and initialized by this function, but the caller has ownership of the object.

Parameters:
reader the created segment reader
idx index of the image segment (one-based index)
Returns:
status code

LT_STATUS LizardTech::NITFReaderManager::createImageStage ( lt_uint32  imageNumber,
LTIImageStage *&  imageStage 
) [virtual]

Note when done with the image stage call imageStage->release().

Parameters:
imageNumber number of the image (zero based)
imageStage a pointer to the created image stage

Reimplemented from LTIImageStageManager.

void LizardTech::NITFReaderManager::setCompat_2500B_N2 ( bool  use2500B  ) 

This function is used to control whether or not the COMRAT field is to be read. The 2500C specification requires this field be present; the 2500B Note 2 specification does not. This function is used to indicate which version of the specification this file adheres to.

The default is false, i.e. 2500C formatting.

This function must be called prior to initialize().

Parameters:
use2500B set to true for 2500B/Note2 formatting

bool LizardTech::NITFReaderManager::getCompat_2500B_N2 (  )  const

Returns the 2500B compatability setting; see the setCompat_2500B_N2() function for details.

Returns:
true iff 200B / Note 2 formatting is being used

lt_int64 LizardTech::NITFReaderManager::getFileSize (  )  const

const Nitf::FileHeader* LizardTech::NITFReaderManager::getFileHeader (  )  const

lt_uint32 LizardTech::NITFReaderManager::getNumImageSegments (  )  const

const Nitf::ImageSegment* LizardTech::NITFReaderManager::getImageSegment ( lt_uint32  num  )  const

This function returns an object representing an image segment. (Note this object does not support accessing the pixel data; use createReader() for that.)

Parameters:
num the index of the segment to return (numbered starting with 1)
Returns:
the segment object

const char* LizardTech::NITFReaderManager::getImageSegmentIID1 ( lt_uint32  num  )  const

lt_uint32 LizardTech::NITFReaderManager::getNumGraphicSegments (  )  const

const Nitf::GraphicSegment* LizardTech::NITFReaderManager::getGraphicSegment ( lt_uint32  num  )  const

This function returns an object representing a graphic segment.

Parameters:
num the index of the segment to return (numbered starting with 1)
Returns:
the segment object

lt_uint32 LizardTech::NITFReaderManager::getNumLabelSegments (  )  const

const Nitf::LabelSegment* LizardTech::NITFReaderManager::getLabelSegment ( lt_uint32  num  )  const

This function returns an object representing a label segment.

Parameters:
num the index of the segment to return (numbered starting with 1)
Returns:
the segment object

lt_uint32 LizardTech::NITFReaderManager::getNumTextSegments (  )  const

const Nitf::TextSegment* LizardTech::NITFReaderManager::getTextSegment ( lt_uint32  num  )  const

This function returns an object representing a text segment.

Parameters:
num the index of the segment to return (numbered starting with 1)
Returns:
the segment object

lt_uint32 LizardTech::NITFReaderManager::getNumDataSegments (  )  const

const Nitf::DataSegment* LizardTech::NITFReaderManager::getDataSegment ( lt_uint32  num  )  const

This function returns an object representing a data segment.

Parameters:
num the index of the segment to return (numbered starting with 1)
Returns:
the segment object

lt_uint32 LizardTech::NITFReaderManager::getNumResSegments (  )  const

const Nitf::ReservedSegment* LizardTech::NITFReaderManager::getResSegment ( lt_uint32  num  )  const

This function returns an object representing a RES segment.

Parameters:
num the index of the segment to return (numbered starting with 1)
Returns:
the segment object

const char* LizardTech::NITFReaderManager::getVersionString (  )  const

const Nitf::FileMetadata* LizardTech::NITFReaderManager::getFileMetadata (  )  const

const Nitf::SecurityMetadata* LizardTech::NITFReaderManager::getSecurityMetadata (  )  const

LTFileSpec* LizardTech::NITFReaderManager::getFileSpec (  )  const


The documentation for this class was generated from the following file:

LizardTech