vil_nitf2_header Class Reference

#include <vil_nitf2_header.h>

List of all members.


Detailed Description

Parses a NITF 2.1 file header for vil_nitf2_image.

Use get_property() to get a field value.

Definition at line 18 of file vil_nitf2_header.h.


Public Types

enum  portion_type { enum_subheader, enum_data }
enum  section_type {
  enum_file_header = 0, enum_image_segments, enum_graphic_segments, enum_label_segments,
  enum_text_segments, enum_data_extension_segments, enum_reserved_extension_segments
}

Public Member Functions

 vil_nitf2_header ()
virtual ~vil_nitf2_header ()
virtual bool read (vil_stream *stream)
template<class T>
bool get_property (vcl_string tag, T &out_value) const
template<class T>
bool get_property (vcl_string tag, int i, T &out_value) const
vil_nitf2_classification::file_version file_version () const
virtual vil_nitf2_field::field_treeget_tree () const

Static Public Member Functions

static vcl_string section_num_tag (section_type sec)
static vcl_string section_len_header_tag (section_type sec)
static vcl_string section_len_data_tag (section_type sec)

Static Protected Member Functions

static vil_nitf2_field_definitionsget_field_definitions_1 ()
static vil_nitf2_field_definitionsget_field_definitions_2 (vil_nitf2_classification::file_version version)

Protected Attributes

vil_nitf2_field_sequence m_field_sequence1
vil_nitf2_field_sequencem_field_sequence2
vil_nitf2_field_sequencem_field_sequence_classification

Static Private Attributes

static vil_nitf2_field_definitionss_field_definitions_1
static vil_nitf2_field_definitionss_field_definitions_21
static vil_nitf2_field_definitionss_field_definitions_20

Friends

void vil_nitf2::cleanup_static_members ()

Member Enumeration Documentation

enum vil_nitf2_header::portion_type

Enumerator:
enum_subheader 
enum_data 

Definition at line 25 of file vil_nitf2_header.h.

enum vil_nitf2_header::section_type

Enumerator:
enum_file_header 
enum_image_segments 
enum_graphic_segments 
enum_label_segments 
enum_text_segments 
enum_data_extension_segments 
enum_reserved_extension_segments 

Definition at line 29 of file vil_nitf2_header.h.


Constructor & Destructor Documentation

vil_nitf2_header::vil_nitf2_header (  ) 

Definition at line 17 of file vil_nitf2_header.cxx.

vil_nitf2_header::~vil_nitf2_header (  )  [virtual]

Definition at line 23 of file vil_nitf2_header.cxx.


Member Function Documentation

vcl_string vil_nitf2_header::section_num_tag ( section_type  sec  )  [static]

Definition at line 29 of file vil_nitf2_header.cxx.

vcl_string vil_nitf2_header::section_len_header_tag ( section_type  sec  )  [static]

Definition at line 43 of file vil_nitf2_header.cxx.

vcl_string vil_nitf2_header::section_len_data_tag ( section_type  sec  )  [static]

Definition at line 57 of file vil_nitf2_header.cxx.

bool vil_nitf2_header::read ( vil_stream stream  )  [virtual]

Definition at line 71 of file vil_nitf2_header.cxx.

template<class T>
bool vil_nitf2_header::get_property ( vcl_string  tag,
T &  out_value 
) const [inline]

Definition at line 49 of file vil_nitf2_header.h.

template<class T>
bool vil_nitf2_header::get_property ( vcl_string  tag,
int  i,
T &  out_value 
) const [inline]

Definition at line 59 of file vil_nitf2_header.h.

vil_nitf2_classification::file_version vil_nitf2_header::file_version (  )  const

Definition at line 216 of file vil_nitf2_header.cxx.

vil_nitf2_field::field_tree * vil_nitf2_header::get_tree (  )  const [virtual]

Definition at line 229 of file vil_nitf2_header.cxx.

vil_nitf2_field_definitions * vil_nitf2_header::get_field_definitions_1 (  )  [static, protected]

Definition at line 189 of file vil_nitf2_header.cxx.

vil_nitf2_field_definitions * vil_nitf2_header::get_field_definitions_2 ( vil_nitf2_classification::file_version  version  )  [static, protected]

Definition at line 96 of file vil_nitf2_header.cxx.


Friends And Related Function Documentation

void vil_nitf2::cleanup_static_members (  )  [friend]


Member Data Documentation

vil_nitf2_field_sequence vil_nitf2_header::m_field_sequence1 [protected]

Definition at line 74 of file vil_nitf2_header.h.

vil_nitf2_field_sequence* vil_nitf2_header::m_field_sequence2 [protected]

Definition at line 75 of file vil_nitf2_header.h.

vil_nitf2_field_sequence* vil_nitf2_header::m_field_sequence_classification [protected]

Definition at line 76 of file vil_nitf2_header.h.

vil_nitf2_field_definitions * vil_nitf2_header::s_field_definitions_1 [static, private]

Definition at line 83 of file vil_nitf2_header.h.

vil_nitf2_field_definitions * vil_nitf2_header::s_field_definitions_21 [static, private]

Definition at line 84 of file vil_nitf2_header.h.

vil_nitf2_field_definitions * vil_nitf2_header::s_field_definitions_20 [static, private]

Definition at line 85 of file vil_nitf2_header.h.


The documentation for this class was generated from the following files:
Generated on Sat Oct 11 05:07:51 2008 for core/vil by  doxygen 1.5.1