OSSIM - Open Source Software Image Map
Version 1.9.0 (20180803)
include
ossim
support_data
ossimRpfHeader.h
Go to the documentation of this file.
1
//*******************************************************************
2
//
3
// License: MIT
4
//
5
// See LICENSE.txt file in the top level directory for more details.
6
//
7
// Author: Garrett Potts
8
//
9
// Description: Rpf support class
10
//
11
//********************************************************************
12
// $Id: ossimRpfHeader.h 22013 2012-12-19 17:37:20Z dburken $
13
#ifndef ossimRpfHeader_HEADER
14
#define ossimRpfHeader_HEADER 1
15
16
#include <iosfwd>
17
#include <
ossim/base/ossimConstants.h
>
18
#include <
ossim/base/ossimFilename.h
>
19
#include <
ossim/support_data/ossimNitfRegisteredTag.h
>
20
#include <
ossim/support_data/ossimRpfConstants.h
>
21
22
class
ossimRpfLocationSection
;
23
class
ossimRpfCoverageSection
;
24
class
ossimRpfBoundaryRectTable
;
25
class
ossimRpfBoundaryRectSectionSubheader
;
26
class
ossimRpfFrameFileIndexSectionSubheader
;
27
class
ossimRpfFrameFileIndexSubsection
;
28
class
ossimRpfColorTableIndexSectionSubheader;
29
class
ossimRpfImageDescriptionSubheader
;
30
class
ossimRpfMaskSubsection
;
31
class
ossimRpfAttributeSectionSubheader
;
32
class
ossimRpfImageDisplayParameterSubheader
;
33
class
ossimRpfCompressionSection
;
34
class
ossimRpfCompressionSectionSubheader
;
35
class
ossimRpfColorGrayscaleSubheader
;
36
37
class
ossimRpfHeader
:
public
ossimNitfRegisteredTag
38
{
39
public
:
40
42
ossimRpfHeader
();
43
45
ossimRpfHeader
(
const
ossimRpfHeader
& obj);
46
48
const
ossimRpfHeader
&
operator=
(
const
ossimRpfHeader
& rhs);
49
50
virtual
~ossimRpfHeader
();
51
57
virtual
void
parseStream
(
std::istream
& in);
58
64
virtual
void
writeStream
(
std::ostream
& out);
65
75
std::ostream
&
print
(
std::ostream
& out,
76
const
std::string& prefix=std::string())
const
;
77
78
virtual
ossimByteOrder
getByteOrder
()
const
;
79
80
const
ossimRpfLocationSection
*
getLocationSection
()
const
;
81
82
ossimRpfLocationSection
*
getLocationSection
();
83
84
bool
hasComponent
(
ossimRpfComponentId
componentId)
const
;
85
ossimString
getSecurityClassification
()
const
;
86
91
ossimRpfCoverageSection
*
92
getNewCoverageSection
(
const
ossimFilename
& file)
const
;
93
ossimRpfCoverageSection
*
94
getNewCoverageSection
(
std::istream
& in)
const
;
95
96
ossimRpfColorGrayscaleSubheader
*
97
getNewColorGrayscaleSubheader
(
std::istream
& in)
const
;
98
ossimRpfCompressionSection
*
99
getNewCompressionSection
(
std::istream
& in)
const
;
100
ossimRpfCompressionSectionSubheader
*
101
getNewCompressionSectionSubheader
(
std::istream
& in)
const
;
102
ossimRpfImageDisplayParameterSubheader
*
103
getNewImageDisplayParameterSubheader
(
std::istream
& in)
const
;
104
ossimRpfAttributeSectionSubheader
*
105
getNewAttributeSectionSubheader
(
std::istream
& in)
const
;
106
ossimRpfImageDescriptionSubheader
*
107
getNewImageDescriptionSubheader
(
std::istream
& in)
const
;
108
ossimRpfMaskSubsection
*
109
getNewMaskSubsection
(
std::istream
& in)
const
;
110
ossimRpfBoundaryRectSectionSubheader
*
111
getNewBoundaryRectSectSubheader
(
std::istream
& in)
const
;
112
ossimRpfBoundaryRectTable
*
113
getNewBoundaryRectTable
(
std::istream
& in)
const
;
114
ossimRpfFrameFileIndexSectionSubheader
*
115
getNewFrameFileIndexSectionSubheader
(
std::istream
& in)
const
;
116
ossimRpfFrameFileIndexSubsection
*
117
getNewFileIndexSubsection
(
std::istream
& in)
const
;
118
ossimRpfColorTableIndexSectionSubheader*
119
getNewColorTableIndexSectionSubheader
(
std::istream
& in)
const
;
120
121
ossimRpfCompressionSection
*
122
getNewCompressionSection
(
const
ossimFilename
& file)
const
;
123
ossimRpfBoundaryRectSectionSubheader
*
124
getNewBoundaryRectSectSubheader
(
const
ossimFilename
& file)
const
;
125
ossimRpfBoundaryRectTable
*
126
getNewBoundaryRectTable
(
const
ossimFilename
& file)
const
;
127
ossimRpfFrameFileIndexSectionSubheader
*
128
getNewFrameFileIndexSectionSubheader
(
const
ossimFilename
& file)
const
;
129
ossimRpfFrameFileIndexSubsection
*
130
getNewFileIndexSubsection
(
const
ossimFilename
& file)
const
;
131
ossimRpfColorTableIndexSectionSubheader*
132
getNewColorTableIndexSectionSubheader
(
const
ossimFilename
& file)
const
;
133
134
ossimString
getDate
()
const
;
135
137
ossim_uint32
getLocationSectionLocation
()
const
;
138
139
void
setFilename
(
const
ossimString
& file);
140
void
setNewRepUpIndicator
(
const
ossimString
& s);
141
void
setGovSpecNumber
(
const
ossimString
& s);
142
void
setGovSpecDate
(
const
ossimString
& s);
143
void
setSecurityClassification
(
const
ossimString
& s);
144
void
setCountryCode
(
const
ossimString
& s);
145
void
setSecurityReleaseMarking
(
const
ossimString
& s);
146
void
setLocationSectionPos
(std::streamoff off);
147
152
virtual
bool
loadState
(
const
ossimKeywordlist
& kwl,
const
char
* prefix=0);
153
154
private
:
155
157
ossim_uint8
m_littleBigEndianIndicator
;
// 1 byte bool
158
ossim_uint16
m_headerSectionLength
;
// 2 bytes uint
159
char
m_fileName
[13];
// 12 byte ascii
160
ossim_uint8
m_newRepUpIndicator
;
// 1 byte unsigned int
161
char
m_govSpecNumber
[16];
// 15 byte ascii
162
char
m_govSpecDate
[9];
// 8 byte ascii
172
char
m_securityClassification
[2];
// 1 byte ascii
173
char
m_countryCode
[3];
// 2 byte ascii
174
char
m_securityReleaseMarking
[3];
// 2 byte ascii
175
ossim_uint32
m_locSectionLoc
;
// 4 byte unsigned int
176
177
ossimRpfLocationSection
*
m_locationSection
;
178
};
179
180
#endif
181
ossimRpfHeader::setCountryCode
void setCountryCode(const ossimString &s)
Definition:
ossimRpfHeader.cpp:809
ossimRpfHeader::getNewFrameFileIndexSectionSubheader
ossimRpfFrameFileIndexSectionSubheader * getNewFrameFileIndexSectionSubheader(std::istream &in) const
Definition:
ossimRpfHeader.cpp:652
ossimRpfHeader::setSecurityReleaseMarking
void setSecurityReleaseMarking(const ossimString &s)
Definition:
ossimRpfHeader.cpp:814
ossimRpfComponentId
ossimRpfComponentId
Definition:
ossimRpfConstants.h:15
ossimRpfColorGrayscaleSubheader
Definition:
ossimRpfColorGrayscaleSubheader.h:8
ossimRpfHeader::m_locationSection
ossimRpfLocationSection * m_locationSection
Definition:
ossimRpfHeader.h:177
ossimRpfHeader::setNewRepUpIndicator
void setNewRepUpIndicator(const ossimString &s)
Definition:
ossimRpfHeader.cpp:785
ossimConstants.h
ossimKeywordlist
Represents serializable keyword/value map.
Definition:
ossimKeywordlist.h:50
ossimRpfHeader::getNewImageDescriptionSubheader
ossimRpfImageDescriptionSubheader * getNewImageDescriptionSubheader(std::istream &in) const
Definition:
ossimRpfHeader.cpp:537
ossimRpfCompressionSectionSubheader
Definition:
ossimRpfCompressionSectionSubheader.h:8
ossimRpfBoundaryRectTable
Definition:
ossimRpfBoundaryRectTable.h:22
ossimRpfHeader::getNewImageDisplayParameterSubheader
ossimRpfImageDisplayParameterSubheader * getNewImageDisplayParameterSubheader(std::istream &in) const
Definition:
ossimRpfHeader.cpp:502
ossimRpfHeader::m_locSectionLoc
ossim_uint32 m_locSectionLoc
Definition:
ossimRpfHeader.h:175
ossimRpfImageDescriptionSubheader
Definition:
ossimRpfImageDescriptionSubheader.h:22
ossimRpfCoverageSection
Definition:
ossimRpfCoverageSection.h:22
ossimRpfHeader::print
std::ostream & print(std::ostream &out, const std::string &prefix=std::string()) const
print method that outputs a key/value type format adding prefix to keys.
Definition:
ossimRpfHeader.cpp:231
ossimRpfHeader::hasComponent
bool hasComponent(ossimRpfComponentId componentId) const
Definition:
ossimRpfHeader.cpp:280
ossim_uint16
unsigned short ossim_uint16
Definition:
ossimConstants.h:231
ossimRpfHeader::getLocationSectionLocation
ossim_uint32 getLocationSectionLocation() const
returns the byte position of the location section.
Definition:
ossimRpfHeader.cpp:775
ossimRpfFrameFileIndexSectionSubheader
Definition:
ossimRpfFrameFileIndexSectionSubheader.h:19
ossimRpfHeader::getLocationSection
const ossimRpfLocationSection * getLocationSection() const
Definition:
ossimRpfHeader.cpp:270
ossimRpfHeader::getDate
ossimString getDate() const
Definition:
ossimRpfHeader.cpp:770
ossimNitfRegisteredTag
Definition:
ossimNitfRegisteredTag.h:26
ossimRpfHeader::ossimRpfHeader
ossimRpfHeader()
default constructor
Definition:
ossimRpfHeader.cpp:55
ossimRpfHeader::~ossimRpfHeader
virtual ~ossimRpfHeader()
Definition:
ossimRpfHeader.cpp:128
ossimRpfHeader::setGovSpecDate
void setGovSpecDate(const ossimString &s)
Definition:
ossimRpfHeader.cpp:799
ossimRpfHeader::loadState
virtual bool loadState(const ossimKeywordlist &kwl, const char *prefix=0)
Definition:
ossimRpfHeader.cpp:824
ossimRpfHeader::getNewBoundaryRectSectSubheader
ossimRpfBoundaryRectSectionSubheader * getNewBoundaryRectSectSubheader(std::istream &in) const
Definition:
ossimRpfHeader.cpp:616
ossimRpfHeader::getNewBoundaryRectTable
ossimRpfBoundaryRectTable * getNewBoundaryRectTable(std::istream &in) const
Definition:
ossimRpfHeader.cpp:573
ossimRpfHeader::m_securityReleaseMarking
char m_securityReleaseMarking[3]
Definition:
ossimRpfHeader.h:174
ossimRpfHeader::operator=
const ossimRpfHeader & operator=(const ossimRpfHeader &rhs)
assignment operator
Definition:
ossimRpfHeader.cpp:108
ossim_uint32
unsigned int ossim_uint32
Definition:
ossimConstants.h:235
ossimRpfHeader::m_littleBigEndianIndicator
ossim_uint8 m_littleBigEndianIndicator
0x00 = big, 0xff = little
Definition:
ossimRpfHeader.h:157
ossimRpfHeader::m_fileName
char m_fileName[13]
Definition:
ossimRpfHeader.h:159
ossimRpfHeader
Definition:
ossimRpfHeader.h:37
ossimRpfHeader::m_govSpecDate
char m_govSpecDate[9]
Definition:
ossimRpfHeader.h:162
ossimByteOrder
ossimByteOrder
Definition:
ossimConstants.h:425
ossimRpfHeader::m_newRepUpIndicator
ossim_uint8 m_newRepUpIndicator
Definition:
ossimRpfHeader.h:160
ossimFilename
Definition:
ossimFilename.h:20
ossimRpfImageDisplayParameterSubheader
Definition:
ossimRpfImageDisplayParameterSubheader.h:18
ossimRpfLocationSection
Definition:
ossimRpfLocationSection.h:81
ossimRpfHeader::setLocationSectionPos
void setLocationSectionPos(std::streamoff off)
Definition:
ossimRpfHeader.cpp:819
ossimNitfRegisteredTag.h
ossimRpfHeader::m_govSpecNumber
char m_govSpecNumber[16]
Definition:
ossimRpfHeader.h:161
ossimRpfHeader::parseStream
virtual void parseStream(std::istream &in)
Parse method.
Definition:
ossimRpfHeader.cpp:137
ossimRpfHeader::m_securityClassification
char m_securityClassification[2]
1 byte field that can have the values
Definition:
ossimRpfHeader.h:172
ossimRpfHeader::getSecurityClassification
ossimString getSecurityClassification() const
Definition:
ossimRpfHeader.cpp:290
ossim::istream
std::basic_istream< char > istream
Base class for char input streams.
Definition:
ossimIosFwd.h:20
ossimFilename.h
ossimRpfBoundaryRectSectionSubheader
Definition:
ossimRpfBoundaryRectSectionSubheader.h:19
ossimRpfMaskSubsection
Definition:
ossimRpfMaskSubsection.h:20
ossimRpfHeader::getByteOrder
virtual ossimByteOrder getByteOrder() const
Definition:
ossimRpfHeader.cpp:265
ossimRpfHeader::getNewFileIndexSubsection
ossimRpfFrameFileIndexSubsection * getNewFileIndexSubsection(std::istream &in) const
Definition:
ossimRpfHeader.cpp:686
ossimRpfConstants.h
ossimRpfHeader::m_countryCode
char m_countryCode[3]
Definition:
ossimRpfHeader.h:173
ossimRpfFrameFileIndexSubsection
Definition:
ossimRpfFrameFileIndexSubsection.h:24
ossimRpfHeader::getNewMaskSubsection
ossimRpfMaskSubsection * getNewMaskSubsection(std::istream &in) const
Definition:
ossimRpfHeader.cpp:324
ossimRpfHeader::getNewCoverageSection
ossimRpfCoverageSection * getNewCoverageSection(const ossimFilename &file) const
Definition:
ossimRpfHeader.cpp:735
ossimRpfHeader::setSecurityClassification
void setSecurityClassification(const ossimString &s)
Definition:
ossimRpfHeader.cpp:804
ossimRpfHeader::writeStream
virtual void writeStream(std::ostream &out)
Write method.
Definition:
ossimRpfHeader.cpp:181
ossimRpfHeader::getNewColorGrayscaleSubheader
ossimRpfColorGrayscaleSubheader * getNewColorGrayscaleSubheader(std::istream &in) const
Definition:
ossimRpfHeader.cpp:395
ossimRpfHeader::setFilename
void setFilename(const ossimString &file)
Definition:
ossimRpfHeader.cpp:780
ossimRpfHeader::m_headerSectionLength
ossim_uint16 m_headerSectionLength
Definition:
ossimRpfHeader.h:158
ossimRpfAttributeSectionSubheader
Definition:
ossimRpfAttributeSectionSubheader.h:18
ossimRpfHeader::getNewAttributeSectionSubheader
ossimRpfAttributeSectionSubheader * getNewAttributeSectionSubheader(std::istream &in) const
Definition:
ossimRpfHeader.cpp:360
ossimRpfHeader::getNewCompressionSectionSubheader
ossimRpfCompressionSectionSubheader * getNewCompressionSectionSubheader(std::istream &in) const
Definition:
ossimRpfHeader.cpp:465
ossimRpfHeader::getNewColorTableIndexSectionSubheader
ossimRpfColorTableIndexSectionSubheader * getNewColorTableIndexSectionSubheader(std::istream &in) const
ossimRpfCompressionSection
Definition:
ossimRpfCompressionSection.h:27
ossimRpfHeader::setGovSpecNumber
void setGovSpecNumber(const ossimString &s)
Definition:
ossimRpfHeader.cpp:794
ossim_uint8
unsigned char ossim_uint8
Definition:
ossimConstants.h:227
ossimRpfHeader::getNewCompressionSection
ossimRpfCompressionSection * getNewCompressionSection(std::istream &in) const
Definition:
ossimRpfHeader.cpp:430
ossim::ostream
std::basic_ostream< char > ostream
Base class for char output streams.
Definition:
ossimIosFwd.h:23
ossimString
Definition:
ossimString.h:22
Generated on Fri Aug 3 2018 08:46:53 for OSSIM - Open Source Software Image Map by
1.8.14