Nitf::Segment Class Reference

base class for segment data in an NITF file More...

#include <Segment.h>

Inheritance diagram for Nitf::Segment:

Nitf::DataSegment Nitf::FileHeader Nitf::GraphicSegment Nitf::ImageSegment Nitf::LabelSegment Nitf::ReservedSegment Nitf::TextSegment

List of all members.

Public Member Functions

 Segment (NITFReaderManager &, LTIOStreamInf &, lt_int64 headerOffset, lt_int64 headerLength, lt_int64 dataOffset, lt_int64 dataLength, const char *code, int segmentNumber, bool doUserSubheader, bool doExtendedSubheader)
virtual ~Segment ()
virtual LT_STATUS initialize ()
 initializer
int getSegmentNumber () const
const char * getSegmentID ()
lt_int64 getHeaderOffset () const
lt_int64 getHeaderLength () const
lt_int64 getDataOffset () const
lt_int64 getDataLength () const
const SecurityBlockgetSecurityBlock () const
const SecurityMetadatagetSecurityMetadata () const
 returns the security information about the segment
virtual LT_STATUS addMetadata (LTIMetadataDatabase &) const
const char * getMetadataTagPrefix () const
int getNumTREs () const
 returns the number of TREs in this segment
const TREDatagetTRE (int index) const
 TRE accessor.

Protected Member Functions

virtual LT_STATUS readHeader ()=0
virtual LT_STATUS readData ()=0
virtual LT_STATUS addMetadataLocal (LTIMetadataDatabase &) const =0

Protected Attributes

MetadataHelper * m_mdHelper
FieldReader * m_field
LTIOStreamInfm_stream
const lt_int64 m_headerOffset
lt_int64 m_headerLength
const lt_int64 m_dataOffset
const lt_int64 m_dataLength
NITFReaderManager & m_manager
Version m_version
SecurityBlockm_securityBlock
const int m_segmentNumber
const char * m_segmentID


Detailed Description

This class is the base class for representing all the segment types in an NITF file. It is not be used directly.

Definition at line 42 of file Segment.h.


Constructor & Destructor Documentation

Nitf::Segment::Segment ( NITFReaderManager &  ,
LTIOStreamInf ,
lt_int64  headerOffset,
lt_int64  headerLength,
lt_int64  dataOffset,
lt_int64  dataLength,
const char *  code,
int  segmentNumber,
bool  doUserSubheader,
bool  doExtendedSubheader 
)

virtual Nitf::Segment::~Segment (  )  [virtual]


Member Function Documentation

virtual LT_STATUS Nitf::Segment::initialize (  )  [virtual]

This function must be called immediately after the constructor.

Returns:
success or failure

Reimplemented in Nitf::DataSegment, Nitf::FileHeader, Nitf::GraphicSegment, Nitf::ImageSegment, Nitf::LabelSegment, Nitf::ReservedSegment, and Nitf::TextSegment.

int Nitf::Segment::getSegmentNumber (  )  const

const char* Nitf::Segment::getSegmentID (  ) 

lt_int64 Nitf::Segment::getHeaderOffset (  )  const

lt_int64 Nitf::Segment::getHeaderLength (  )  const

lt_int64 Nitf::Segment::getDataOffset (  )  const

lt_int64 Nitf::Segment::getDataLength (  )  const

const SecurityBlock* Nitf::Segment::getSecurityBlock (  )  const

const SecurityMetadata* Nitf::Segment::getSecurityMetadata (  )  const

virtual LT_STATUS Nitf::Segment::addMetadata ( LTIMetadataDatabase  )  const [virtual]

const char* Nitf::Segment::getMetadataTagPrefix (  )  const

int Nitf::Segment::getNumTREs (  )  const

const TREData* Nitf::Segment::getTRE ( int  index  )  const

This function is used to access a TRE in the segment.

Parameters:
index the (zero-based) index of the TRE to access
Returns:
the TRE data

virtual LT_STATUS Nitf::Segment::readHeader (  )  [protected, pure virtual]

virtual LT_STATUS Nitf::Segment::readData (  )  [protected, pure virtual]

virtual LT_STATUS Nitf::Segment::addMetadataLocal ( LTIMetadataDatabase  )  const [protected, pure virtual]


Member Data Documentation

MetadataHelper* Nitf::Segment::m_mdHelper [protected]

Definition at line 114 of file Segment.h.

FieldReader* Nitf::Segment::m_field [protected]

Definition at line 116 of file Segment.h.

Definition at line 118 of file Segment.h.

const lt_int64 Nitf::Segment::m_headerOffset [protected]

Definition at line 119 of file Segment.h.

lt_int64 Nitf::Segment::m_headerLength [protected]

Definition at line 120 of file Segment.h.

const lt_int64 Nitf::Segment::m_dataOffset [protected]

Definition at line 121 of file Segment.h.

const lt_int64 Nitf::Segment::m_dataLength [protected]

Definition at line 122 of file Segment.h.

NITFReaderManager& Nitf::Segment::m_manager [protected]

Definition at line 124 of file Segment.h.

Definition at line 125 of file Segment.h.

Definition at line 127 of file Segment.h.

const int Nitf::Segment::m_segmentNumber [protected]

Definition at line 129 of file Segment.h.

const char* Nitf::Segment::m_segmentID [protected]

Definition at line 130 of file Segment.h.


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

LizardTech