OSSIM - Open Source Software Image Map  Version 1.9.0 (20180803)
PlatformPositionData.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 PlatformPositionData_h
13 #define PlatformPositionData_h
14 
15 #include <iostream>
18 
20 
21 namespace ossimplugins
22 {
28 {
29 public:
34 
39 
44 
52  friend std::ostream& operator<<(std::ostream& os, const PlatformPositionData& data);
53 
58 
63  {
64  return new PlatformPositionData();
65  };
66 
71  {
72  return new PlatformPositionData(*this);
73  };
74 
78  void Read(std::istream& is)
79  {
80  is>>*this;
81  };
82 
86  void Write(std::ostream& os)
87  {
88  os<<*this;
89  };
90 
94  std::string get_orbit_ele_desg()
95  {
96  return _orbit_ele_desg;
97  };
101  double* get_orbit_ele()
102  {
103  return _orbit_ele;
104  };
108  int get_ndata()
109  {
110  return _ndata;
111  };
115  int get_year()
116  {
117  return _year;
118  };
122  int get_month()
123  {
124  return _month;
125  };
129  int get_day()
130  {
131  return _day;
132  };
137  {
138  return _gmt_day;
139  };
143  double get_gmt_sec()
144  {
145  return _gmt_sec;
146  };
150  double get_data_int()
151  {
152  return _data_int;
153  };
157  std::string get_ref_coord()
158  {
159  return _ref_coord;
160  };
164  double get_hr_angle()
165  {
166  return _hr_angle;
167  };
171  double get_alt_poserr()
172  {
173  return _alt_poserr;
174  };
178  double get_crt_poserr()
179  {
180  return _crt_poserr;
181  };
185  double get_rad_poserr()
186  {
187  return _rad_poserr;
188  };
192  double get_alt_velerr()
193  {
194  return _alt_velerr;
195  };
199  double get_crt_velerr()
200  {
201  return _crt_velerr;
202  };
206  double get_rad_velerr()
207  {
208  return _rad_velerr;
209  };
214  {
215  return _pos_vect;
216  };
217 
218 protected:
222  std::string _orbit_ele_desg;
226  double _orbit_ele[6];
230  int _ndata;
234  int _year;
238  int _month;
242  int _day;
246  int _gmt_day;
250  double _gmt_sec;
254  double _data_int;
258  std::string _ref_coord;
262  double _hr_angle;
266  double _alt_poserr;
270  double _crt_poserr;
274  double _rad_poserr;
278  double _alt_velerr;
282  double _crt_velerr;
286  double _rad_velerr;
291 
292 private:
293 };
294 }
295 #endif
double _crt_velerr
Cross track velocity error
double get_rad_velerr()
Radial velocity error
This class is able to read a position vector record.
double _crt_poserr
Cross track position error
int get_ndata()
Number of data points
double get_data_int()
Data sampling interval
friend std::istream & operator>>(std::istream &is, PlatformPositionData &data)
This function reads a PlatformPositionData from a stream.
double _alt_poserr
Along track position error
double get_rad_poserr()
Radial position error
friend std::ostream & operator<<(std::ostream &os, const PlatformPositionData &data)
This function writes the PlatformPositionData in a stream.
This class is able to read a Platform position data record.
void Read(std::istream &is)
Reads the class data from a stream.
std::string _orbit_ele_desg
Orbital elements designator.
double _hr_angle
Greenwich mean hour angle
This class is the base class of all the record classes.
double _orbit_ele[6]
Orbital elements
double * get_orbit_ele()
Orbital elements
double _alt_velerr
Along track velocity error
RadarSatRecord * Clone()
This function is able to create a new instance of the class initialised with the data of the calling ...
RadarSatRecord * Instanciate()
This function is able to create a new instance of the class.
double get_crt_poserr()
Cross track position error
std::basic_istream< char > istream
Base class for char input streams.
Definition: ossimIosFwd.h:20
double get_alt_velerr()
Along track velocity error
std::string _ref_coord
Reference coordinate system
PlatformPositionData & operator=(const PlatformPositionData &rhs)
Copy operator.
double get_crt_velerr()
Cross track velocity error
double _data_int
Data sampling interval
double get_alt_poserr()
Along track position error
void Write(std::ostream &os)
Writes the class to a stream.
double get_hr_angle()
Greenwich mean hour angle
PositionVectorRecord _pos_vect[64]
Data point position/velocity
std::string get_orbit_ele_desg()
Orbital elements designator.
PositionVectorRecord * get_pos_vect()
Data point position/velocity
std::string get_ref_coord()
Reference coordinate system
int get_month()
Month of data point
std::basic_ostream< char > ostream
Base class for char output streams.
Definition: ossimIosFwd.h:23
double _rad_velerr
Radial velocity error
double _rad_poserr
Radial position error