OSSIM - Open Source Software Image Map  Version 1.9.0 (20180803)
ErsSarDataSetSummary.h
Go to the documentation of this file.
1 //----------------------------------------------------------------------------
2 //
3 // "Copyright Centre National d'Etudes Spatiales"
4 //
5 // License: LGPL
6 //
7 // See LICENSE.txt file in the top level directory for more details.
8 //
9 //----------------------------------------------------------------------------
10 // $Id$
11 
12 #ifndef ErsSarDataSetSummary_h
13 #define ErsSarDataSetSummary_h
14 
15 #include <iostream>
16 #include <cstdlib>
18 #include "erssar/ErsSarRecord.h"
19 
20 namespace ossimplugins
21 {
22 
29 {
30 public:
35 
39  virtual ~ErsSarDataSetSummary();
40 
44  friend std::ostream& operator<<(std::ostream& os, const ErsSarDataSetSummary& data);
45 
50 
55 
60 
65  {
66  return new ErsSarDataSetSummary();
67  };
68 
73  {
74  return new ErsSarDataSetSummary(*this);
75  };
76 
80  void Read(std::istream& is)
81  {
82  is >> *this;
83  };
84 
88  void Write(std::ostream& os)
89  {
90  os << *this;
91  };
92 
96  int get_seq_num() const
97  {
98  return _seq_num;
99  };
103  int get_sar_chn() const
104  {
105  return _sar_chn;
106  };
110  std::string get_scene_id() const
111  {
112  return _scene_id;
113  };
117  std::string get_scene_des() const
118  {
119  return _scene_des;
120  };
124  std::string get_inp_sctim() const
125  {
126  return _inp_sctim;
127  };
131  std::string get_asc_des() const
132  {
133  return _asc_des;
134  };
138  double get_pro_lat() const
139  {
140  return _pro_lat;
141  };
145  double get_pro_long() const
146  {
147  return _pro_long;
148  };
152  double get_pro_head() const
153  {
154  return _pro_head;
155  };
159  std::string get_ellip_des() const
160  {
161  return _ellip_des;
162  };
166  double get_ellip_maj() const
167  {
168  return _ellip_maj;
169  };
173  double get_ellip_min() const
174  {
175  return _ellip_min;
176  };
180  double get_earth_mass() const
181  {
182  return _earth_mass;
183  };
187  double get_grav_const() const
188  {
189  return _grav_const;
190  };
194  const double* get_ellip_j() const
195  {
196  return _ellip_j;
197  };
198 
202  double get_terrain_h() const
203  {
204  return _terrain_h;
205  };
209  int get_sc_lin() const
210  {
211  return _sc_lin;
212  };
216  int get_sc_pix() const
217  {
218  return _sc_pix;
219  };
223  double get_scene_len() const
224  {
225  return _scene_len;
226  };
230  double get_scene_wid() const
231  {
232  return _scene_wid;
233  };
234 
238  double get_nchn() const
239  {
240  return _nchn;
241  };
242 
246  std::string get_mission_id() const
247  {
248  return _mission_id;
249  };
253  std::string get_sensor_id() const
254  {
255  return _sensor_id;
256  };
260  std::string get_orbit_num() const
261  {
262  return _orbit_num;
263  };
267  double get_plat_lat() const
268  {
269  return _plat_lat;
270  };
274  double get_plat_long() const
275  {
276  return _plat_long;
277  };
281  double get_plat_head() const
282  {
283  return _plat_head;
284  };
288  double get_clock_ang() const
289  {
290  return _clock_ang;
291  };
295  double get_incident_ang() const
296  {
297  return _incident_ang;
298  };
299 
303  double get_wave_length() const
304  {
305  return _wave_length;
306  };
310  std::string get_motion_comp() const
311  {
312  return _motion_comp;
313  };
317  std::string get_pulse_code() const
318  {
319  return _pulse_code;
320  };
324  const double* get_ampl_coef() const
325  {
326  return _ampl_coef;
327  };
331  const double* get_phas_coef() const
332  {
333  return _phas_coef;
334  };
338  int get_chirp_ext_ind() const
339  {
340  return _chirp_ext_ind;
341  };
342 
346  double get_fr() const
347  {
348  return _fr;
349  };
353  double get_rng_gate() const
354  {
355  return _rng_gate;
356  };
360  double get_rng_length() const
361  {
362  return _rng_length;
363  };
367  std::string get_baseband_f() const
368  {
369  return _baseband_f;
370  };
374  std::string get_rngcmp_f() const
375  {
376  return _rngcmp_f;
377  };
381  double get_gn_polar() const
382  {
383  return _gn_polar;
384  };
388  double get_gn_cross() const
389  {
390  return _gn_cross;
391  };
395  int get_chn_bits() const
396  {
397  return _chn_bits;
398  };
402  std::string get_quant_desc() const
403  {
404  return _quant_desc;
405  };
409  double get_i_bias() const
410  {
411  return _i_bias;
412  };
416  double get_q_bias() const
417  {
418  return _q_bias;
419  };
423  double get_iq_ratio() const
424  {
425  return _iq_ratio;
426  };
427 
428 
432  double get_mech_sight() const
433  {
434  return _mech_sight;
435  };
436 
440  double get_fa() const
441  {
442  return _fa;
443  };
444 
448  std::string get_sat_bintim() const
449  {
450  return _sat_bintim;
451  };
455  std::string get_sat_clktim() const
456  {
457  return _sat_clktim;
458  };
462  std::string get_sat_clkinc() const
463  {
464  return _sat_clkinc;
465  };
466 
470  std::string get_fac_id() const
471  {
472  return _fac_id;
473  };
477  std::string get_sys_id() const
478  {
479  return _sys_id;
480  };
484  std::string get_ver_id() const
485  {
486  return _ver_id;
487  };
488 
492  std::string get_prod_type() const
493  {
494  return _prod_type;
495  };
499  std::string get_algor_id() const
500  {
501  return _algor_id;
502  };
506  double get_n_azilok() const
507  {
508  return _n_azilok;
509  };
513  double get_n_rnglok() const
514  {
515  return _n_rnglok;
516  };
520  double get_bnd_azilok() const
521  {
522  return _bnd_azilok;
523  };
527  double get_bnd_rnglok() const
528  {
529  return _bnd_rnglok;
530  };
534  double get_bnd_azi() const
535  {
536  return _bnd_azi;
537  };
541  double get_bnd_rng() const
542  {
543  return _bnd_rng;
544  };
548  std::string get_azi_weight() const
549  {
550  return _azi_weight;
551  };
555  std::string get_rng_weight() const
556  {
557  return _rng_weight;
558  };
562  std::string get_data_inpsrc() const
563  {
564  return _data_inpsrc;
565  };
569  double get_rng_res() const
570  {
571  return _rng_res;
572  };
576  double get_azi_res() const
577  {
578  return _azi_res;
579  };
583  const double* get_alt_dopcen() const
584  {
585  return _alt_dopcen;
586  };
587 
591  const double* get_crt_dopcen() const
592  {
593  return _crt_dopcen;
594  };
598  std::string get_time_dir_pix() const
599  {
600  return _time_dir_pix;
601  };
605  std::string get_time_dir_lin() const
606  {
607  return _time_dir_lin;
608  };
612  const double* get_alt_rate() const
613  {
614  return _alt_rate;
615  };
616 
620  const double* get_crt_rate() const
621  {
622  return _crt_rate;
623  };
624 
628  std::string get_line_cont() const
629  {
630  return _line_cont;
631  };
635  std::string get_clutter_lock() const
636  {
637  return _clutter_lock;
638  };
642  std::string get_auto_focus() const
643  {
644  return _auto_focus;
645  };
649  double get_line_spacing() const
650  {
651  return _line_spacing;
652  };
656  double get_pix_spacing() const
657  {
658  return _pix_spacing;
659  };
663  std::string get_rngcmp_desg() const
664  {
665  return _rngcmp_desg;
666  };
671  {
673  }
678  {
680  }
685  {
687  }
691  std::string get_zero_dop_az_time_f_pixel() const
692  {
694  }
698  std::string get_zero_dop_az_time_c_pixel() const
699  {
701  }
705  std::string get_zero_dop_az_time_l_pixel() const
706  {
708  }
709 
710 
711 protected:
715  int _seq_num;
719  int _sar_chn;
723  std::string _scene_id;
727  std::string _scene_des;
731  std::string _inp_sctim;
735  std::string _asc_des;
739  double _pro_lat;
743  double _pro_long;
747  double _pro_head;
751  std::string _ellip_des;
755  double _ellip_maj;
759  double _ellip_min;
763  double _earth_mass;
767  double _grav_const;
771  double _ellip_j[3];
772 
776  double _terrain_h;
780  int _sc_lin;
784  int _sc_pix;
788  double _scene_len;
792  double _scene_wid;
793 
797  double _nchn;
798 
802  std::string _mission_id;
806  std::string _sensor_id;
810  std::string _orbit_num;
814  double _plat_lat;
818  double _plat_long;
822  double _plat_head;
826  double _clock_ang;
831 
835  double _wave_length;
839  std::string _motion_comp;
843  std::string _pulse_code;
847  double _ampl_coef[5];
851  double _phas_coef[5];
856 
860  double _fr;
864  double _rng_gate;
868  double _rng_length;
872  std::string _baseband_f;
876  std::string _rngcmp_f;
880  double _gn_polar;
884  double _gn_cross;
892  std::string _quant_desc;
896  double _i_bias;
900  double _q_bias;
904  double _iq_ratio;
908  double _mech_sight;
912  double _fa;
916  std::string _sat_bintim;
920  std::string _sat_clktim;
924  std::string _sat_clkinc;
925 
929  std::string _fac_id;
933  std::string _sys_id;
937  std::string _ver_id;
941  std::string _prod_type;
945  std::string _algor_id;
949  double _n_azilok;
953  double _n_rnglok;
957  double _bnd_azilok;
961  double _bnd_rnglok;
965  double _bnd_azi;
969  double _bnd_rng;
973  std::string _azi_weight;
977  std::string _rng_weight;
981  std::string _data_inpsrc;
985  double _rng_res;
989  double _azi_res;
993  double _alt_dopcen[3];
997  double _crt_dopcen[3];
1001  std::string _time_dir_pix;
1005  std::string _time_dir_lin;
1009  double _alt_rate[3];
1010 
1014  double _crt_rate[3];
1015 
1019  std::string _line_cont;
1023  std::string _clutter_lock;
1027  std::string _auto_focus;
1039  std::string _rngcmp_desg;
1064 
1065 private:
1066 
1067 };
1068 }
1069 
1070 #endif
std::string _scene_id
Scene identifier.
double get_pro_head() const
Processed scene centre headng.
double get_nchn() const
Number of SAR channels.
double _rng_length
Range pulse length.
std::string get_sensor_id() const
Sensor identifier.
double get_azi_res() const
Azimuth resolution, meter.
std::string get_sat_clktim() const
Satellite clock time.
double _ellip_min
Ellipsoid semi_minor axis, km.
double get_mech_sight() const
Mechanical boresight.
std::string _zero_dop_az_time_f_pixel
zero doppler azimut time (UTC) of first pixel
double _ellip_j[3]
Ellipsoid J2-4 parameters.
std::string get_ellip_des() const
Ellipsoid designator.
int get_chirp_ext_ind() const
Chirp extraction index.
std::string get_sat_clkinc() const
Satellite clock increment.
void Read(std::istream &is)
Read the class data from a stream.
double _zero_dop_range_time_l_pixel
zero doppler range time (two way) of last pixel
std::string _zero_dop_az_time_c_pixel
zero doppler azimut time (UTC) of mid pixel
std::string _ver_id
Processing version identifier.
double _bnd_azilok
Bandwidth per look in azimuth,Hz.
double get_plat_long() const
Platform geodetic longitude.
std::string _rngcmp_f
Range compressed flag.
This class is able to read the SAR leader data set summary record of the leader file.
double get_rng_gate() const
Range gate start time.
std::string _zero_dop_az_time_l_pixel
zero doppler azimut time (UTC) of last pixel
std::string get_rng_weight() const
Range weighting designator.
double get_scene_len() const
Scene length, km.
double _terrain_h
Average terrain height, km.
double _n_rnglok
Number of range looks.
double get_gn_polar() const
Like polarized gain.
std::string _baseband_f
Baseband conversion flag.
double get_ellip_min() const
Ellipsoid semi_minor axis, km.
std::string _quant_desc
Quantization descriptor.
std::string _sat_bintim
Satellite binary time.
double get_rng_length() const
Range pulse length.
double get_bnd_rnglok() const
Bandwidth per look in range,Hz.
double _alt_rate[3]
Along track Doppler rate term.
std::string get_sat_bintim() const
Satellite binary time.
int get_seq_num() const
Sequence number.
std::string get_clutter_lock() const
Clutter lock applied flag.
std::string _algor_id
Processing algorithm identifier.
double get_wave_length() const
Radar wave length.
const double * get_alt_rate() const
Along track Doppler rate term.
std::string _rng_weight
Range weighting designator.
std::string get_zero_dop_az_time_f_pixel() const
zero doppler azimut time (UTC) of first pixel
std::string _sat_clktim
Satellite clock time.
std::string get_prod_type() const
Product type specifier.
std::string get_inp_sctim() const
Input scene centre time.
double _azi_res
Azimuth resolution, meter.
std::string get_motion_comp() const
Motion compensation indicator.
double _alt_dopcen[3]
Along track Doppler frequency terms.
int _sar_chn
SAR channel indicator.
std::string _ellip_des
Ellipsoid designator.
std::string _mission_id
Mission identifier.
std::string _motion_comp
Motion compensation indicator.
double get_pro_long() const
Processed scene centre longitude.
double _crt_rate[3]
Cross track Doppler rate term.
const double * get_crt_rate() const
Cross track Doppler rate term.
ErsSarDataSetSummary & operator=(const ErsSarDataSetSummary &rhs)
Copy operator.
int get_sc_lin() const
Scene centre line number.
double get_plat_head() const
Platform heading.
double get_scene_wid() const
Scene width, km.
std::string get_zero_dop_az_time_l_pixel() const
zero doppler azimut time (UTC) of last pixel
double get_plat_lat() const
Platform geodetic latitude.
void Write(std::ostream &os)
Write the class to a stream.
std::string get_algor_id() const
Processing algorithm identifier.
std::string get_rngcmp_f() const
Range compressed flag.
std::string _clutter_lock
Clutter lock applied flag.
std::string _orbit_num
Orbit number.
std::string _line_cont
Line content indicator.
int get_chn_bits() const
Number of bits per channel.
std::string get_ver_id() const
Processing version identifier.
int get_sar_chn() const
SAR channel indicator.
std::string _azi_weight
Azimuth weighting designator.
std::string _asc_des
Ascending/descending.
std::string get_quant_desc() const
Quantization descriptor.
std::string get_orbit_num() const
Orbit number.
double get_n_azilok() const
Number of azimuth looks.
std::string get_asc_des() const
Ascending/descending.
std::string get_fac_id() const
Processing facility identifier.
double get_ellip_maj() const
Ellipsoid semi-major axis, km.
double get_iq_ratio() const
I/Q channel ratio.
double _ellip_maj
Ellipsoid semi-major axis, km.
double get_grav_const() const
Gravitational constant.
const double * get_alt_dopcen() const
Along track Doppler frequency terms.
const double * get_phas_coef() const
Range phase coefficients.
std::string _scene_des
Scene designator.
std::string _auto_focus
Auto-focus applied flag.
double get_zero_dop_range_time_c_pixel() const
zero doppler range time (two way) of mid pixel
double _rng_gate
Range gate start time.
double get_q_bias() const
Q channel DC bias.
double get_bnd_azi() const
Total azimuth look bandwidth.
double _nchn
Number of SAR channels.
double _bnd_rnglok
Bandwidth per look in range,Hz.
double _mech_sight
Mechanical boresight.
double _clock_ang
Sensor clock angle.
double _ampl_coef[5]
Range chirp coefficients.
std::string get_zero_dop_az_time_c_pixel() const
zero doppler azimut time (UTC) of mid pixel
double get_pro_lat() const
Processed scene centre latitude.
std::string get_baseband_f() const
Baseband conversion flag.
int _chn_bits
Number of bits per channel.
double get_incident_ang() const
Incidence angle.
double get_fr() const
Range sampling rate.
std::string _data_inpsrc
Data input source.
double get_earth_mass() const
Earth&#39;s mass.
double get_line_spacing() const
Line spacing, meters.
double _pix_spacing
Pixel spacing, meters.
double get_gn_cross() const
Cross polarized gain.
double _gn_polar
Like polarized gain.
std::string _pulse_code
Range pulse code specifier.
ErsSarRecord * Instanciate()
This function is able to create a new instance of the class.
double get_i_bias() const
I channel DC bias.
int _sc_lin
Scene centre line number.
double _rng_res
Range resolution, meter.
This class is the base class of all the record classes.
Definition: ErsSarRecord.h:27
double _zero_dop_range_time_c_pixel
zero doppler range time (two way) of mid pixel
double get_n_rnglok() const
Number of range looks.
std::string _sensor_id
Sensor identifier.
double _line_spacing
Line spacing, meters.
std::string get_time_dir_lin() const
Line time direction indicator.
double _bnd_azi
Total azimuth look bandwidth.
std::string _sys_id
Processing system identifier.
double _crt_dopcen[3]
Cross track Doppler frequency terms.
double get_clock_ang() const
Sensor clock angle.
std::string get_time_dir_pix() const
Pixel time direction indicator.
double get_bnd_rng() const
Total range look bandwidth.
std::string _fac_id
Processing facility identifier.
double get_zero_dop_range_time_l_pixel() const
zero doppler range time (two way) of last pixel
int _chirp_ext_ind
Chirp extraction index.
std::basic_istream< char > istream
Base class for char input streams.
Definition: ossimIosFwd.h:20
double _zero_dop_range_time_f_pixel
zero doppler range time (two way) of first pixel
std::string get_auto_focus() const
Auto-focus applied flag.
double _pro_head
Processed scene centre headng.
std::string get_sys_id() const
Processing system identifier.
std::string _sat_clkinc
Satellite clock increment.
const double * get_ampl_coef() const
Range chirp coefficients.
double _n_azilok
Number of azimuth looks.
double _pro_long
Processed scene centre longitude.
int get_sc_pix() const
Scene centre pixel number.
std::string get_rngcmp_desg() const
Range compression designator.
double get_zero_dop_range_time_f_pixel() const
zero doppler range time (two way) of first pixel
double get_bnd_azilok() const
Bandwidth per look in azimuth,Hz.
double _pro_lat
Processed scene centre latitude.
double _plat_long
Platform geodetic longitude.
std::string _inp_sctim
Input scene centre time.
double get_pix_spacing() const
Pixel spacing, meters.
double get_rng_res() const
Range resolution, meter.
std::string _rngcmp_desg
Range compression designator.
std::string get_pulse_code() const
Range pulse code specifier.
double _bnd_rng
Total range look bandwidth.
std::string get_line_cont() const
Line content indicator.
std::string get_mission_id() const
Mission identifier.
double _plat_lat
Platform geodetic latitude.
const double * get_crt_dopcen() const
Cross track Doppler frequency terms.
friend std::istream & operator>>(std::istream &is, ErsSarDataSetSummary &data)
This function read a ErsSarDataSetSummary from a stream.
double _wave_length
Radar wave length.
double _phas_coef[5]
Range phase coefficients.
std::string _prod_type
Product type specifier.
friend std::ostream & operator<<(std::ostream &os, const ErsSarDataSetSummary &data)
This function write the ErsSarDataSetSummary in a stream.
double get_fa() const
Nominal PRF, Hz.
ErsSarRecord * Clone()
This function is able to create a new instance of the class initialised with the data of the calling ...
std::string _time_dir_pix
Pixel time direction indicator.
std::string get_data_inpsrc() const
Data input source.
std::string _time_dir_lin
Line time direction indicator.
std::basic_ostream< char > ostream
Base class for char output streams.
Definition: ossimIosFwd.h:23
const double * get_ellip_j() const
Ellipsoid J2-4 parameters.
std::string get_scene_id() const
Scene identifier.
std::string get_scene_des() const
Scene designator.
int _sc_pix
Scene centre pixel number.
double get_terrain_h() const
Average terrain height, km.
std::string get_azi_weight() const
Azimuth weighting designator.
double _grav_const
Gravitational constant.
double _gn_cross
Cross polarized gain.