OSSIM - Open Source Software Image Map  Version 1.9.0 (20180803)
ossimNitfRsmidaTag.h
Go to the documentation of this file.
1 //---
2 // File: ossimNitfRsmidaTag.h
3 //---
4 #ifndef ossimNitfRsmidaTag_HEADER
5 #define ossimNitfRsmidaTag_HEADER 1
6 
8 
15 {
16 public:
17  enum
18  {
19  IID_SIZE = 80,
20  EDITION_SIZE = 40,
21  ISID_SIZE = 40,
22  SID_SIZE = 40,
23  STID_SIZE = 40,
24  YEAR_SIZE = 4,
25  MONTH_SIZE = 2,
26  DAY_SIZE = 2,
27  HOUR_SIZE = 2,
28  MINUTE_SIZE = 2,
29  SECOND_SIZE = 9,
30  NRG_SIZE = 8,
31  NCG_SIZE = 8,
32  FLOAT21_SIZE = 21,
33  GRNDD_SIZE = 1,
34  FULL_SIZE = 8,
35  MIN_SIZE = 8,
36  MAX_SIZE = 8,
37  CEL_SIZE = 1628
38  };
40 
41  virtual void parseStream(std::istream& in);
42  virtual void writeStream(std::ostream& out);
43 
44  virtual std::ostream& print(std::ostream& out,
45  const std::string& prefix=std::string()) const;
46  virtual void clearFields();
47 
48  ossimString getIid() const;
49  ossimString getEdition() const;
50  ossimString getIsid() const;
51  ossimString getSid() const;
52  ossimString getStid() const;
53  ossimString getYear() const;
54  ossimString getMonth() const;
55  ossimString getDay() const;
56  ossimString getHour() const;
57  ossimString getMinute() const;
58  ossimString getSecond() const;
59  ossimString getNrg() const;
60  ossimString getNcg() const;
61  ossimString getTrg() const;
62  ossimString getTcg() const;
63  ossimString getGrndd() const;
64 
65  ossimString getXuor() const;
66  ossimString getYuor() const;
67  ossimString getZuor() const;
68  ossimString getXuxr() const;
69  ossimString getXuyr() const;
70  ossimString getXuzr() const;
71  ossimString getYuxr() const;
72  ossimString getYuyr() const;
73  ossimString getYuzr() const;
74  ossimString getZuxr() const;
75  ossimString getZuyr() const;
76  ossimString getZuzr() const;
77 
78  ossimString getV1x() const;
79  ossimString getV1y() const;
80  ossimString getV1z() const;
81  ossimString getV2x() const;
82  ossimString getV2y() const;
83  ossimString getV2z() const;
84  ossimString getV3x() const;
85  ossimString getV3y() const;
86  ossimString getV3z() const;
87  ossimString getV4x() const;
88  ossimString getV4y() const;
89  ossimString getV4z() const;
90  ossimString getV5x() const;
91  ossimString getV5y() const;
92  ossimString getV5z() const;
93  ossimString getV6x() const;
94  ossimString getV6y() const;
95  ossimString getV6z() const;
96  ossimString getV7x() const;
97  ossimString getV7y() const;
98  ossimString getV7z() const;
99  ossimString getV8x() const;
100  ossimString getV8y() const;
101  ossimString getV8z() const;
102 
103  ossimString getGrpx() const;
104  ossimString getGrpy() const;
105  ossimString getGrpz() const;
106 
107  ossimString getFullr() const;
108  ossimString getFullc() const;
109 
110  ossimString getMinr() const;
111  ossimString getMaxr() const;
112  ossimString getMinc() const;
113  ossimString getMaxc() const;
114 
115  ossimString getIe0() const;
116  ossimString getIer() const;
117  ossimString getIec() const;
118  ossimString getIerr() const;
119  ossimString getIerc() const;
120  ossimString getIecc() const;
121  ossimString getIa0() const;
122  ossimString getIar() const;
123  ossimString getIac() const;
124  ossimString getIarr() const;
125  ossimString getIarc() const;
126  ossimString getIacc() const;
127 
128  ossimString getSpx() const;
129  ossimString getSvx() const;
130  ossimString getSax() const;
131  ossimString getSpy() const;
132  ossimString getSvy() const;
133  ossimString getSay() const;
134  ossimString getSpz() const;
135  ossimString getSvz() const;
136  ossimString getSaz() const;
137 
138 protected:
139  char m_iid[IID_SIZE+1];
140  char m_edition[EDITION_SIZE+1];
141  char m_isid[ISID_SIZE+1];
142  char m_sid[SID_SIZE+1];
143  char m_stid[STID_SIZE+1];
144  char m_year[YEAR_SIZE+1];
145  char m_month[MONTH_SIZE+1];
146  char m_day[DAY_SIZE+1];
147  char m_hour[HOUR_SIZE+1];
148  char m_minute[MINUTE_SIZE+1];
149  char m_second[SECOND_SIZE+1];
150  char m_nrg[NRG_SIZE+1];
151  char m_ncg[NCG_SIZE+1];
152  char m_trg[FLOAT21_SIZE+1];
153  char m_tcg[FLOAT21_SIZE+1];
154  char m_grndd[GRNDD_SIZE+1];
155 
156  char m_xuor[FLOAT21_SIZE+1];
157  char m_yuor[FLOAT21_SIZE+1];
158  char m_zuor[FLOAT21_SIZE+1];
159  char m_xuxr[FLOAT21_SIZE+1];
160  char m_xuyr[FLOAT21_SIZE+1];
161  char m_xuzr[FLOAT21_SIZE+1];
162  char m_yuxr[FLOAT21_SIZE+1];
163  char m_yuyr[FLOAT21_SIZE+1];
164  char m_yuzr[FLOAT21_SIZE+1];
165  char m_zuxr[FLOAT21_SIZE+1];
166  char m_zuyr[FLOAT21_SIZE+1];
167  char m_zuzr[FLOAT21_SIZE+1];
168 
169  char m_v1x[FLOAT21_SIZE+1];
170  char m_v1y[FLOAT21_SIZE+1];
171  char m_v1z[FLOAT21_SIZE+1];
172  char m_v2x[FLOAT21_SIZE+1];
173  char m_v2y[FLOAT21_SIZE+1];
174  char m_v2z[FLOAT21_SIZE+1];
175  char m_v3x[FLOAT21_SIZE+1];
176  char m_v3y[FLOAT21_SIZE+1];
177  char m_v3z[FLOAT21_SIZE+1];
178  char m_v4x[FLOAT21_SIZE+1];
179  char m_v4y[FLOAT21_SIZE+1];
180  char m_v4z[FLOAT21_SIZE+1];
181  char m_v5x[FLOAT21_SIZE+1];
182  char m_v5y[FLOAT21_SIZE+1];
183  char m_v5z[FLOAT21_SIZE+1];
184  char m_v6x[FLOAT21_SIZE+1];
185  char m_v6y[FLOAT21_SIZE+1];
186  char m_v6z[FLOAT21_SIZE+1];
187  char m_v7x[FLOAT21_SIZE+1];
188  char m_v7y[FLOAT21_SIZE+1];
189  char m_v7z[FLOAT21_SIZE+1];
190  char m_v8x[FLOAT21_SIZE+1];
191  char m_v8y[FLOAT21_SIZE+1];
192  char m_v8z[FLOAT21_SIZE+1];
193 
194  char m_grpx[FLOAT21_SIZE+1];
195  char m_grpy[FLOAT21_SIZE+1];
196  char m_grpz[FLOAT21_SIZE+1];
197 
198  char m_fullr[FULL_SIZE+1];
199  char m_fullc[FULL_SIZE+1];
200 
201  char m_minr[MIN_SIZE+1];
202  char m_maxr[MAX_SIZE+1];
203  char m_minc[MIN_SIZE+1];
204  char m_maxc[MAX_SIZE+1];
205 
206  char m_ie0[FLOAT21_SIZE+1];
207  char m_ier[FLOAT21_SIZE+1];
208  char m_iec[FLOAT21_SIZE+1];
209  char m_ierr[FLOAT21_SIZE+1];
210  char m_ierc[FLOAT21_SIZE+1];
211  char m_iecc[FLOAT21_SIZE+1];
212  char m_ia0[FLOAT21_SIZE+1];
213  char m_iar[FLOAT21_SIZE+1];
214  char m_iac[FLOAT21_SIZE+1];
215  char m_iarr[FLOAT21_SIZE+1];
216  char m_iarc[FLOAT21_SIZE+1];
217  char m_iacc[FLOAT21_SIZE+1];
218 
219  char m_spx[FLOAT21_SIZE+1];
220  char m_svx[FLOAT21_SIZE+1];
221  char m_sax[FLOAT21_SIZE+1];
222  char m_spy[FLOAT21_SIZE+1];
223  char m_svy[FLOAT21_SIZE+1];
224  char m_say[FLOAT21_SIZE+1];
225  char m_spz[FLOAT21_SIZE+1];
226  char m_svz[FLOAT21_SIZE+1];
227  char m_saz[FLOAT21_SIZE+1];
228 
229 TYPE_DATA
230 
231 }; // End: class ossimNitfRsmidaTag
232 
233 #endif /* #ifndef ossimNitfRsmidaTag_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.
RSM Identification: Id's, time-of-image model, optional illumination model, footprint information...
#define TYPE_DATA
Definition: ossimRtti.h:339
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