Isis Developer Reference
|
A container for the information stored in a version 1 ControlPoint. More...
#include <ControlPointV0001.h>
Public Member Functions | |
ControlPointV0001 (PvlObject &pointObject, const QString targetName) | |
Create a ControlPointV0001 object from a version 1 control point Pvl object. More... | |
ControlPointV0001 (QSharedPointer< ControlNetFileProtoV0001_PBControlPoint > pointData, QSharedPointer< ControlNetLogDataProtoV0001_Point > logData) | |
Create a ControlPointV0001 object from a protobuf version 1 control point message. More... | |
QSharedPointer< ControlNetFileProtoV0001_PBControlPoint > | pointData () |
Access the protobuf control point data. More... | |
QSharedPointer< ControlNetLogDataProtoV0001_Point > | logData () |
Access the protobuf log data for the control measures in the point. More... | |
A container for the information stored in a version 1 ControlPoint.
A wrapper around the version 1 protobuf serialization of a ControlPoint. It allows for reading ControlPoints serialized as both PvlObjects and protobuf messages.
This class is designed to be compatible with all Pvl formats created prior to the use of versioning. So, the PvlObject constructor has to work with several different formats. Hence, several different keywords are checked for the same value.
Because this version supports several different formats, there is no standardized set of keywords, but all version 1 Pvl control networks have the same high level structure. Control points are represented by objects contained in the ControlNetwork object. Control measures are represented by groups contained in the control point objects.
Once read in, the data is always stored in a protobuf message regardless of the source. This is done to optimize reading binary control network files. Because the protobuf format for version 1 control points is identical to the version 2 format, control points read from a version 1 file are automatically "converted" to version 2. This also makes the version 1 to 2 upgrade process as simple as passing a pointer.
Isis::ControlPointV0001::ControlPointV0001 | ( | PvlObject & | pointObject, |
const QString | targetName | ||
) |
Create a ControlPointV0001 object from a version 1 control point Pvl object.
pointObject | The control point and its measures in a Pvl object |
targetName | The name of the target |
References _FILEINFO_, Isis::Angle::Degrees, Isis::PvlContainer::deleteKeyword(), Isis::SurfacePoint::GetRectangularMatrix(), Isis::SurfacePoint::GetX(), Isis::SurfacePoint::GetY(), Isis::SurfacePoint::GetZ(), Isis::PvlObject::group(), Isis::PvlObject::groups(), Isis::PvlObject::hasKeyword(), Isis::PvlContainer::hasKeyword(), Isis::IException::Io, Isis::PvlContainer::keywords(), Isis::Displacement::Meters, Isis::Displacement::meters(), Isis::Distance::Meters, Isis::PvlKeyword::name(), Isis::None, Isis::IException::Programmer, Isis::SurfacePoint::SetRectangular(), Isis::SurfacePoint::SetSphericalSigmasDistance(), Isis::toDouble(), and Isis::IException::User.
Isis::ControlPointV0001::ControlPointV0001 | ( | QSharedPointer< ControlNetFileProtoV0001_PBControlPoint > | pointData, |
QSharedPointer< ControlNetLogDataProtoV0001_Point > | logData | ||
) |
Create a ControlPointV0001 object from a protobuf version 1 control point message.
pointData | The protobuf message from a control net file. |
logData | The accompanying protobuf control measure log data for the point. |
QSharedPointer< ControlNetLogDataProtoV0001_Point > Isis::ControlPointV0001::logData | ( | ) |
Access the protobuf log data for the control measures in the point.
QSharedPointer< ControlNetFileProtoV0001_PBControlPoint > Isis::ControlPointV0001::pointData | ( | ) |
Access the protobuf control point data.