OSSIM - Open Source Software Image Map  Version 1.9.0 (20180803)
DataQuality.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 DataQuality_h
13 #define DataQuality_h
14 
15 #include <iostream>
16 
19 
21 #include "MisregistrationRecord.h"
22 
23 namespace ossimplugins
24 {
30 {
31 public:
35  DataQuality();
36 
40  virtual ~DataQuality();
41 
45  DataQuality(const DataQuality& rhs);
46 
50  DataQuality& operator=(const DataQuality& rhs);
54  friend std::ostream& operator<<(std::ostream& os, const DataQuality& data);
55 
59  friend std::istream& operator>>(std::istream& is, DataQuality& data);
60 
65  {
66  return new DataQuality();
67  };
68 
73  {
74  return new DataQuality(*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 
97  {
98  return _rec_seq;
99  };
103  std::string get_sar_chn()
104  {
105  return _sar_chn;
106  };
110  std::string get_cali_date()
111  {
112  return _cali_date;
113  };
117  int get_nchn()
118  {
119  return _nchn;
120  };
124  double get_islr()
125  {
126  return _islr;
127  };
131  double get_pslr()
132  {
133  return _pslr;
134  };
138  double get_azi_ambig()
139  {
140  return _azi_ambig;
141  };
145  double get_rng_ambig()
146  {
147  return _rng_ambig;
148  };
152  double get_snr()
153  {
154  return _snr;
155  };
159  double get_ber()
160  {
161  return _ber;
162  };
166  double get_rng_res()
167  {
168  return _rng_res;
169  };
173  double get_azi_res()
174  {
175  return _azi_res;
176  };
180  double get_rad_res()
181  {
182  return _rad_res;
183  };
187  double get_dyn_rng()
188  {
189  return _dyn_rng;
190  };
194  double get_rad_unc_db()
195  {
196  return _rad_unc_db;
197  };
202  {
203  return _rad_unc_deg;
204  };
209  {
210  return _rad_unc;
211  };
215  double get_alt_locerr()
216  {
217  return _alt_locerr;
218  };
222  double get_crt_locerr()
223  {
224  return _crt_locerr;
225  };
229  double get_alt_scale()
230  {
231  return _alt_scale;
232  };
236  double get_crt_scale()
237  {
238  return _crt_scale;
239  };
243  double get_dis_skew()
244  {
245  return _dis_skew;
246  };
250  double get_ori_err()
251  {
252  return _ori_err;
253  };
258  {
259  return _misreg;
260  };
264  double get_nesz()
265  {
266  return _nesz;
267  };
271  double get_enl()
272  {
273  return _enl;
274  };
278  std::string get_tb_update()
279  {
280  return _tb_update;
281  };
282 
283 
284 protected:
285 
289  int _rec_seq;
293  std::string _sar_chn;
297  std::string _cali_date;
301  int _nchn;
305  double _islr;
309  double _pslr;
313  double _azi_ambig;
317  double _rng_ambig;
321  double _snr;
325  double _ber;
329  double _rng_res;
333  double _azi_res;
337  double _rad_res;
341  double _dyn_rng;
345  double _rad_unc_db;
349  double _rad_unc_deg;
357  double _alt_locerr;
361  double _crt_locerr;
365  double _alt_scale;
369  double _crt_scale;
373  double _dis_skew;
377  double _ori_err;
385  double _nesz;
389  double _enl;
393  std::string _tb_update;
394 
395 private:
396 
397 
398 };
399 }
400 #endif
double _crt_locerr
Nominal cross track location error
Definition: DataQuality.h:361
RadiometryUncertaintyRecord * get_rad_unc()
Radiometric data quality.
Definition: DataQuality.h:208
std::string get_sar_chn()
SAR channel indicator.
Definition: DataQuality.h:103
double get_crt_scale()
Nominal cross track distortion scale
Definition: DataQuality.h:236
double _islr
Nominal integrated side lobe ratio
Definition: DataQuality.h:305
RadarSatRecord * Instanciate()
This function is able to create a new instance of the class.
Definition: DataQuality.h:64
std::string _sar_chn
SAR channel indicator.
Definition: DataQuality.h:293
DataQuality & operator=(const DataQuality &rhs)
Copy operator.
double get_alt_locerr()
Nominal along track location error
Definition: DataQuality.h:215
double _ori_err
Nominal Scene orientation error
Definition: DataQuality.h:377
double get_rad_unc_db()
Nominal radiometric uncertainty,dB
Definition: DataQuality.h:194
This class is able to read a data quality record.
Definition: DataQuality.h:29
double get_dyn_rng()
Instantaneous dynamic range
Definition: DataQuality.h:187
double _alt_locerr
Nominal along track location error
Definition: DataQuality.h:357
double _rng_ambig
Nominal range ambiguity
Definition: DataQuality.h:317
double get_snr()
Nominal signal to noise ratio
Definition: DataQuality.h:152
int get_rec_seq()
Record sequence number.
Definition: DataQuality.h:96
double _crt_scale
Nominal cross track distortion scale
Definition: DataQuality.h:369
double _dyn_rng
Instantaneous dynamic range
Definition: DataQuality.h:341
double get_enl()
Nominal equivalent number of looks
Definition: DataQuality.h:271
double get_azi_ambig()
Nominal azimuth ambiguity
Definition: DataQuality.h:138
double _azi_res
Nominal azimuth resolution,meter
Definition: DataQuality.h:333
double _rad_unc_db
Nominal radiometric uncertainty,dB
Definition: DataQuality.h:345
double get_islr()
Nominal integrated side lobe ratio
Definition: DataQuality.h:124
double get_azi_res()
Nominal azimuth resolution,meter
Definition: DataQuality.h:173
double _rng_res
Nominal slant range resolution
Definition: DataQuality.h:329
double _pslr
Nominal peak side lobe ratio
Definition: DataQuality.h:309
This class is the base class of all the record classes.
std::string _cali_date
Calibration update date
Definition: DataQuality.h:297
friend std::ostream & operator<<(std::ostream &os, const DataQuality &data)
This function writes the DataQuality in a stream.
Definition: DataQuality.cpp:24
double _nesz
Nominal noise equivalent sigma zero
Definition: DataQuality.h:385
virtual ~DataQuality()
Destructor.
Definition: DataQuality.cpp:20
MisregistrationRecord * get_misreg()
Misregistration error.
Definition: DataQuality.h:257
double get_dis_skew()
Nominal distortion skew
Definition: DataQuality.h:243
void Read(std::istream &is)
Reads the class data from a stream.
Definition: DataQuality.h:80
double _azi_ambig
Nominal azimuth ambiguity
Definition: DataQuality.h:313
double _ber
Nominal bit error rate
Definition: DataQuality.h:325
double _alt_scale
Nominal along track distortion scale
Definition: DataQuality.h:365
double get_alt_scale()
Nominal along track distortion scale
Definition: DataQuality.h:229
std::string _tb_update
Default parameters table update date
Definition: DataQuality.h:393
double _rad_res
Nominal radiometric resolution,dB
Definition: DataQuality.h:337
double _rad_unc_deg
Nominal Radiometric uncertainty,deg
Definition: DataQuality.h:349
This class is able to read a misregistration record.
DataQuality()
Constructor.
Definition: DataQuality.cpp:16
std::basic_istream< char > istream
Base class for char input streams.
Definition: ossimIosFwd.h:20
double get_ori_err()
Nominal Scene orientation error
Definition: DataQuality.h:250
double get_crt_locerr()
Nominal cross track location error
Definition: DataQuality.h:222
void Write(std::ostream &os)
Writes the class to a stream.
Definition: DataQuality.h:88
int get_nchn()
Number of channels
Definition: DataQuality.h:117
double get_ber()
Nominal bit error rate
Definition: DataQuality.h:159
double _enl
Nominal equivalent number of looks
Definition: DataQuality.h:389
friend std::istream & operator>>(std::istream &is, DataQuality &data)
This function reads a DataQuality from a stream.
Definition: DataQuality.cpp:91
double get_pslr()
Nominal peak side lobe ratio
Definition: DataQuality.h:131
double get_rng_res()
Nominal slant range resolution
Definition: DataQuality.h:166
This class is able to read a radiometry uncertainty record.
std::string get_tb_update()
Default parameters table update date
Definition: DataQuality.h:278
double _snr
Nominal signal to noise ratio
Definition: DataQuality.h:321
double get_rad_unc_deg()
Nominal Radiometric uncertainty,deg
Definition: DataQuality.h:201
double get_rng_ambig()
Nominal range ambiguity
Definition: DataQuality.h:145
double _dis_skew
Nominal distortion skew
Definition: DataQuality.h:373
int _rec_seq
Record sequence number.
Definition: DataQuality.h:281
std::string get_cali_date()
Calibration update date
Definition: DataQuality.h:110
RadiometryUncertaintyRecord _rad_unc[16]
Radiometric data quality.
Definition: DataQuality.h:353
int _nchn
Number of channels
Definition: DataQuality.h:301
std::basic_ostream< char > ostream
Base class for char output streams.
Definition: ossimIosFwd.h:23
MisregistrationRecord _misreg[16]
Misregistration error.
Definition: DataQuality.h:381
RadarSatRecord * Clone()
This function is able to create a new instance of the class initialised with the data of the calling ...
Definition: DataQuality.h:72
double get_rad_res()
Nominal radiometric resolution,dB
Definition: DataQuality.h:180
double get_nesz()
Nominal noise equivalent sigma zero
Definition: DataQuality.h:264