OSSIM - Open Source Software Image Map  Version 1.9.0 (20180803)
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>
21 
28 class ossimRpfColorTableIndexSectionSubheader;
36 
38 {
39 public:
40 
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 
76  const std::string& prefix=std::string()) const;
77 
78  virtual ossimByteOrder getByteOrder()const;
79 
81 
83 
84  bool hasComponent(ossimRpfComponentId componentId)const;
86 
92  getNewCoverageSection(const ossimFilename& file)const;
95 
118  ossimRpfColorTableIndexSectionSubheader*
120 
122  getNewCompressionSection(const ossimFilename& file)const;
126  getNewBoundaryRectTable(const ossimFilename& file)const;
130  getNewFileIndexSubsection(const ossimFilename& file)const;
131  ossimRpfColorTableIndexSectionSubheader*
133 
134  ossimString getDate()const;
135 
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 
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 
178 };
179 
180 #endif
181 
void setCountryCode(const ossimString &s)
ossimRpfFrameFileIndexSectionSubheader * getNewFrameFileIndexSectionSubheader(std::istream &in) const
void setSecurityReleaseMarking(const ossimString &s)
ossimRpfComponentId
ossimRpfLocationSection * m_locationSection
void setNewRepUpIndicator(const ossimString &s)
Represents serializable keyword/value map.
ossimRpfImageDescriptionSubheader * getNewImageDescriptionSubheader(std::istream &in) const
ossimRpfImageDisplayParameterSubheader * getNewImageDisplayParameterSubheader(std::istream &in) const
ossim_uint32 m_locSectionLoc
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.
bool hasComponent(ossimRpfComponentId componentId) const
unsigned short ossim_uint16
ossim_uint32 getLocationSectionLocation() const
returns the byte position of the location section.
const ossimRpfLocationSection * getLocationSection() const
ossimString getDate() const
ossimRpfHeader()
default constructor
virtual ~ossimRpfHeader()
void setGovSpecDate(const ossimString &s)
virtual bool loadState(const ossimKeywordlist &kwl, const char *prefix=0)
ossimRpfBoundaryRectSectionSubheader * getNewBoundaryRectSectSubheader(std::istream &in) const
ossimRpfBoundaryRectTable * getNewBoundaryRectTable(std::istream &in) const
char m_securityReleaseMarking[3]
const ossimRpfHeader & operator=(const ossimRpfHeader &rhs)
assignment operator
unsigned int ossim_uint32
ossim_uint8 m_littleBigEndianIndicator
0x00 = big, 0xff = little
char m_fileName[13]
char m_govSpecDate[9]
ossimByteOrder
ossim_uint8 m_newRepUpIndicator
void setLocationSectionPos(std::streamoff off)
char m_govSpecNumber[16]
virtual void parseStream(std::istream &in)
Parse method.
char m_securityClassification[2]
1 byte field that can have the values
ossimString getSecurityClassification() const
std::basic_istream< char > istream
Base class for char input streams.
Definition: ossimIosFwd.h:20
virtual ossimByteOrder getByteOrder() const
ossimRpfFrameFileIndexSubsection * getNewFileIndexSubsection(std::istream &in) const
char m_countryCode[3]
ossimRpfMaskSubsection * getNewMaskSubsection(std::istream &in) const
ossimRpfCoverageSection * getNewCoverageSection(const ossimFilename &file) const
void setSecurityClassification(const ossimString &s)
virtual void writeStream(std::ostream &out)
Write method.
ossimRpfColorGrayscaleSubheader * getNewColorGrayscaleSubheader(std::istream &in) const
void setFilename(const ossimString &file)
ossim_uint16 m_headerSectionLength
ossimRpfAttributeSectionSubheader * getNewAttributeSectionSubheader(std::istream &in) const
ossimRpfCompressionSectionSubheader * getNewCompressionSectionSubheader(std::istream &in) const
ossimRpfColorTableIndexSectionSubheader * getNewColorTableIndexSectionSubheader(std::istream &in) const
void setGovSpecNumber(const ossimString &s)
unsigned char ossim_uint8
ossimRpfCompressionSection * getNewCompressionSection(std::istream &in) const
std::basic_ostream< char > ostream
Base class for char output streams.
Definition: ossimIosFwd.h:23