Isis Developer Reference
Isis::ControlPointV0001 Class Reference

A container for the information stored in a version 1 ControlPoint. More...

#include <ControlPointV0001.h>

Collaboration diagram for Isis::ControlPointV0001:
Collaboration graph

Public Member Functions

 ControlPointV0001 (PvlObject &pointObject, const QString targetName)
 Create a ControlPointV0001 object from a version 1 control point Pvl object.
 
 ControlPointV0001 (QSharedPointer< ControlNetFileProtoV0001_PBControlPoint > pointData, QSharedPointer< ControlNetLogDataProtoV0001_Point > logData)
 Create a ControlPointV0001 object from a protobuf version 1 control point message.
 
QSharedPointer< ControlNetFileProtoV0001_PBControlPoint > pointData ()
 Access the protobuf control point data.
 
QSharedPointer< ControlNetLogDataProtoV0001_Point > logData ()
 Access the protobuf log data for the control measures in the point.
 

Detailed Description

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.

Author
2017-12-18 Jesse Mapel

Constructor & Destructor Documentation

◆ ControlPointV0001() [1/2]

Isis::ControlPointV0001::ControlPointV0001 ( PvlObject & pointObject,
const QString targetName )

◆ ControlPointV0001() [2/2]

Isis::ControlPointV0001::ControlPointV0001 ( QSharedPointer< ControlNetFileProtoV0001_PBControlPoint > pointData,
QSharedPointer< ControlNetLogDataProtoV0001_Point > logData )

Create a ControlPointV0001 object from a protobuf version 1 control point message.

Parameters
pointDataThe protobuf message from a control net file.
logDataThe accompanying protobuf control measure log data for the point.

Member Function Documentation

◆ logData()

QSharedPointer< ControlNetLogDataProtoV0001_Point > Isis::ControlPointV0001::logData ( )

Access the protobuf log data for the control measures in the point.

Returns
QSharedPointer<ControlNetLogDataProtoV0001_Point> A pointer to the internal measure log data.

◆ pointData()

QSharedPointer< ControlNetFileProtoV0001_PBControlPoint > Isis::ControlPointV0001::pointData ( )

Access the protobuf control point data.

Returns
QSharedPointer<ControlNetFileProtoV0001_PBControlPoint> A pointer to the internal control point data.

The documentation for this class was generated from the following files: