OSSIM - Open Source Software Image Map  Version 1.9.0 (20180803)
ossimNitfGeolobTag.h
Go to the documentation of this file.
1 //---
2 //
3 // License: MIT
4 //
5 // Author: David Burken
6 //
7 // Description: GEOLOB tag class declaration.
8 //
9 // References:
10 //
11 // 1) DIGEST 2.1 Part 2 - Annex D
12 // Appendix 1 - NSIF Standard Geospatial Support Data Extension
13 //
14 // 2) STDI-0006
15 //---
16 // $Id$
17 
18 #ifndef ossimNitfGeolobTag_HEADER
19 #define ossimNitfGeolobTag_HEADER 1
20 
23 #include <string>
24 
26 {
27 public:
28  enum
29  {
30  ARV_SIZE = 9,
31  BRV_SIZE = 9,
32  LSO_SIZE = 15,
33  PSO_SIZE = 15,
34  TAG_SIZE = 48
35  // -----
36  // 48
37  };
38 
41 
47  virtual void parseStream(ossim::istream& in);
48 
54  virtual void writeStream(ossim::ostream& out);
55 
62  virtual std::ostream& print(std::ostream& out,
63  const std::string& prefix) const;
64 
76  std::string getArvString() const;
77 
82  ossim_uint32 getArv() const;
83 
91  ossim_float64 getDegreesPerPixelLon() const;
92 
97  void setArv(ossim_uint32 arv);
98 
103  void setDegreesPerPixelLon(const ossim_float64& deltaLon);
104 
116  std::string getBrvString() const;
117 
122  ossim_uint32 getBrv() const;
123 
131  ossim_float64 getDegreesPerPixelLat() const;
132 
137  void setBrv(ossim_uint32 brv);
138 
143  void setDegreesPerPixelLat(const ossim_float64& deltaLat);
144 
154  std::string getLsoString() const;
155 
160  ossim_float64 getLso() const;
161 
167  void setLso(const ossim_float64& lso);
168 
178  std::string getPsoString() const;
179 
184  ossim_float64 getPso() const;
185 
191  void setPso(const ossim_float64& pso);
192 
193 protected:
194 
195  std::string m_tagData;
196 
197 TYPE_DATA
198 };
199 
200 #endif /* End of "#ifndef ossimNitfGeolobTag_HEADER" */
virtual void writeStream(ossim::ostream &out)=0
virtual void parseStream(ossim::istream &in)=0
This will allow the user defined data to parse the stream.
virtual std::ostream & print(std::ostream &out, const std::string &prefix=std::string()) const
Pure virtual print method that outputs a key/value type format adding prefix to keys.
double ossim_float64
#define TYPE_DATA
Definition: ossimRtti.h:339
unsigned int ossim_uint32
std::basic_istream< char > istream
Base class for char input streams.
Definition: ossimIosFwd.h:20
#define OSSIM_DLL
std::basic_ostream< char > ostream
Base class for char output streams.
Definition: ossimIosFwd.h:23