OSSIM - Open Source Software Image Map  Version 1.9.0 (20180803)
mph.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 mph_h
13 #define mph_h
14 
15 #include <iostream>
17 
18 namespace ossimplugins
19 {
20 
25 class mph : public EnvisatAsarRecord
26 {
27 public:
31  mph();
32 
36  virtual ~mph();
37 
41  friend std::ostream& operator<<(std::ostream& os, const mph& data);
42 
46  friend std::istream& operator>>(std::istream& is, mph& data);
47 
51  mph(const mph& rhs);
52 
56  mph& operator=(const mph& rhs);
57 
62  {
63  return new mph();
64  };
65 
70  {
71  return new mph(*this);
72  };
73 
77  void Read(std::istream& is)
78  {
79  is>>*this;
80  };
81 
85  void Write(std::ostream& os)
86  {
87  os<<*this;
88  };
89 
93  std::string get_product_name()
94  {
95  return _product_name;
96  };
100  std::string get_product()
101  {
102  return _product;
103  };
107  std::string get_proc_stage_title()
108  {
109  return _proc_stage_title;
110  };
114  std::string get_proc_stage()
115  {
116  return _proc_stage;
117  };
121  std::string get_ref_doc_title()
122  {
123  return _ref_doc_title;
124  };
128  std::string get_ref_doc()
129  {
130  return _ref_doc;
131  };
135  std::string get_acq_stat_id_title()
136  {
137  return _acq_stat_id_title;
138  };
142  std::string get_acq_station()
143  {
144  return _acq_station;
145  };
149  std::string get_proc_center_title()
150  {
151  return _proc_center_title;
152  };
156  std::string get_proc_center()
157  {
158  return _proc_center;
159  };
163  std::string get_proc_time_title()
164  {
165  return _proc_time_title;
166  };
170  std::string get_proc_time()
171  {
172  return _proc_time;
173  };
178  {
179  return _soft_version_title;
180  };
184  std::string get_soft_version()
185  {
186  return _soft_version;
187  };
192  {
193  return _sensing_start_title;
194  };
198  std::string get_sensing_start()
199  {
200  return _sensing_start;
201  };
206  {
207  return _sensing_stop_title;
208  };
212  std::string get_sensing_stop()
213  {
214  return _sensing_stop;
215  };
219  std::string get_phase_title()
220  {
221  return _phase_title;
222  };
226  std::string get_phase()
227  {
228  return _phase;
229  };
233  std::string get_cycle_title()
234  {
235  return _cycle_title;
236  };
240  std::string get_cycle()
241  {
242  return _cycle;
243  };
248  {
249  return _relative_orbit_title;
250  };
254  std::string get_rel_orbit()
255  {
256  return _rel_orbit;
257  };
262  {
263  return _absolute_orbit_title;
264  };
268  std::string get_abs_orbit()
269  {
270  return _abs_orbit;
271  };
276  {
278  };
282  std::string get_state_vector_time()
283  {
284  return _state_vector_time;
285  };
289  std::string get_delta_ut1_title()
290  {
291  return _delta_ut1_title;
292  };
296  std::string get_delta_ut1()
297  {
298  return _delta_ut1;
299  };
303  std::string get_delta_ut1_units()
304  {
305  return _delta_ut1_units;
306  };
310  std::string get_x_position_title()
311  {
312  return _x_position_title;
313  };
317  std::string get_x_position()
318  {
319  return _x_position;
320  };
324  std::string get_x_position_units()
325  {
326  return _x_position_units;
327  };
331  std::string get_y_position_title()
332  {
333  return _y_position_title;
334  };
338  std::string get_y_position()
339  {
340  return _y_position;
341  };
345  std::string get_y_position_units()
346  {
347  return _y_position_units;
348  };
352  std::string get_z_position_title()
353  {
354  return _z_position_title;
355  };
359  std::string get_z_position()
360  {
361  return _z_position;
362  };
366  std::string get_z_position_units()
367  {
368  return _z_position_units;
369  };
373  std::string get_x_velocity_title()
374  {
375  return _x_velocity_title;
376  };
380  std::string get_x_velocity()
381  {
382  return _x_velocity;
383  };
387  std::string get_x_velocity_units()
388  {
389  return _x_velocity_units;
390  };
394  std::string get_y_velocity_title()
395  {
396  return _y_velocity_title;
397  };
401  std::string get_y_velocity()
402  {
403  return _y_velocity;
404  };
408  std::string get_y_velocity_units()
409  {
410  return _y_velocity_units;
411  };
415  std::string get_z_velocity_title()
416  {
417  return _z_velocity_title;
418  };
422  std::string get_z_velocity()
423  {
424  return _z_velocity;
425  };
429  std::string get_z_velocity_units()
430  {
431  return _z_velocity_units;
432  };
437  {
438  return _vector_source_title;
439  };
443  std::string get_vector_source()
444  {
445  return _vector_source;
446  };
450  std::string get_spare_4()
451  {
452  return _spare_4;
453  };
458  {
459  return _utc_sbt_time_title;
460  };
464  std::string get_utc_sbt_time()
465  {
466  return _utc_sbt_time;
467  };
472  {
473  return _sat_binary_time_title;
474  };
478  std::string get_sat_binary_time()
479  {
480  return _sat_binary_time;
481  };
485  std::string get_clock_step_title()
486  {
487  return _clock_step_title;
488  };
492  std::string get_clock_step()
493  {
494  return _clock_step;
495  };
499  std::string get_clock_step_units()
500  {
501  return _clock_step_units;
502  };
506  std::string get_leap_utc_title()
507  {
508  return _leap_utc_title;
509  };
513  std::string get_leap_utc()
514  {
515  return _leap_utc;
516  };
520  std::string get_leap_sign_title()
521  {
522  return _leap_sign_title;
523  };
527  std::string get_leap_sign()
528  {
529  return _leap_sign;
530  };
534  std::string get_leap_err_title()
535  {
536  return _leap_err_title;
537  };
541  std::string get_leap_err()
542  {
543  return _leap_err;
544  };
548  std::string get_product_err_title()
549  {
550  return _product_err_title;
551  };
555  std::string get_product_err()
556  {
557  return _product_err;
558  };
562  std::string get_total_size_title()
563  {
564  return _total_size_title;
565  };
569  std::string get_tot_size()
570  {
571  return _tot_size;
572  };
576  std::string get_total_size_units()
577  {
578  return _total_size_units;
579  };
583  std::string get_sph_size_title()
584  {
585  return _sph_size_title;
586  };
590  std::string get_sph_size()
591  {
592  return _sph_size;
593  };
597  std::string get_sph_size_units()
598  {
599  return _sph_size_units;
600  };
605  {
606  return _number_of_dsd_title;
607  };
612  {
613  return _num_dsd;
614  };
618  std::string get_size_of_dsd_title()
619  {
620  return _size_of_dsd_title;
621  };
626  {
627  return _dsd_size;
628  };
632  std::string get_size_of_dsd_units()
633  {
634  return _size_of_dsd_units;
635  };
640  {
642  };
647  {
648  return _num_data_sets;
649  };
653  bool is_valid()
654  {
655  if ((_product_name.compare("PRODUCT=") == 0) && (_number_of_dsd_title.compare("NUM_DSD=") == 0))
656  {
657  return true;
658  } else return false;
659  };
660 
661 
665  std::string _product_name;
669  std::string _product;
673  std::string _proc_stage_title;
677  std::string _proc_stage;
681  std::string _ref_doc_title;
685  std::string _ref_doc;
689  std::string _acq_stat_id_title;
693  std::string _acq_station;
697  std::string _proc_center_title;
701  std::string _proc_center;
705  std::string _proc_time_title;
709  std::string _proc_time;
713  std::string _soft_version_title;
717  std::string _soft_version;
721  std::string _sensing_start_title;
725  std::string _sensing_start;
729  std::string _sensing_stop_title;
733  std::string _sensing_stop;
737  std::string _phase_title;
741  std::string _phase;
745  std::string _cycle_title;
749  std::string _cycle;
757  std::string _rel_orbit;
765  std::string _abs_orbit;
773  std::string _state_vector_time;
777  std::string _delta_ut1_title;
781  std::string _delta_ut1;
785  std::string _delta_ut1_units;
789  std::string _x_position_title;
793  std::string _x_position;
797  std::string _x_position_units;
801  std::string _y_position_title;
805  std::string _y_position;
809  std::string _y_position_units;
813  std::string _z_position_title;
817  std::string _z_position;
821  std::string _z_position_units;
825  std::string _x_velocity_title;
829  std::string _x_velocity;
833  std::string _x_velocity_units;
837  std::string _y_velocity_title;
841  std::string _y_velocity;
845  std::string _y_velocity_units;
849  std::string _z_velocity_title;
853  std::string _z_velocity;
857  std::string _z_velocity_units;
861  std::string _vector_source_title;
865  std::string _vector_source;
869  std::string _spare_4;
873  std::string _utc_sbt_time_title;
877  std::string _utc_sbt_time;
885  std::string _sat_binary_time;
889  std::string _clock_step_title;
893  std::string _clock_step;
897  std::string _clock_step_units;
901  std::string _leap_utc_title;
905  std::string _leap_utc;
909  std::string _leap_sign_title;
913  std::string _leap_sign;
917  std::string _leap_err_title;
921  std::string _leap_err;
925  std::string _product_err_title;
929  std::string _product_err;
933  std::string _total_size_title;
937  std::string _tot_size;
941  std::string _total_size_units;
945  std::string _sph_size_title;
949  std::string _sph_size;
953  std::string _sph_size_units;
957  std::string _number_of_dsd_title;
961  int _num_dsd;
965  std::string _size_of_dsd_title;
973  std::string _size_of_dsd_units;
982 
983 private:
984 
985 };
986 }
987 #endif
988 
989 
std::string get_product()
product
Definition: mph.h:100
std::string _acq_station
acq_station
Definition: mph.h:693
std::string get_product_err()
product_err
Definition: mph.h:555
std::string get_acq_stat_id_title()
acq_stat_id_title
Definition: mph.h:135
std::string _clock_step_title
clock_step_title
Definition: mph.h:889
std::string _x_velocity
x_velocity
Definition: mph.h:829
std::string _leap_utc_title
leap_utc_title
Definition: mph.h:901
std::string get_x_velocity()
x_velocity
Definition: mph.h:380
std::string _sensing_start
sensing_start
Definition: mph.h:725
std::string get_ref_doc_title()
ref_doc_title
Definition: mph.h:121
std::string get_z_velocity_units()
z_velocity_units
Definition: mph.h:429
std::string get_sph_size_title()
sph_size_title
Definition: mph.h:583
std::string get_phase()
phase
Definition: mph.h:226
std::string _sat_binary_time_title
sat_binary_time_title
Definition: mph.h:881
std::string _sensing_stop
sensing_stop
Definition: mph.h:733
std::string _z_position_title
z_position_title
Definition: mph.h:813
friend std::ostream & operator<<(std::ostream &os, const mph &data)
This function write the mph in a stream.
Definition: mph.cpp:24
std::string get_leap_sign()
leap_sign
Definition: mph.h:527
std::string get_z_velocity()
z_velocity
Definition: mph.h:422
std::string get_proc_stage_title()
proc_stage_title
Definition: mph.h:107
std::string _absolute_orbit_title
absolute_orbit_title
Definition: mph.h:761
std::string get_acq_station()
acq_station
Definition: mph.h:142
std::string get_number_of_dsd_title()
number_of_dsd_title
Definition: mph.h:604
std::string get_absolute_orbit_title()
absolute_orbit_title
Definition: mph.h:261
std::string get_state_vector_time()
state_vector_time
Definition: mph.h:282
std::string _total_size_units
total_size_units
Definition: mph.h:941
std::string _proc_time_title
proc_time_title
Definition: mph.h:705
std::string get_total_size_units()
total_size_units
Definition: mph.h:576
std::string get_cycle()
cycle
Definition: mph.h:240
std::string get_y_position_units()
y_position_units
Definition: mph.h:345
int get_num_data_sets()
num_data_sets
Definition: mph.h:646
std::string _y_position_units
y_position_units
Definition: mph.h:809
std::string _proc_time
proc_time
Definition: mph.h:709
std::string _total_size_title
total_size_title
Definition: mph.h:933
std::string _sat_binary_time
sat_binary_time
Definition: mph.h:885
std::string _size_of_dsd_units
size_of_dsd_units
Definition: mph.h:973
std::string _product
product
Definition: mph.h:669
std::string _x_velocity_units
x_velocity_units
Definition: mph.h:833
std::string _state_vector_time
state_vector_time
Definition: mph.h:773
std::string get_soft_version_title()
soft_version_title
Definition: mph.h:177
mph & operator=(const mph &rhs)
Copy operator.
Definition: mph.cpp:734
std::string get_leap_utc()
leap_utc
Definition: mph.h:513
std::string get_x_position()
x_position
Definition: mph.h:317
std::string _tot_size
tot_size
Definition: mph.h:937
mph()
Constructor.
Definition: mph.cpp:16
std::string get_utc_sbt_time()
utc_sbt_time
Definition: mph.h:464
std::string get_z_velocity_title()
z_velocity_title
Definition: mph.h:415
std::string _z_velocity_title
z_velocity_title
Definition: mph.h:849
std::string get_z_position_title()
z_position_title
Definition: mph.h:352
std::string _product_err
product_err
Definition: mph.h:929
std::string get_delta_ut1_units()
delta_ut1_units
Definition: mph.h:303
std::string get_sensing_stop_title()
sensing_stop_title
Definition: mph.h:205
std::string _z_velocity
z_velocity
Definition: mph.h:853
std::string _number_of_dsd_title
number_of_dsd_title
Definition: mph.h:957
std::string get_size_of_dsd_title()
size_of_dsd_title
Definition: mph.h:618
std::string _leap_err
leap_err
Definition: mph.h:921
std::string get_rel_orbit()
rel_orbit
Definition: mph.h:254
std::string _sph_size
sph_size
Definition: mph.h:949
std::string _spare_4
spare_4
Definition: mph.h:869
std::string _x_position_title
x_position_title
Definition: mph.h:789
std::string get_product_name()
product_name
Definition: mph.h:93
std::string get_clock_step_units()
clock_step_units
Definition: mph.h:499
std::string _clock_step
clock_step
Definition: mph.h:893
std::string get_leap_utc_title()
leap_utc_title
Definition: mph.h:506
std::string get_vector_source_title()
vector_source_title
Definition: mph.h:436
std::string _y_velocity_title
y_velocity_title
Definition: mph.h:837
std::string _leap_err_title
leap_err_title
Definition: mph.h:917
std::string _proc_center
proc_center
Definition: mph.h:701
std::string _number_of_ds_att_title
number_of_ds_att_title
Definition: mph.h:977
std::string _y_position_title
y_position_title
Definition: mph.h:801
std::string _sph_size_units
sph_size_units
Definition: mph.h:953
int get_num_dsd()
num_dsd
Definition: mph.h:611
std::string _phase_title
phase_title
Definition: mph.h:737
std::string get_y_position()
y_position
Definition: mph.h:338
std::string _sph_size_title
sph_size_title
Definition: mph.h:945
std::string _x_position_units
x_position_units
Definition: mph.h:797
int _num_dsd
num_dsd
Definition: mph.h:961
std::string get_clock_step()
clock_step
Definition: mph.h:492
std::string get_spare_4()
spare_4
Definition: mph.h:450
std::string get_soft_version()
soft_version
Definition: mph.h:184
std::string get_sensing_start()
sensing_start
Definition: mph.h:198
std::string get_proc_time()
proc_time
Definition: mph.h:170
std::string _leap_utc
leap_utc
Definition: mph.h:905
std::string _x_velocity_title
x_velocity_title
Definition: mph.h:825
std::string get_abs_orbit()
abs_orbit
Definition: mph.h:268
std::string _sensing_start_title
sensing_start_title
Definition: mph.h:721
std::string _proc_stage_title
proc_stage_title
Definition: mph.h:673
std::string get_delta_ut1_title()
delta_ut1_title
Definition: mph.h:289
std::string get_size_of_dsd_units()
size_of_dsd_units
Definition: mph.h:632
std::string get_sat_binary_time_title()
sat_binary_time_title
Definition: mph.h:471
std::string get_proc_stage()
proc_stage
Definition: mph.h:114
std::string _relative_orbit_title
relative_orbit_title
Definition: mph.h:753
std::string _proc_center_title
proc_center_title
Definition: mph.h:697
std::string _delta_ut1_units
delta_ut1_units
Definition: mph.h:785
std::string _z_position
z_position
Definition: mph.h:817
std::string _cycle_title
cycle_title
Definition: mph.h:745
std::string _leap_sign
leap_sign
Definition: mph.h:913
std::string get_product_err_title()
product_err_title
Definition: mph.h:548
std::string get_vector_source()
vector_source
Definition: mph.h:443
std::string get_leap_sign_title()
leap_sign_title
Definition: mph.h:520
std::string get_x_position_units()
x_position_units
Definition: mph.h:324
int _dsd_size
dsd_size
Definition: mph.h:969
int get_dsd_size()
dsd_size
Definition: mph.h:625
std::string get_proc_center_title()
proc_center_title
Definition: mph.h:149
std::string get_y_velocity()
y_velocity
Definition: mph.h:401
std::string _soft_version_title
soft_version_title
Definition: mph.h:713
std::string _abs_orbit
abs_orbit
Definition: mph.h:765
std::string get_sph_size_units()
sph_size_units
Definition: mph.h:597
std::string get_number_of_ds_att_title()
number_of_ds_att_title
Definition: mph.h:639
std::string get_delta_ut1()
delta_ut1
Definition: mph.h:296
std::string _delta_ut1
delta_ut1
Definition: mph.h:781
std::string _state_vector_time_title
state_vector_time_title
Definition: mph.h:769
This class is able to read the ASAR mph record of the leader file.
Definition: mph.h:25
std::string get_proc_time_title()
proc_time_title
Definition: mph.h:163
std::string _product_name
product_name
Definition: mph.h:659
std::string get_cycle_title()
cycle_title
Definition: mph.h:233
std::string _y_velocity
y_velocity
Definition: mph.h:841
std::string _soft_version
soft_version
Definition: mph.h:717
std::string _leap_sign_title
leap_sign_title
Definition: mph.h:909
std::string get_clock_step_title()
clock_step_title
Definition: mph.h:485
std::string get_y_velocity_units()
y_velocity_units
Definition: mph.h:408
std::string get_relative_orbit_title()
relative_orbit_title
Definition: mph.h:247
int _num_data_sets
num_data_sets
Definition: mph.h:981
bool is_valid()
Check mph validity.
Definition: mph.h:653
std::string get_state_vector_time_title()
state_vector_time_title
Definition: mph.h:275
std::string get_y_velocity_title()
y_velocity_title
Definition: mph.h:394
std::string get_y_position_title()
y_position_title
Definition: mph.h:331
std::string _cycle
cycle
Definition: mph.h:749
std::string get_leap_err_title()
leap_err_title
Definition: mph.h:534
std::basic_istream< char > istream
Base class for char input streams.
Definition: ossimIosFwd.h:20
std::string get_x_velocity_title()
x_velocity_title
Definition: mph.h:373
std::string _product_err_title
product_err_title
Definition: mph.h:925
std::string get_tot_size()
tot_size
Definition: mph.h:569
std::string _z_velocity_units
z_velocity_units
Definition: mph.h:857
std::string _size_of_dsd_title
size_of_dsd_title
Definition: mph.h:965
std::string get_leap_err()
leap_err
Definition: mph.h:541
std::string get_z_position_units()
z_position_units
Definition: mph.h:366
std::string _y_velocity_units
y_velocity_units
Definition: mph.h:845
std::string _vector_source_title
vector_source_title
Definition: mph.h:861
void Read(std::istream &is)
Read the class data from a stream.
Definition: mph.h:77
std::string _delta_ut1_title
delta_ut1_title
Definition: mph.h:777
std::string get_sensing_start_title()
sensing_start_title
Definition: mph.h:191
std::string _z_position_units
z_position_units
Definition: mph.h:821
std::string _clock_step_units
clock_step_units
Definition: mph.h:897
std::string get_z_position()
z_position
Definition: mph.h:359
This class is the base class of all the Envisat ASAR record classes.
std::string _sensing_stop_title
sensing_stop_title
Definition: mph.h:729
EnvisatAsarRecord * Clone()
This function is able to create a new instance of the class initialised with the data of the calling ...
Definition: mph.h:69
std::string _ref_doc_title
ref_doc_title
Definition: mph.h:681
std::string _acq_stat_id_title
acq_stat_id_title
Definition: mph.h:689
std::string get_utc_sbt_time_title()
utc_sbt_time_title
Definition: mph.h:457
std::string get_ref_doc()
ref_doc
Definition: mph.h:128
virtual ~mph()
Destructor.
Definition: mph.cpp:20
std::string _x_position
x_position
Definition: mph.h:793
std::string _utc_sbt_time_title
utc_sbt_time_title
Definition: mph.h:873
std::string _y_position
y_position
Definition: mph.h:805
std::string _utc_sbt_time
utc_sbt_time
Definition: mph.h:877
std::string get_x_velocity_units()
x_velocity_units
Definition: mph.h:387
std::string get_total_size_title()
total_size_title
Definition: mph.h:562
std::string _proc_stage
proc_stage
Definition: mph.h:677
std::string _vector_source
vector_source
Definition: mph.h:865
std::string get_phase_title()
phase_title
Definition: mph.h:219
std::string get_sph_size()
sph_size
Definition: mph.h:590
std::string get_proc_center()
proc_center
Definition: mph.h:156
std::string get_sat_binary_time()
sat_binary_time
Definition: mph.h:478
EnvisatAsarRecord * Instanciate()
This function is able to create a new instance of the class.
Definition: mph.h:61
std::string _phase
phase
Definition: mph.h:741
std::string _ref_doc
ref_doc
Definition: mph.h:685
std::string get_sensing_stop()
sensing_stop
Definition: mph.h:212
std::basic_ostream< char > ostream
Base class for char output streams.
Definition: ossimIosFwd.h:23
void Write(std::ostream &os)
Write the class to a stream.
Definition: mph.h:85
friend std::istream & operator>>(std::istream &is, mph &data)
This function read a mph from a stream.
Definition: mph.cpp:190
std::string _rel_orbit
rel_orbit
Definition: mph.h:757
std::string get_x_position_title()
x_position_title
Definition: mph.h:310