Loading isis/src/control/objs/ControlNetVersioner/ControlPointV0003.cpp +72 −68 Original line number Diff line number Diff line Loading @@ -2,8 +2,12 @@ #include <QString> #include "ControlMeasureLogData.h" #include "ControlPointFileEntryV0002.pb.h" #include "ControlPointV0002.h" #include "Pvl.h" #include "IException.h" #include "PvlObject.h" #include "PvlContainer.h" using namespace std; Loading @@ -25,7 +29,7 @@ namespace Isis { * * @param pointObject The control point and its measures in a Pvl object */ ControlPointV0003::ControlPointV0003(const PvlObject &pointObject) ControlPointV0003::ControlPointV0003(PvlObject &pointObject) : m_pointData(new ControlPointFileEntryV0002) { // Copy over strings, doubles, and bools Loading Loading @@ -258,59 +262,59 @@ namespace Isis { */ ControlPointV0003::ControlPointV0003(ControlPointV0002 &oldPoint) : m_pointData(new ControlPointFileEntryV0002) { QSharedPointer<ControlNetFileProtoV0001_PBControlPoint> oldPointData = oldPoint.pointData(); ControlNetFileProtoV0001_PBControlPoint oldPointData = oldPoint.pointData(); // Copy over POD values if ( oldPointData->has_id() ) { m_pointData->set_id( oldPointData->id() ); if ( oldPointData.has_id() ) { m_pointData->set_id( oldPointData.id() ); } if ( oldPointData->has_choosername() ) { m_pointData->set_choosername( oldPointData->choosername() ); if ( oldPointData.has_choosername() ) { m_pointData->set_choosername( oldPointData.choosername() ); } if ( oldPointData->has_datetime() ) { m_pointData->set_datetime( oldPointData->datetime() ); if ( oldPointData.has_datetime() ) { m_pointData->set_datetime( oldPointData.datetime() ); } if ( oldPointData->has_apriorisurfpointsourcefile() ) { m_pointData->set_apriorisurfpointsourcefile( oldPointData->apriorisurfpointsourcefile() ); if ( oldPointData.has_apriorisurfpointsourcefile() ) { m_pointData->set_apriorisurfpointsourcefile( oldPointData.apriorisurfpointsourcefile() ); } if ( oldPointData->has_aprioriradiussourcefile() ) { m_pointData->set_aprioriradiussourcefile( oldPointData->aprioriradiussourcefile() ); if ( oldPointData.has_aprioriradiussourcefile() ) { m_pointData->set_aprioriradiussourcefile( oldPointData.aprioriradiussourcefile() ); } if ( oldPointData->has_jigsawrejected() ) { m_pointData->set_jigsawrejected( oldPointData->jigsawrejected() ); if ( oldPointData.has_jigsawrejected() ) { m_pointData->set_jigsawrejected( oldPointData.jigsawrejected() ); } if ( oldPointData->has_editlock() ) { m_pointData->set_editlock( oldPointData->editlock() ); if ( oldPointData.has_editlock() ) { m_pointData->set_editlock( oldPointData.editlock() ); } if ( oldPointData->has_ignore() ) { m_pointData->set_ignore( oldPointData->ignore() ); if ( oldPointData.has_ignore() ) { m_pointData->set_ignore( oldPointData.ignore() ); } if ( oldPointData->has_apriorix() ) { m_pointData->set_apriorix( oldPointData->apriorix() ); if ( oldPointData.has_apriorix() ) { m_pointData->set_apriorix( oldPointData.apriorix() ); } if ( oldPointData->has_aprioriy() ) { m_pointData->set_aprioriy( oldPointData->aprioriy() ); if ( oldPointData.has_aprioriy() ) { m_pointData->set_aprioriy( oldPointData.aprioriy() ); } if ( oldPointData->has_aprioriz() ) { m_pointData->set_aprioriz( oldPointData->aprioriz() ); if ( oldPointData.has_aprioriz() ) { m_pointData->set_aprioriz( oldPointData.aprioriz() ); } if ( oldPointData->has_adjustedx() ) { m_pointData->set_adjustedx( oldPointData->adjustedx() ); if ( oldPointData.has_adjustedx() ) { m_pointData->set_adjustedx( oldPointData.adjustedx() ); } if ( oldPointData->has_adjustedy() ) { m_pointData->set_adjustedy( oldPointData->adjustedy() ); if ( oldPointData.has_adjustedy() ) { m_pointData->set_adjustedy( oldPointData.adjustedy() ); } if ( oldPointData->has_adjustedz() ) { m_pointData->set_adjustedz( oldPointData->adjustedz() ); if ( oldPointData.has_adjustedz() ) { m_pointData->set_adjustedz( oldPointData.adjustedz() ); } if ( oldPointData->has_latitudeconstrained() ) { m_pointData->set_latitudeconstrained( oldPointData->latitudeconstrained() ); if ( oldPointData.has_latitudeconstrained() ) { m_pointData->set_latitudeconstrained( oldPointData.latitudeconstrained() ); } if ( oldPointData->has_longitudeconstrained() ) { m_pointData->set_longitudeconstrained( oldPointData->longitudeconstrained() ); if ( oldPointData.has_longitudeconstrained() ) { m_pointData->set_longitudeconstrained( oldPointData.longitudeconstrained() ); } if ( oldPointData->has_radiusconstrained() ) { m_pointData->set_radiusconstrained( oldPointData->radiusconstrained() ); if ( oldPointData.has_radiusconstrained() ) { m_pointData->set_radiusconstrained( oldPointData.radiusconstrained() ); } // Copy over enumerated values Loading @@ -318,8 +322,8 @@ namespace Isis { // The only point types in V0002 are ground and tie. // So, convert ground and tie to their V0003 values, fixed and free respectively. // Later check if the point is constrained. if ( oldPointData->has_type() ) { ControlNetFileProtoV0001_PBControlPoint_PointType pointType = oldPointData->type(); if ( oldPointData.has_type() ) { ControlNetFileProtoV0001_PBControlPoint_PointType pointType = oldPointData.type(); if (pointType == ControlNetFileProtoV0001_PBControlPoint::Ground) { m_pointData->set_type(ControlPointFileEntryV0002::Fixed); } Loading @@ -332,9 +336,9 @@ namespace Isis { } } if ( oldPointData->has_apriorisurfpointsource() ) { if ( oldPointData.has_apriorisurfpointsource() ) { ControlNetFileProtoV0001_PBControlPoint_AprioriSource surfacePointSource; surfacePointSource = oldPointData->apriorisurfpointsource(); surfacePointSource = oldPointData.apriorisurfpointsource(); if (surfacePointSource == ControlNetFileProtoV0001_PBControlPoint::None) { m_pointData->set_apriorisurfpointsource(ControlPointFileEntryV0002::None); } Loading @@ -359,9 +363,9 @@ namespace Isis { } } if ( oldPointData->has_aprioriradiussource() ) { if ( oldPointData.has_aprioriradiussource() ) { ControlNetFileProtoV0001_PBControlPoint_AprioriSource radiusSource; radiusSource = oldPointData->aprioriradiussource(); radiusSource = oldPointData.aprioriradiussource(); if (radiusSource == ControlNetFileProtoV0001_PBControlPoint::None) { m_pointData->set_aprioriradiussource(ControlPointFileEntryV0002::None); } Loading @@ -377,11 +381,11 @@ namespace Isis { else if (radiusSource == ControlNetFileProtoV0001_PBControlPoint::DEM) { m_pointData->set_aprioriradiussource(ControlPointFileEntryV0002::DEM); } else if (surfacePointSource == ControlNetFileProtoV0001_PBControlPoint::BundleSolution) { else if (radiusSource == ControlNetFileProtoV0001_PBControlPoint::BundleSolution) { m_pointData->set_aprioriradiussource(ControlPointFileEntryV0002::BundleSolution); } else { QString msg = "Invalid AprioriRadiusSource, [" + source + "]"; QString msg = "Invalid AprioriRadiusSource."; throw IException(IException::User, msg, _FILEINFO_); } } Loading @@ -389,30 +393,30 @@ namespace Isis { // Copy the array values // If there is a covariance matrix, then the point is constrained if (oldPointData->aprioricovar_size() > 0) { if (oldPointData.aprioricovar_size() > 0) { m_pointData->set_type(ControlPointFileEntryV0002::Constrained); m_pointData->add_aprioricovar( oldPointData->aprioricovar(0) ); m_pointData->add_aprioricovar( oldPointData->aprioricovar(1) ); m_pointData->add_aprioricovar( oldPointData->aprioricovar(2) ); m_pointData->add_aprioricovar( oldPointData->aprioricovar(3) ); m_pointData->add_aprioricovar( oldPointData->aprioricovar(4) ); m_pointData->add_aprioricovar( oldPointData->aprioricovar(5) ); m_pointData->add_aprioricovar( oldPointData.aprioricovar(0) ); m_pointData->add_aprioricovar( oldPointData.aprioricovar(1) ); m_pointData->add_aprioricovar( oldPointData.aprioricovar(2) ); m_pointData->add_aprioricovar( oldPointData.aprioricovar(3) ); m_pointData->add_aprioricovar( oldPointData.aprioricovar(4) ); m_pointData->add_aprioricovar( oldPointData.aprioricovar(5) ); } if (oldPointData->adjustedcovar_size() > 0) { m_pointData->add_adjustedcovar( oldPointData->adjustedcovar(0) ); m_pointData->add_adjustedcovar( oldPointData->adjustedcovar(1) ); m_pointData->add_adjustedcovar( oldPointData->adjustedcovar(2) ); m_pointData->add_adjustedcovar( oldPointData->adjustedcovar(3) ); m_pointData->add_adjustedcovar( oldPointData->adjustedcovar(4) ); m_pointData->add_adjustedcovar( oldPointData->adjustedcovar(5) ); if (oldPointData.adjustedcovar_size() > 0) { m_pointData->add_adjustedcovar( oldPointData.adjustedcovar(0) ); m_pointData->add_adjustedcovar( oldPointData.adjustedcovar(1) ); m_pointData->add_adjustedcovar( oldPointData.adjustedcovar(2) ); m_pointData->add_adjustedcovar( oldPointData.adjustedcovar(3) ); m_pointData->add_adjustedcovar( oldPointData.adjustedcovar(4) ); m_pointData->add_adjustedcovar( oldPointData.adjustedcovar(5) ); } // Copy the measures for (int i = 0; i < oldPointData->measures_size(); i++) { for (int i = 0; i < oldPointData.measures_size(); i++) { ControlPointFileEntryV0002_Measure *newMeasure = m_pointData->add_measures(); ControlNetFileProtoV0001_PBControlPoint_PBControlMeasure oldMeasure; oldMeasure = oldPointData->measures(i); oldMeasure = oldPointData.measures(i); // Copy over POD values if ( oldMeasure.has_serialnumber() ) { Loading Loading @@ -514,7 +518,7 @@ namespace Isis { * point data. There is no guarantee that the point * data is fully initialized. */ const ControlPointFileEntryV0002 &ControlPointV0003::pointData() const { const ControlPointFileEntryV0002 &ControlPointV0003::pointData() { if (!m_pointData) { m_pointData.reset(new ControlPointFileEntryV0002); } Loading Loading @@ -550,7 +554,7 @@ namespace Isis { value = value.toLower(); if (value == "true" || value == "yes") (point->*setter)(true); (point.data()->*setter)(true); } Loading @@ -570,7 +574,7 @@ namespace Isis { */ void ControlPointV0003::copy(PvlContainer &container, QString keyName, QSharedPointer<ControlPointFileEntryV0002> &point, QSharedPointer<ControlPointFileEntryV0002> point, void (ControlPointFileEntryV0002::*setter)(double)) { if (!container.hasKeyword(keyName)) Loading @@ -578,7 +582,7 @@ namespace Isis { double value = toDouble(container[keyName][0]); container.deleteKeyword(keyName); (point->*setter)(value); (point.data()->*setter)(value); } Loading @@ -598,7 +602,7 @@ namespace Isis { */ void ControlPointV0003::copy(PvlContainer &container, QString keyName, QSharedPointer<ControlPointFileEntryV0002> &point, QSharedPointer<ControlPointFileEntryV0002> point, void (ControlPointFileEntryV0002::*setter)(const std::string&)) { if (!container.hasKeyword(keyName)) Loading @@ -606,7 +610,7 @@ namespace Isis { QString value = container[keyName][0]; container.deleteKeyword(keyName); (point->*setter)(value); (point.data()->*setter)(value.toLatin1().data()); } Loading Loading @@ -694,6 +698,6 @@ namespace Isis { QString value = container[keyName][0]; container.deleteKeyword(keyName); (measure.*set)(value); (measure.*setter)(value.toLatin1().data()); } } isis/src/control/objs/ControlNetVersioner/ControlPointV0003.h +8 −7 Original line number Diff line number Diff line Loading @@ -30,21 +30,22 @@ namespace Isis { class ControlPointV0002; class PvlObject; class PvlContainer; //TODO document this class ControlPointV0003 { public: ControlPointV0003(const PvlObject &pointObject); ControlPointV0003(const ControlPointFileEntryV0002 &pointData); ControlPointV0003(PvlObject &pointObject); ControlPointV0003(QSharedPointer<ControlPointFileEntryV0002> pointData); ControlPointV0003(ControlPointV0002 &oldPoint); const ControlPointFileEntryV0002 &pointData() const; const ControlPointFileEntryV0002 &pointData(); private: // These are intentionally not implemented ControlPointV0003(); ControlPointV0003(const &ControlPointV0003 other); ControlPointV0003 &operator=(const &ControlPointV0003 other); ControlPointV0003(const ControlPointV0003 &other); ControlPointV0003 &operator=(const ControlPointV0003 &other); // methods for converting from Pvl to protobuf void copy(PvlContainer &container, Loading @@ -53,11 +54,11 @@ namespace Isis { void (ControlPointFileEntryV0002::*setter)(bool)); void copy(PvlContainer &container, QString keyName, QSharedPointer<ControlPointFileEntryV0002> &point, QSharedPointer<ControlPointFileEntryV0002> point, void (ControlPointFileEntryV0002::*setter)(double)); void copy(PvlContainer &container, QString keyName, QSharedPointer<ControlPointFileEntryV0002> &point, QSharedPointer<ControlPointFileEntryV0002> point, void (ControlPointFileEntryV0002::*setter)(const std::string&)); void copy(PvlContainer &container, QString keyName, Loading Loading
isis/src/control/objs/ControlNetVersioner/ControlPointV0003.cpp +72 −68 Original line number Diff line number Diff line Loading @@ -2,8 +2,12 @@ #include <QString> #include "ControlMeasureLogData.h" #include "ControlPointFileEntryV0002.pb.h" #include "ControlPointV0002.h" #include "Pvl.h" #include "IException.h" #include "PvlObject.h" #include "PvlContainer.h" using namespace std; Loading @@ -25,7 +29,7 @@ namespace Isis { * * @param pointObject The control point and its measures in a Pvl object */ ControlPointV0003::ControlPointV0003(const PvlObject &pointObject) ControlPointV0003::ControlPointV0003(PvlObject &pointObject) : m_pointData(new ControlPointFileEntryV0002) { // Copy over strings, doubles, and bools Loading Loading @@ -258,59 +262,59 @@ namespace Isis { */ ControlPointV0003::ControlPointV0003(ControlPointV0002 &oldPoint) : m_pointData(new ControlPointFileEntryV0002) { QSharedPointer<ControlNetFileProtoV0001_PBControlPoint> oldPointData = oldPoint.pointData(); ControlNetFileProtoV0001_PBControlPoint oldPointData = oldPoint.pointData(); // Copy over POD values if ( oldPointData->has_id() ) { m_pointData->set_id( oldPointData->id() ); if ( oldPointData.has_id() ) { m_pointData->set_id( oldPointData.id() ); } if ( oldPointData->has_choosername() ) { m_pointData->set_choosername( oldPointData->choosername() ); if ( oldPointData.has_choosername() ) { m_pointData->set_choosername( oldPointData.choosername() ); } if ( oldPointData->has_datetime() ) { m_pointData->set_datetime( oldPointData->datetime() ); if ( oldPointData.has_datetime() ) { m_pointData->set_datetime( oldPointData.datetime() ); } if ( oldPointData->has_apriorisurfpointsourcefile() ) { m_pointData->set_apriorisurfpointsourcefile( oldPointData->apriorisurfpointsourcefile() ); if ( oldPointData.has_apriorisurfpointsourcefile() ) { m_pointData->set_apriorisurfpointsourcefile( oldPointData.apriorisurfpointsourcefile() ); } if ( oldPointData->has_aprioriradiussourcefile() ) { m_pointData->set_aprioriradiussourcefile( oldPointData->aprioriradiussourcefile() ); if ( oldPointData.has_aprioriradiussourcefile() ) { m_pointData->set_aprioriradiussourcefile( oldPointData.aprioriradiussourcefile() ); } if ( oldPointData->has_jigsawrejected() ) { m_pointData->set_jigsawrejected( oldPointData->jigsawrejected() ); if ( oldPointData.has_jigsawrejected() ) { m_pointData->set_jigsawrejected( oldPointData.jigsawrejected() ); } if ( oldPointData->has_editlock() ) { m_pointData->set_editlock( oldPointData->editlock() ); if ( oldPointData.has_editlock() ) { m_pointData->set_editlock( oldPointData.editlock() ); } if ( oldPointData->has_ignore() ) { m_pointData->set_ignore( oldPointData->ignore() ); if ( oldPointData.has_ignore() ) { m_pointData->set_ignore( oldPointData.ignore() ); } if ( oldPointData->has_apriorix() ) { m_pointData->set_apriorix( oldPointData->apriorix() ); if ( oldPointData.has_apriorix() ) { m_pointData->set_apriorix( oldPointData.apriorix() ); } if ( oldPointData->has_aprioriy() ) { m_pointData->set_aprioriy( oldPointData->aprioriy() ); if ( oldPointData.has_aprioriy() ) { m_pointData->set_aprioriy( oldPointData.aprioriy() ); } if ( oldPointData->has_aprioriz() ) { m_pointData->set_aprioriz( oldPointData->aprioriz() ); if ( oldPointData.has_aprioriz() ) { m_pointData->set_aprioriz( oldPointData.aprioriz() ); } if ( oldPointData->has_adjustedx() ) { m_pointData->set_adjustedx( oldPointData->adjustedx() ); if ( oldPointData.has_adjustedx() ) { m_pointData->set_adjustedx( oldPointData.adjustedx() ); } if ( oldPointData->has_adjustedy() ) { m_pointData->set_adjustedy( oldPointData->adjustedy() ); if ( oldPointData.has_adjustedy() ) { m_pointData->set_adjustedy( oldPointData.adjustedy() ); } if ( oldPointData->has_adjustedz() ) { m_pointData->set_adjustedz( oldPointData->adjustedz() ); if ( oldPointData.has_adjustedz() ) { m_pointData->set_adjustedz( oldPointData.adjustedz() ); } if ( oldPointData->has_latitudeconstrained() ) { m_pointData->set_latitudeconstrained( oldPointData->latitudeconstrained() ); if ( oldPointData.has_latitudeconstrained() ) { m_pointData->set_latitudeconstrained( oldPointData.latitudeconstrained() ); } if ( oldPointData->has_longitudeconstrained() ) { m_pointData->set_longitudeconstrained( oldPointData->longitudeconstrained() ); if ( oldPointData.has_longitudeconstrained() ) { m_pointData->set_longitudeconstrained( oldPointData.longitudeconstrained() ); } if ( oldPointData->has_radiusconstrained() ) { m_pointData->set_radiusconstrained( oldPointData->radiusconstrained() ); if ( oldPointData.has_radiusconstrained() ) { m_pointData->set_radiusconstrained( oldPointData.radiusconstrained() ); } // Copy over enumerated values Loading @@ -318,8 +322,8 @@ namespace Isis { // The only point types in V0002 are ground and tie. // So, convert ground and tie to their V0003 values, fixed and free respectively. // Later check if the point is constrained. if ( oldPointData->has_type() ) { ControlNetFileProtoV0001_PBControlPoint_PointType pointType = oldPointData->type(); if ( oldPointData.has_type() ) { ControlNetFileProtoV0001_PBControlPoint_PointType pointType = oldPointData.type(); if (pointType == ControlNetFileProtoV0001_PBControlPoint::Ground) { m_pointData->set_type(ControlPointFileEntryV0002::Fixed); } Loading @@ -332,9 +336,9 @@ namespace Isis { } } if ( oldPointData->has_apriorisurfpointsource() ) { if ( oldPointData.has_apriorisurfpointsource() ) { ControlNetFileProtoV0001_PBControlPoint_AprioriSource surfacePointSource; surfacePointSource = oldPointData->apriorisurfpointsource(); surfacePointSource = oldPointData.apriorisurfpointsource(); if (surfacePointSource == ControlNetFileProtoV0001_PBControlPoint::None) { m_pointData->set_apriorisurfpointsource(ControlPointFileEntryV0002::None); } Loading @@ -359,9 +363,9 @@ namespace Isis { } } if ( oldPointData->has_aprioriradiussource() ) { if ( oldPointData.has_aprioriradiussource() ) { ControlNetFileProtoV0001_PBControlPoint_AprioriSource radiusSource; radiusSource = oldPointData->aprioriradiussource(); radiusSource = oldPointData.aprioriradiussource(); if (radiusSource == ControlNetFileProtoV0001_PBControlPoint::None) { m_pointData->set_aprioriradiussource(ControlPointFileEntryV0002::None); } Loading @@ -377,11 +381,11 @@ namespace Isis { else if (radiusSource == ControlNetFileProtoV0001_PBControlPoint::DEM) { m_pointData->set_aprioriradiussource(ControlPointFileEntryV0002::DEM); } else if (surfacePointSource == ControlNetFileProtoV0001_PBControlPoint::BundleSolution) { else if (radiusSource == ControlNetFileProtoV0001_PBControlPoint::BundleSolution) { m_pointData->set_aprioriradiussource(ControlPointFileEntryV0002::BundleSolution); } else { QString msg = "Invalid AprioriRadiusSource, [" + source + "]"; QString msg = "Invalid AprioriRadiusSource."; throw IException(IException::User, msg, _FILEINFO_); } } Loading @@ -389,30 +393,30 @@ namespace Isis { // Copy the array values // If there is a covariance matrix, then the point is constrained if (oldPointData->aprioricovar_size() > 0) { if (oldPointData.aprioricovar_size() > 0) { m_pointData->set_type(ControlPointFileEntryV0002::Constrained); m_pointData->add_aprioricovar( oldPointData->aprioricovar(0) ); m_pointData->add_aprioricovar( oldPointData->aprioricovar(1) ); m_pointData->add_aprioricovar( oldPointData->aprioricovar(2) ); m_pointData->add_aprioricovar( oldPointData->aprioricovar(3) ); m_pointData->add_aprioricovar( oldPointData->aprioricovar(4) ); m_pointData->add_aprioricovar( oldPointData->aprioricovar(5) ); m_pointData->add_aprioricovar( oldPointData.aprioricovar(0) ); m_pointData->add_aprioricovar( oldPointData.aprioricovar(1) ); m_pointData->add_aprioricovar( oldPointData.aprioricovar(2) ); m_pointData->add_aprioricovar( oldPointData.aprioricovar(3) ); m_pointData->add_aprioricovar( oldPointData.aprioricovar(4) ); m_pointData->add_aprioricovar( oldPointData.aprioricovar(5) ); } if (oldPointData->adjustedcovar_size() > 0) { m_pointData->add_adjustedcovar( oldPointData->adjustedcovar(0) ); m_pointData->add_adjustedcovar( oldPointData->adjustedcovar(1) ); m_pointData->add_adjustedcovar( oldPointData->adjustedcovar(2) ); m_pointData->add_adjustedcovar( oldPointData->adjustedcovar(3) ); m_pointData->add_adjustedcovar( oldPointData->adjustedcovar(4) ); m_pointData->add_adjustedcovar( oldPointData->adjustedcovar(5) ); if (oldPointData.adjustedcovar_size() > 0) { m_pointData->add_adjustedcovar( oldPointData.adjustedcovar(0) ); m_pointData->add_adjustedcovar( oldPointData.adjustedcovar(1) ); m_pointData->add_adjustedcovar( oldPointData.adjustedcovar(2) ); m_pointData->add_adjustedcovar( oldPointData.adjustedcovar(3) ); m_pointData->add_adjustedcovar( oldPointData.adjustedcovar(4) ); m_pointData->add_adjustedcovar( oldPointData.adjustedcovar(5) ); } // Copy the measures for (int i = 0; i < oldPointData->measures_size(); i++) { for (int i = 0; i < oldPointData.measures_size(); i++) { ControlPointFileEntryV0002_Measure *newMeasure = m_pointData->add_measures(); ControlNetFileProtoV0001_PBControlPoint_PBControlMeasure oldMeasure; oldMeasure = oldPointData->measures(i); oldMeasure = oldPointData.measures(i); // Copy over POD values if ( oldMeasure.has_serialnumber() ) { Loading Loading @@ -514,7 +518,7 @@ namespace Isis { * point data. There is no guarantee that the point * data is fully initialized. */ const ControlPointFileEntryV0002 &ControlPointV0003::pointData() const { const ControlPointFileEntryV0002 &ControlPointV0003::pointData() { if (!m_pointData) { m_pointData.reset(new ControlPointFileEntryV0002); } Loading Loading @@ -550,7 +554,7 @@ namespace Isis { value = value.toLower(); if (value == "true" || value == "yes") (point->*setter)(true); (point.data()->*setter)(true); } Loading @@ -570,7 +574,7 @@ namespace Isis { */ void ControlPointV0003::copy(PvlContainer &container, QString keyName, QSharedPointer<ControlPointFileEntryV0002> &point, QSharedPointer<ControlPointFileEntryV0002> point, void (ControlPointFileEntryV0002::*setter)(double)) { if (!container.hasKeyword(keyName)) Loading @@ -578,7 +582,7 @@ namespace Isis { double value = toDouble(container[keyName][0]); container.deleteKeyword(keyName); (point->*setter)(value); (point.data()->*setter)(value); } Loading @@ -598,7 +602,7 @@ namespace Isis { */ void ControlPointV0003::copy(PvlContainer &container, QString keyName, QSharedPointer<ControlPointFileEntryV0002> &point, QSharedPointer<ControlPointFileEntryV0002> point, void (ControlPointFileEntryV0002::*setter)(const std::string&)) { if (!container.hasKeyword(keyName)) Loading @@ -606,7 +610,7 @@ namespace Isis { QString value = container[keyName][0]; container.deleteKeyword(keyName); (point->*setter)(value); (point.data()->*setter)(value.toLatin1().data()); } Loading Loading @@ -694,6 +698,6 @@ namespace Isis { QString value = container[keyName][0]; container.deleteKeyword(keyName); (measure.*set)(value); (measure.*setter)(value.toLatin1().data()); } }
isis/src/control/objs/ControlNetVersioner/ControlPointV0003.h +8 −7 Original line number Diff line number Diff line Loading @@ -30,21 +30,22 @@ namespace Isis { class ControlPointV0002; class PvlObject; class PvlContainer; //TODO document this class ControlPointV0003 { public: ControlPointV0003(const PvlObject &pointObject); ControlPointV0003(const ControlPointFileEntryV0002 &pointData); ControlPointV0003(PvlObject &pointObject); ControlPointV0003(QSharedPointer<ControlPointFileEntryV0002> pointData); ControlPointV0003(ControlPointV0002 &oldPoint); const ControlPointFileEntryV0002 &pointData() const; const ControlPointFileEntryV0002 &pointData(); private: // These are intentionally not implemented ControlPointV0003(); ControlPointV0003(const &ControlPointV0003 other); ControlPointV0003 &operator=(const &ControlPointV0003 other); ControlPointV0003(const ControlPointV0003 &other); ControlPointV0003 &operator=(const ControlPointV0003 &other); // methods for converting from Pvl to protobuf void copy(PvlContainer &container, Loading @@ -53,11 +54,11 @@ namespace Isis { void (ControlPointFileEntryV0002::*setter)(bool)); void copy(PvlContainer &container, QString keyName, QSharedPointer<ControlPointFileEntryV0002> &point, QSharedPointer<ControlPointFileEntryV0002> point, void (ControlPointFileEntryV0002::*setter)(double)); void copy(PvlContainer &container, QString keyName, QSharedPointer<ControlPointFileEntryV0002> &point, QSharedPointer<ControlPointFileEntryV0002> point, void (ControlPointFileEntryV0002::*setter)(const std::string&)); void copy(PvlContainer &container, QString keyName, Loading