OSSIM - Open Source Software Image Map  Version 1.9.0 (20180803)
AlosPalsarFileDescriptor.cpp
Go to the documentation of this file.
1 //----------------------------------------------------------------------------
2 //
3 // "Copyright Centre National d'Etudes Spatiales"
4 // "Copyright Centre for Remote Imaging, Sensing and Processing"
5 //
6 // License: LGPL
7 //
8 // See LICENSE.txt file in the top level directory for more details.
9 //
10 //----------------------------------------------------------------------------
11 // $Id$
12 
14 
15 
16 namespace ossimplugins
17 {
18 
20 {
21 }
22 
24 {
25 }
26 
28 {
29  os << "ascii_flag:" << data._ascii_flag.c_str() << std::endl;
30  os << "continuation_flag:" << data._continuation_flag.c_str() << std::endl;
31  os << "format_doc:" << data._format_doc.c_str() << std::endl;
32  os << "format_ver:" << data._format_ver.c_str() << std::endl;
33  os << "design_rev:" << data._design_rev.c_str() << std::endl;
34  os << "software_id:" << data._software_id.c_str() << std::endl;
35  os << "file_num:" << data._file_num << std::endl;
36  os << "file_name:" << data._file_name.c_str() << std::endl;
37  os << "rec_seq:" << data._rec_seq.c_str() << std::endl;
38  os << "seq_loc:" << data._seq_loc << std::endl;
39  os << "seq_len:" << data._seq_len << std::endl;
40  os << "rec_code:" << data._rec_code.c_str() << std::endl;
41  os << "code_loc:" << data._code_loc << std::endl;
42  os << "code_len:" << data._code_len << std::endl;
43  os << "rec_len:" << data._rec_len.c_str() << std::endl;
44  os << "rlen_loc:" << data._rlen_loc << std::endl;
45  os << "rlen_len:" << data._rlen_len << std::endl;
46  os << "n_dataset:" << data._n_dataset << std::endl;
47  os << "l_dataset:" << data._l_dataset << std::endl;
48  os << "n_map_proj:" << data._n_map_proj << std::endl;
49  os << "l_map_proj:" << data._l_map_proj << std::endl;
50  os << "n_plat_pos:" << data._n_plat_pos << std::endl;
51  os << "l_plat_pos:" << data._l_plat_pos << std::endl;
52  os << "n_att_data:" << data._n_att_data << std::endl;
53  os << "l_att_data:" << data._l_att_data << std::endl;
54  os << "n_radi_data:" << data._n_radi_data << std::endl;
55  os << "l_radi_data:" << data._l_radi_data << std::endl;
56  os << "n_radi_comp:" << data._n_radi_comp << std::endl;
57  os << "l_radi_comp:" << data._l_radi_comp << std::endl;
58  os << "n_qual_sum:" << data._n_qual_sum << std::endl;
59  os << "l_qual_sum:" << data._l_qual_sum << std::endl;
60  os << "n_data_his:" << data._n_data_his << std::endl;
61  os << "l_data_his:" << data._l_data_his << std::endl;
62  os << "n_rang_spec:" << data._n_rang_spec << std::endl;
63  os << "l_rang_spec:" << data._l_rang_spec << std::endl;
64  os << "n_dem_desc:" << data._n_dem_desc << std::endl;
65  os << "l_dem_desc:" << data._l_dem_desc << std::endl;
66  os << "n_radar_par:" << data._n_radar_par << std::endl;
67  os << "l_radar_par:" << data._l_radar_par << std::endl;
68  os << "n_anno_data:" << data._n_anno_data << std::endl;
69  os << "l_anno_data:" << data._l_anno_data << std::endl;
70  os << "n_det_proc:" << data._n_det_proc << std::endl;
71  os << "l_det_proc:" << data._l_det_proc << std::endl;
72  os << "n_cal:" << data._n_cal << std::endl;
73  os << "l_cal:" << data._l_cal << std::endl;
74  os << "n_gcp:" << data._n_gcp << std::endl;
75  os << "l_gcp:" << data._l_gcp << std::endl;
76  os << "n_fac_data:" << data._n_fac_data << std::endl;
77  os << "l_fac_data:" << data._l_fac_data << std::endl;
78  os << "n_fac_data2:" << data._n_fac_data2 << std::endl;
79  os << "l_fac_data2:" << data._l_fac_data2 << std::endl;
80  os << "n_fac_data3:" << data._n_fac_data3 << std::endl;
81  os << "l_fac_data3:" << data._l_fac_data3 << std::endl;
82  os << "n_fac_data4:" << data._n_fac_data4 << std::endl;
83  os << "l_fac_data4:" << data._l_fac_data4 << std::endl;
84  os << "n_fac_data5:" << data._n_fac_data5 << std::endl;
85  os << "l_fac_data5:" << data._l_fac_data5 << std::endl;
86  os << "n_fac_data6:" << data._n_fac_data6 << std::endl;
87  os << "l_fac_data6:" << data._l_fac_data6 << std::endl;
88  os << "n_fac_data7:" << data._n_fac_data7 << std::endl;
89  os << "l_fac_data7:" << data._l_fac_data7 << std::endl;
90  os << "n_fac_data8:" << data._n_fac_data8 << std::endl;
91  os << "l_fac_data8:" << data._l_fac_data8 << std::endl;
92  os << "n_fac_data9:" << data._n_fac_data9 << std::endl;
93  os << "l_fac_data9:" << data._l_fac_data9 << std::endl;
94  os << "n_fac_data10:" << data._n_fac_data10 << std::endl;
95  os << "l_fac_data10:" << data._l_fac_data10 << std::endl;
96  os << "n_fac_data11:" << data._n_fac_data11 << std::endl;
97  os << "l_fac_data11:" << data._l_fac_data11 << std::endl;
98  return os;
99 }
100 
102 {
103  char buf2[3];
104  buf2[2] = '\0';
105  char buf12[13];
106  buf12[12] = '\0';
107  char buf16[17];
108  buf16[16] = '\0';
109  char buf4[5];
110  buf4[4] = '\0';
111  char buf6[7];
112  buf6[6] = '\0';
113  char buf8[9];
114  buf8[8] = '\0';
115  char buf64[65];
116  buf64[64] = '\0';
117 
118  char buf60[61];
119  buf60[60] = '\0';
120 
121  char buf146[147];
122  buf146[146] = '\0';
123 
124  is.read(buf2, 2);
125  data._ascii_flag = buf2;
126 
127  is.read(buf2, 2);
128  data._continuation_flag = buf2;
129 
130  is.read(buf12, 12);
131  data._format_doc = buf12;
132 
133  is.read(buf2, 2);
134  data._format_ver = buf2;
135 
136  is.read(buf2, 2);
137  data._design_rev = buf2;
138 
139  is.read(buf12, 12);
140  data._software_id = buf12;
141 
142  is.read(buf4, 4);
143  data._file_num = atoi(buf4);
144 
145  is.read(buf16, 16);
146  data._file_name = buf16;
147 
148  is.read(buf4, 4);
149  data._rec_seq = buf4;
150 
151  is.read(buf8, 8);
152  data._seq_loc = atoi(buf8);
153 
154  is.read(buf4, 4);
155  data._seq_len = atoi(buf4);
156 
157  is.read(buf4, 4);
158  data._rec_code = buf4;
159 
160  is.read(buf8, 8);
161  data._code_loc = atoi(buf8);
162 
163  is.read(buf4, 4);
164  data._code_len = atoi(buf4);
165 
166  is.read(buf4, 4);
167  data._rec_len = buf4;
168 
169  is.read(buf8, 8);
170  data._rlen_loc = atoi(buf8);
171 
172  is.read(buf4, 4);
173  data._rlen_len = atoi(buf4);
174 
175  is.read(buf4, 4);
176 
177  is.read(buf64, 64);
178 
179  is.read(buf6, 6);
180  data._n_dataset = atoi(buf6);
181 
182  is.read(buf6, 6);
183  data._l_dataset = atoi(buf6);
184 
185  is.read(buf6, 6);
186  data._n_map_proj = atoi(buf6);
187 
188  is.read(buf6, 6);
189  data._l_map_proj = atoi(buf6);
190 
191  is.read(buf6, 6);
192  data._n_plat_pos = atoi(buf6);
193  is.read(buf6, 6);
194  data._l_plat_pos = atoi(buf6);
195  is.read(buf6, 6);
196  data._n_att_data = atoi(buf6);
197  is.read(buf6, 6);
198  data._l_att_data = atoi(buf6);
199  is.read(buf6, 6);
200  data._n_radi_data = atoi(buf6);
201  is.read(buf6, 6);
202  data._l_radi_data = atoi(buf6);
203  is.read(buf6, 6);
204  data._n_radi_comp = atoi(buf6);
205  is.read(buf6, 6);
206  data._l_radi_comp = atoi(buf6);
207  is.read(buf6, 6);
208  data._n_qual_sum = atoi(buf6);
209  is.read(buf6, 6);
210  data._l_qual_sum = atoi(buf6);
211  is.read(buf6, 6);
212  data._n_data_his = atoi(buf6);
213  is.read(buf6, 6);
214  data._l_data_his = atoi(buf6);
215 
216 
217 
218  is.read(buf6, 6);
219  data._n_rang_spec = atoi(buf6);
220  is.read(buf6, 6);
221  data._l_rang_spec = atoi(buf6);
222  is.read(buf6, 6);
223  data._n_dem_desc = atoi(buf6);
224  is.read(buf6, 6);
225  data._l_dem_desc = atoi(buf6);
226  is.read(buf6, 6);
227  data._n_radar_par = atoi(buf6);
228  is.read(buf6, 6);
229  data._l_radar_par = atoi(buf6);
230  is.read(buf6, 6);
231  data._n_anno_data = atoi(buf6);
232  is.read(buf6, 6);
233  data._l_anno_data = atoi(buf6);
234  is.read(buf6, 6);
235  data._n_det_proc = atoi(buf6);
236  is.read(buf6, 6);
237  data._l_det_proc = atoi(buf6);
238  is.read(buf6, 6);
239  data._n_cal = atoi(buf6);
240  is.read(buf6, 6);
241  data._l_cal = atoi(buf6);
242  is.read(buf6, 6);
243  data._n_gcp = atoi(buf6);
244  is.read(buf6, 6);
245  data._l_gcp = atoi(buf6);
246  is.read(buf60, 60);
247  is.read(buf6, 6);
248  data._n_fac_data = atoi(buf6);
249  is.read(buf8, 8);
250  data._l_fac_data = atoi(buf8);
251  is.read(buf6, 6);
252  data._n_fac_data2 = atoi(buf6);
253  is.read(buf8, 8);
254  data._l_fac_data2 = atoi(buf8);
255  is.read(buf6, 6);
256  data._n_fac_data3 = atoi(buf6);
257  is.read(buf8, 8);
258  data._l_fac_data3 = atoi(buf8);
259  is.read(buf6, 6);
260  data._n_fac_data4 = atoi(buf6);
261  is.read(buf8, 8);
262  data._l_fac_data4 = atoi(buf8);
263  is.read(buf6, 6);
264  data._n_fac_data5 = atoi(buf6);
265  is.read(buf8, 8);
266  data._l_fac_data5 = atoi(buf8);
267  is.read(buf6, 6);
268  data._n_fac_data6 = atoi(buf6);
269  is.read(buf8, 8);
270  data._l_fac_data6 = atoi(buf8);
271  is.read(buf6, 6);
272  data._n_fac_data7 = atoi(buf6);
273  is.read(buf8, 8);
274  data._l_fac_data7 = atoi(buf8);
275  is.read(buf6, 6);
276  data._n_fac_data8 = atoi(buf6);
277  is.read(buf8, 8);
278  data._l_fac_data8 = atoi(buf8);
279  is.read(buf6, 6);
280  data._n_fac_data9 = atoi(buf6);
281  is.read(buf8, 8);
282  data._l_fac_data9 = atoi(buf8);
283  is.read(buf6, 6);
284  data._n_fac_data10 = atoi(buf6);
285  is.read(buf8, 8);
286  data._l_fac_data10 = atoi(buf8);
287  is.read(buf6, 6);
288  data._n_fac_data11 = atoi(buf6);
289  is.read(buf8, 8);
290  data._l_fac_data11 = atoi(buf8);
291 
292  is.read(buf146, 146);
293  return is;
294 }
295 
297  AlosPalsarRecord(rhs),
298  _ascii_flag(rhs._ascii_flag),
299  _continuation_flag(rhs._continuation_flag),
300  _format_doc(rhs._format_doc),
301  _format_ver(rhs._format_ver),
302  _design_rev(rhs._design_rev),
303  _software_id(rhs._software_id),
304  _file_num(rhs._file_num),
305  _file_name(rhs._file_name),
306  _rec_seq(rhs._rec_seq),
307  _seq_loc(rhs._seq_loc),
308  _seq_len(rhs._seq_len),
309  _rec_code(rhs._rec_code),
310  _code_loc(rhs._code_loc),
311  _code_len(rhs._code_len),
312  _rec_len(rhs._rec_len),
313  _rlen_loc(rhs._rlen_loc),
314  _rlen_len(rhs._rlen_len),
315  _n_dataset(rhs._n_dataset),
316  _l_dataset(rhs._l_dataset),
317  _n_map_proj(rhs._n_map_proj),
318  _l_map_proj(rhs._l_map_proj),
319  _n_plat_pos(rhs._n_plat_pos),
320  _l_plat_pos(rhs._l_plat_pos),
321  _n_att_data(rhs._n_att_data),
322  _l_att_data(rhs._l_att_data),
323  _n_radi_data(rhs._n_radi_data),
324  _l_radi_data(rhs._l_radi_data),
325  _n_radi_comp(rhs._n_radi_comp),
326  _l_radi_comp(rhs._l_radi_comp),
327  _n_qual_sum(rhs._n_qual_sum),
328  _l_qual_sum(rhs._l_qual_sum),
329  _n_data_his(rhs._n_data_his),
330  _l_data_his(rhs._l_data_his),
331  _n_rang_spec(rhs._n_rang_spec),
332  _l_rang_spec(rhs._l_rang_spec),
333  _n_dem_desc(rhs._n_dem_desc),
334  _l_dem_desc(rhs._l_dem_desc),
335  _n_radar_par(rhs._n_radar_par),
336  _l_radar_par(rhs._l_radar_par),
337  _n_anno_data(rhs._n_anno_data),
338  _l_anno_data(rhs._l_anno_data),
339  _n_det_proc(rhs._n_det_proc),
340  _l_det_proc(rhs._l_det_proc),
341  _n_cal(rhs._n_cal),
342  _l_cal(rhs._l_cal),
343  _n_gcp(rhs._n_gcp),
344  _l_gcp(rhs._l_gcp),
345  _n_fac_data(rhs._n_fac_data),
346  _l_fac_data(rhs._l_fac_data),
347  _n_fac_data2(rhs._n_fac_data2),
348  _l_fac_data2(rhs._l_fac_data2),
349  _n_fac_data3(rhs._n_fac_data3),
350  _l_fac_data3(rhs._l_fac_data3),
351  _n_fac_data4(rhs._n_fac_data4),
352  _l_fac_data4(rhs._l_fac_data4),
353  _n_fac_data5(rhs._n_fac_data5),
354  _l_fac_data5(rhs._l_fac_data5),
355  _n_fac_data6(rhs._n_fac_data6),
356  _l_fac_data6(rhs._l_fac_data6),
357  _n_fac_data7(rhs._n_fac_data7),
358  _l_fac_data7(rhs._l_fac_data7),
359  _n_fac_data8(rhs._n_fac_data8),
360  _l_fac_data8(rhs._l_fac_data8),
361  _n_fac_data9(rhs._n_fac_data9),
362  _l_fac_data9(rhs._l_fac_data9),
363  _n_fac_data10(rhs._n_fac_data10),
364  _l_fac_data10(rhs._l_fac_data10),
365  _n_fac_data11(rhs._n_fac_data11),
366  _l_fac_data11(rhs._l_fac_data11)
367 
368 {
369 }
370 
372 {
373  _ascii_flag = rhs._ascii_flag;
375  _format_doc = rhs._format_doc;
376  _format_ver = rhs._format_ver;
377  _design_rev = rhs._design_rev;
379  _file_num = rhs._file_num;
380  _file_name = rhs._file_name;
381  _rec_seq = rhs._rec_seq;
382  _seq_loc = rhs._seq_loc;
383  _seq_len = rhs._seq_len;
384  _rec_code = rhs._rec_code;
385  _code_loc = rhs._code_loc;
386  _code_len = rhs._code_len;
387  _rec_len = rhs._rec_len;
388  _rlen_loc = rhs._rlen_loc;
389  _rlen_len = rhs._rlen_len;
390  _n_dataset = rhs._n_dataset;
391  _l_dataset = rhs._l_dataset;
392  _n_map_proj = rhs._n_map_proj;
393  _l_map_proj = rhs._l_map_proj;
394  _n_plat_pos = rhs._n_plat_pos;
395  _l_plat_pos = rhs._l_plat_pos;
396  _n_att_data = rhs._n_att_data;
397  _l_att_data = rhs._l_att_data;
402  _n_qual_sum = rhs._n_qual_sum ;
403  _l_qual_sum = rhs._l_qual_sum;
404  _n_data_his = rhs._n_data_his;
405  _l_data_his = rhs._l_data_his;
408  _n_dem_desc = rhs._n_dem_desc;
409  _l_dem_desc = rhs._l_dem_desc;
414  _n_det_proc = rhs._n_det_proc;
415  _l_det_proc = rhs._l_det_proc;
416  _n_cal = rhs._n_cal;
417  _l_cal = rhs._l_cal;
418  _n_gcp = rhs._n_gcp;
419  _l_gcp = rhs._l_gcp;
420  _n_fac_data = rhs._n_fac_data;
421  _l_fac_data = rhs._l_fac_data;
442  return *this;
443 }
444 }
std::string _continuation_flag
Continuation flag.
int _n_data_his
Number of data histogram records.
int _n_radi_data
Number of radiometric data records.
std::string _format_doc
Format control documentation.
int _l_fac_data6
Fac data record length, bytes.
int _l_radi_data
Radiometric data record length, bytes.
int _l_radi_comp
Radiometric compensation record length, bytes.
int _n_fac_data4
Number of facility data records.
int _l_qual_sum
Data quality summary record length, bytes.
std::string _rec_len
Record length/location flag.
int _n_cal
Number of calibration records.
int _n_radar_par
Number of RADAR par records.
int _n_fac_data2
Number of facility data records.
int _n_dem_desc
Number of DEM descriptor records.
int _l_plat_pos
Platform position record length, bytes.
int _l_fac_data10
Fac data record length, bytes.
AlosPalsarFileDescriptor & operator=(const AlosPalsarFileDescriptor &rhs)
Copy operator.
int _l_fac_data11
Fac data record length, bytes.
int _l_fac_data8
Fac data record length, bytes.
int _n_radi_comp
Number of radiometric compensation records.
int _n_fac_data7
Number of facility data records.
int _l_fac_data7
Fac data record length, bytes.
int _l_fac_data
Fac data record length, bytes.
int _l_dem_desc
DEM desc record length, bytes.
int _l_fac_data2
Fac data record length, bytes.
This class is the base class of all the record classes.
std::string _software_id
Software identifier.
int _l_dataset
Data set summary record length, bytes.
int _l_att_data
Attitude data record length, bytes.
std::string _rec_seq
Record sequence/location flag.
int _n_plat_pos
Number of platform position records.
int _l_fac_data5
Fac data record length, bytes.
int _n_det_proc
Number of processing parameter records.
std::string _design_rev
Format doc revision.
std::ostream & operator<<(std::ostream &os, const AlosPalsarData &data)
int _l_cal
Calibration record length, bytes.
int _n_dataset
Number of dataset summ records.
std::string _format_ver
Format doc version.
int _n_fac_data
Number of facility data records.
int _l_map_proj
Map projection record length, bytes.
std::istream & operator>>(std::istream &is, AlosPalsarData &data)
int _n_fac_data11
Number of facility data records.
int _l_anno_data
Annotation data record length, bytes.
int _n_fac_data9
Number of facility data records.
int _n_rang_spec
Number of range spectra records.
std::basic_istream< char > istream
Base class for char input streams.
Definition: ossimIosFwd.h:20
int _n_qual_sum
Number of data quality summary records.
int _n_fac_data8
Number of facility data records.
int _n_anno_data
Number of annotation data records.
int _l_radar_par
RADAR par record length, bytes.
int _n_fac_data3
Number of facility data records.
int _n_fac_data5
Number of facility data records.
int _n_fac_data6
Number of facility data records.
int _n_fac_data10
Number of facility data records.
int _l_fac_data3
Fac data record length, bytes.
int _n_att_data
Number of attitude data records.
int _l_data_his
Data histogram record length, bytes.
int _l_fac_data4
Fac data record length, bytes.
int _n_map_proj
Number of map proj records.
This class is able to read the SAR leader file descriptor record of the leader file.
std::string _rec_code
Record code/location flag.
int _l_fac_data9
Fac data record length, bytes.
std::basic_ostream< char > ostream
Base class for char output streams.
Definition: ossimIosFwd.h:23
int _l_rang_spec
Range spectra record length, bytes.
int _l_det_proc
Processing parameter record length, bytes.