Isis Developer Reference
ControlPointV0002.h
Go to the documentation of this file.
1#ifndef ControlPointV0002_h
2#define ControlPointV0002_h
3
10/* SPDX-License-Identifier: CC0-1.0 */
11
12 #include <QSharedPointer>
13
14 #include "ControlNetFileProtoV0001.pb.h"
15 #include "ControlNetLogDataProtoV0001.pb.h"
16
17namespace Isis {
18 class ControlPointV0001;
19 class PvlObject;
20 class PvlContainer;
21
155 public:
156 ControlPointV0002(PvlObject &pointObject);
157 ControlPointV0002(QSharedPointer<ControlNetFileProtoV0001_PBControlPoint> pointData,
158 QSharedPointer<ControlNetLogDataProtoV0001_Point> logData);
160
161 QSharedPointer<ControlNetFileProtoV0001_PBControlPoint> pointData();
162 QSharedPointer<ControlNetLogDataProtoV0001_Point> logData();
163
164 private:
182 ControlPointV0002 &operator=(const ControlPointV0002 &other);
183
184 // methods for converting from Pvl to protobuf
185 void copy(PvlContainer &container,
186 QString keyName,
187 QSharedPointer<ControlNetFileProtoV0001_PBControlPoint> point,
188 void (ControlNetFileProtoV0001_PBControlPoint::*setter)(bool));
189 void copy(PvlContainer &container,
190 QString keyName,
191 QSharedPointer<ControlNetFileProtoV0001_PBControlPoint> point,
192 void (ControlNetFileProtoV0001_PBControlPoint::*setter)(double));
193 void copy(PvlContainer &container,
194 QString keyName,
195 QSharedPointer<ControlNetFileProtoV0001_PBControlPoint> point,
196 void (ControlNetFileProtoV0001_PBControlPoint::*setter)(const std::string&));
197 void copy(PvlContainer &container,
198 QString keyName,
199 ControlNetFileProtoV0001_PBControlPoint_PBControlMeasure &measure,
200 void (ControlNetFileProtoV0001_PBControlPoint_PBControlMeasure::*setter)(bool));
201 void copy(PvlContainer &container,
202 QString keyName,
203 ControlNetFileProtoV0001_PBControlPoint_PBControlMeasure &measure,
204 void (ControlNetFileProtoV0001_PBControlPoint_PBControlMeasure::*setter)(double));
205 void copy(PvlContainer &container,
206 QString keyName,
207 ControlNetFileProtoV0001_PBControlPoint_PBControlMeasure &measure,
208 void (ControlNetFileProtoV0001_PBControlPoint_PBControlMeasure::*setter)(
209 const std::string &));
210
211 QSharedPointer<ControlNetFileProtoV0001_PBControlPoint> m_pointData;
213 QSharedPointer<ControlNetLogDataProtoV0001_Point> m_logData;
215 };
216}
217
218#endif
A container for the information stored in a version 1 ControlPoint.
Definition ControlPointV0001.h:62
A container for the information stored in a version 2 ControlPoint.
Definition ControlPointV0002.h:154
QSharedPointer< ControlNetLogDataProtoV0001_Point > logData()
Access the protobuf log data for the control measures in the point.
Definition ControlPointV0002.cpp:364
QSharedPointer< ControlNetFileProtoV0001_PBControlPoint > pointData()
Access the protobuf control point data.
Definition ControlPointV0002.cpp:353
Contains more than one keyword-value pair.
Definition PvlContainer.h:49
Contains Pvl Groups and Pvl Objects.
Definition PvlObject.h:61
This is free and unencumbered software released into the public domain.
Definition Apollo.h:16