Skip to content
Snippets Groups Projects
Commit 2dafd423 authored by Rashad Kanavath's avatar Rashad Kanavath
Browse files

ENH: read acquistion date and production date from RS2

parent a94e76f5
No related branches found
No related tags found
No related merge requests found
...@@ -465,7 +465,7 @@ bool ossimRadarSat2ProductDoc::initGsd(const ossimXmlDocument* xdoc, ...@@ -465,7 +465,7 @@ bool ossimRadarSat2ProductDoc::initGsd(const ossimXmlDocument* xdoc,
ossimString s; ossimString s;
if ( getSampledPixelSpacing(xdoc, s) ) if ( getSampledPixelSpacing(xdoc, s) )
{ {
gsd.x = s.toFloat64(); gsd.x = ossimString::toFloat64(s);
} }
else else
{ {
...@@ -473,7 +473,7 @@ bool ossimRadarSat2ProductDoc::initGsd(const ossimXmlDocument* xdoc, ...@@ -473,7 +473,7 @@ bool ossimRadarSat2ProductDoc::initGsd(const ossimXmlDocument* xdoc,
} }
if ( getSampledLineSpacing(xdoc, s) ) if ( getSampledLineSpacing(xdoc, s) )
{ {
gsd.y = s.toFloat64(s); gsd.y = ossimString::toFloat64(s);
} }
else else
{ {
...@@ -496,6 +496,20 @@ bool ossimRadarSat2ProductDoc::initGsd(const ossimXmlDocument* xdoc, ...@@ -496,6 +496,20 @@ bool ossimRadarSat2ProductDoc::initGsd(const ossimXmlDocument* xdoc,
return result; return result;
} }
bool ossimRadarSat2ProductDoc::getAcquistionDate(const ossimXmlDocument* xdoc, ossimString& adate)
{
ossimString path = "/product/sourceAttributes/rawDataStartTime";
return ossim::getPath(path, xdoc, adate);
}
bool ossimRadarSat2ProductDoc::getProductionDate(const ossimXmlDocument* xdoc, ossimString& pdate)
{
ossimString path = "/product/imageGenerationParameters/generalProcessingInformation/processingTime";
return ossim::getPath(path, xdoc, pdate);
}
bool ossimRadarSat2ProductDoc::initTiePoints(const ossimXmlDocument* xdoc, bool ossimRadarSat2ProductDoc::initTiePoints(const ossimXmlDocument* xdoc,
std::list<ossimGpt>& gcp, std::list<ossimGpt>& gcp,
std::list<ossimDpt>& icp) const std::list<ossimDpt>& icp) const
...@@ -889,15 +903,15 @@ bool ossimRadarSat2ProductDoc::getImageFile(const ossimXmlDocument* xdoc, ...@@ -889,15 +903,15 @@ bool ossimRadarSat2ProductDoc::getImageFile(const ossimXmlDocument* xdoc,
{ {
bool result = false; bool result = false;
ossimString fileName; ossimString fileName;
ossimString path = "/product/imageAttributes/fullResolutionImageData"; ossimString path = "/product/imageAttributes/fullResolutionImageData";
if ( ossim::getPath(path, xdoc, fileName) ) if ( ossim::getPath(path, xdoc, fileName) )
{ {
result = true; result = true;
s = fileName; s = fileName;
} }
return result; return result;
} }
......
...@@ -51,7 +51,7 @@ typedef struct ...@@ -51,7 +51,7 @@ typedef struct
vector<double> lineDenominatorCoefficients; vector<double> lineDenominatorCoefficients;
vector<double> pixelNumeratorCoefficients; vector<double> pixelNumeratorCoefficients;
vector<double> pixelDenominatorCoefficients; vector<double> pixelDenominatorCoefficients;
}RPCModel; }RPCModel;
namespace ossimplugins namespace ossimplugins
...@@ -59,17 +59,17 @@ namespace ossimplugins ...@@ -59,17 +59,17 @@ namespace ossimplugins
class PlatformPosition; class PlatformPosition;
class RefPoint; class RefPoint;
class SensorParams; class SensorParams;
/** @brief Class to encapsulate parsing RadarSat2 product.xml file. */ /** @brief Class to encapsulate parsing RadarSat2 product.xml file. */
class OSSIM_PLUGINS_DLL ossimRadarSat2ProductDoc class OSSIM_PLUGINS_DLL ossimRadarSat2ProductDoc
{ {
public: public:
/** @brief default constructor */ /** @brief default constructor */
ossimRadarSat2ProductDoc(); ossimRadarSat2ProductDoc();
/** @brief destructor */ /** @brief destructor */
~ossimRadarSat2ProductDoc(); ~ossimRadarSat2ProductDoc();
/** /**
* @brief Checks for node /product/sourceAttributes/satellite containing * @brief Checks for node /product/sourceAttributes/satellite containing
* RADARSAT-2. * RADARSAT-2.
...@@ -77,9 +77,9 @@ public: ...@@ -77,9 +77,9 @@ public:
* @return true if present, false if not. * @return true if present, false if not.
*/ */
bool isRadarSat2(const ossimXmlDocument* xdoc) const; bool isRadarSat2(const ossimXmlDocument* xdoc) const;
RPCModel getRpcData(const ossimXmlDocument* xdoc) const; RPCModel getRpcData(const ossimXmlDocument* xdoc) const;
/** /**
* @brief Method to initialize PlatformPosition object from * @brief Method to initialize PlatformPosition object from
* RadarSat "product.xml" file. * RadarSat "product.xml" file.
...@@ -89,7 +89,7 @@ public: ...@@ -89,7 +89,7 @@ public:
*/ */
bool initPlatformPosition(const ossimXmlDocument* xdoc, bool initPlatformPosition(const ossimXmlDocument* xdoc,
PlatformPosition* pos) const; PlatformPosition* pos) const;
/** /**
* @brief Method to initialize SensorParams object from * @brief Method to initialize SensorParams object from
* RadarSat "product.xml" file. * RadarSat "product.xml" file.
...@@ -99,7 +99,7 @@ public: ...@@ -99,7 +99,7 @@ public:
*/ */
bool initSensorParams(const ossimXmlDocument* xdoc, bool initSensorParams(const ossimXmlDocument* xdoc,
SensorParams* sp) const; SensorParams* sp) const;
/** /**
* @brief Method to initialize image size from * @brief Method to initialize image size from
* RadarSat "product.xml" file. * RadarSat "product.xml" file.
...@@ -109,7 +109,7 @@ public: ...@@ -109,7 +109,7 @@ public:
*/ */
bool initImageSize(const ossimXmlDocument* xdoc, bool initImageSize(const ossimXmlDocument* xdoc,
ossimIpt& imageSize) const; ossimIpt& imageSize) const;
/** /**
* @brief Method to initialize gsd from * @brief Method to initialize gsd from
* RadarSat "product.xml" file. * RadarSat "product.xml" file.
...@@ -119,7 +119,11 @@ public: ...@@ -119,7 +119,11 @@ public:
*/ */
bool initGsd(const ossimXmlDocument* xdoc, bool initGsd(const ossimXmlDocument* xdoc,
ossimDpt& gsd) const; ossimDpt& gsd) const;
bool getAcquistionDate(const ossimXmlDocument* xdoc, ossimString& adate);
bool getProductionDate(const ossimXmlDocument* xdoc, ossimString& pdate);
/** /**
* @brief Method to initialize image tie points from * @brief Method to initialize image tie points from
* RadarSat "product.xml" file. * RadarSat "product.xml" file.
...@@ -132,7 +136,7 @@ public: ...@@ -132,7 +136,7 @@ public:
std::list<ossimDpt>& icp) const; std::list<ossimDpt>& icp) const;
bool getSatellite(const ossimXmlDocument* xdoc, bool getSatellite(const ossimXmlDocument* xdoc,
ossimString& s) const; ossimString& s) const;
bool getSensor(const ossimXmlDocument* xdoc, bool getSensor(const ossimXmlDocument* xdoc,
ossimString& s) const; ossimString& s) const;
...@@ -222,7 +226,7 @@ public: ...@@ -222,7 +226,7 @@ public:
bool getIncidenceAngleFarRange(const ossimXmlDocument* xdoc, bool getIncidenceAngleFarRange(const ossimXmlDocument* xdoc,
ossimString& s) const; ossimString& s) const;
bool getSatelliteHeight(const ossimXmlDocument* xdoc, bool getSatelliteHeight(const ossimXmlDocument* xdoc,
ossimString& s) const; ossimString& s) const;
}; };
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment