OSSIM - Open Source Software Image Map  Version 1.9.0 (20180803)
ossimEnvisatAsarModel.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 ossimEnvisatAsarModel_H
13 #define ossimEnvisatAsarModel_H
14 
15 #include <otb/JSDDateTime.h>
18 #include <ossim/base/ossimIpt.h>
20 #include <ossim/base/ossimGpt.h>
21 #include <ossim/base/ossimDpt.h>
23 
24 #include <iostream>
25 
26 namespace ossimplugins
27 {
28 
29 
30 class PlatformPosition;
31 class SensorParams;
32 class RefPoint;
38 {
39 public:
44 
48  virtual ~ossimEnvisatAsarModel();
49 
54  virtual ossimString getClassName() const;
55 
59  virtual ossimObject* dup() const;
60 
65  virtual double getSlantRangeFromGeoreferenced(double col) const;
66 
74  bool open(const ossimFilename& file);
75 
82  virtual bool saveState(ossimKeywordlist& kwl,
83  const char* prefix=0) const;
84 
90  virtual bool loadState (const ossimKeywordlist &kwl, const char *prefix=0);
91 
96  virtual std::ostream& print(std::ostream& out) const;
97 
98 protected:
99 
103  int _n_srgr;
107  std::vector< std::vector<double> > _srgr_coefset;
111  std::vector<JSDDateTime> _srgr_update;
116 
117 private:
118  virtual bool InitPlatformPosition(const ossimKeywordlist &kwl, const char *prefix);
119  virtual bool InitSensorParams(const ossimKeywordlist &kwl, const char *prefix);
120  virtual bool InitRefPoint(const ossimKeywordlist &kwl, const char *prefix);
124  virtual bool InitSRGR(const ossimKeywordlist &kwl, const char *prefix);
128  std::vector<double> FindSRGRSetNumber(JSDDateTime date) const;
129  TYPE_DATA
130 
135 
136 };
137 }
138 
139 #endif
virtual ossimString getClassName() const
Method to return the class name.
virtual bool InitSRGR(const ossimKeywordlist &kwl, const char *prefix)
Initializes the Slant Range for each Ground Range data sets : _n_srgr,_srgr_coefset,_srgr_update,_pixel_spacing,_isProductGeoreferenced.
virtual bool saveState(ossimKeywordlist &kwl, const char *prefix=0) const
Method to save object state to a keyword list.
Represents serializable keyword/value map.
virtual std::ostream & print(std::ostream &out) const
std::vector< double > FindSRGRSetNumber(JSDDateTime date) const
Finds the SRGR data set which update time is the closest to the center scene time.
virtual double getSlantRangeFromGeoreferenced(double col) const
This function associates an image column number to a slant range when the image is georeferenced (gro...
This class allows for direct localisation and indirect localisation using the geometric model of SAR ...
int _n_srgr
Slant Range to Ground Range (SRGR) number of coefficients sets.
#define TYPE_DATA
Definition: ossimRtti.h:339
virtual bool loadState(const ossimKeywordlist &kwl, const char *prefix=0)
Method to the load (recreate) the state of the object from a keyword list.
bool open(const ossimFilename &file)
Method to intantial model from a file.
This class is able to read the Envisat file structure.
TYPE_DATA EnvisatAsarData * _EnvisatAsarData
List of metadata contained in the Data file.
std::vector< std::vector< double > > _srgr_coefset
SRGR coefficient sets.
virtual bool InitRefPoint(const ossimKeywordlist &kwl, const char *prefix)
Initializes the Reference Point from a projection keywordlist.
This class is able to direct localisation and indirect localisation using the EnvisatAsar sensor mode...
virtual bool InitSensorParams(const ossimKeywordlist &kwl, const char *prefix)
Initializes the Sensor Params from a projection keywordlist.
std::vector< JSDDateTime > _srgr_update
SRGR coefficient sets update times.
virtual bool InitPlatformPosition(const ossimKeywordlist &kwl, const char *prefix)
Initializes the Platform Position from a projection keywordlist.
virtual ossimObject * dup() const
Returns pointer to a new instance, copy of this.
This class represents a date.
Definition: JSDDateTime.h:30
std::basic_ostream< char > ostream
Base class for char output streams.
Definition: ossimIosFwd.h:23