Isis 3.0 Object Programmers' Reference
Home
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
ControlNetValidMeasure.h
Go to the documentation of this file.
1
#ifndef _ControlNetValidMeasure_h_
2
#define _ControlNetValidMeasure_h_
3
4
#include "CubeManager.h"
5
#include "
IString.h
"
6
#include "
Pvl.h
"
7
#include "
PvlGroup.h
"
8
#include "
Progress.h
"
9
#include "
SerialNumberList.h
"
10
34
namespace
Isis {
35
class
Camera;
36
class
Cube;
37
class
ControlNet;
38
class
MeasureValidationResults;
39
class
ControlMeasure;
40
79
class
ControlNetValidMeasure
{
80
public
:
81
ControlNetValidMeasure
(
Pvl
*pvl = 0);
82
ControlNetValidMeasure
(
Pvl
&pvl);
83
85
void
InitStdOptions
(
void
);
86
88
void
InitStdOptionsGroup
(
void
);
89
90
virtual
~ControlNetValidMeasure
();
91
93
void
Parse
(
Pvl
&pvlDef);
94
96
virtual
Pvl
&
GetLogPvl
(
void
) {
97
return
mPvlLog
;
98
};
99
101
virtual
void
FindCnetRef
(
ControlNet
&pNewNet) {};
102
104
bool
ValidEmissionAngle
(
double
pdEmissionAngle);
105
107
bool
ValidIncidenceAngle
(
double
pdIncidenceAngle);
108
110
bool
ValidDnValue
(
double
pdDnValue);
111
113
bool
ValidResolution
(
double
pdResolution);
114
116
bool
ValidResidualTolerances
(
double
pdSampleResidual,
double
pdLineResidual,
117
double
pdResidualMagnitude,
MeasureValidationResults
& pResults);
118
119
bool
ValidShiftTolerances
(
double
sampleShift,
double
lineShift,
120
double
pixelShift,
MeasureValidationResults
&results);
121
123
bool
ValidLatLon
(
Isis::Camera
*pCamera,
int
piSample,
int
piLine);
124
126
PvlGroup
&
GetStdOptions
(
void
) {
127
return
mStdOptionsGrp
;
128
};
129
131
PvlGroup
&
GetStatistics
(
void
) {
132
return
mStatisticsGrp
;
133
};
134
136
double
GetMinDN
(
void
) {
137
return
mdMinDN
;
138
};
139
141
double
GetMaxDN
(
void
) {
142
return
mdMaxDN
;
143
};
144
146
double
GetMinEmissionAngle
(
void
) {
147
return
mdMinEmissionAngle
;
148
};
149
151
double
GetMaxEmissionAngle
(
void
) {
152
return
mdMaxEmissionAngle
;
153
};
154
156
double
GetMinIncidenceAngle
(
void
) {
157
return
mdMinIncidenceAngle
;
158
};
159
161
double
GetMaxIncidenceAngle
(
void
) {
162
return
mdMaxIncidenceAngle
;
163
};
164
166
double
GetPixelsFromEdge
(
void
) {
167
return
miPixelsFromEdge
;
168
};
169
171
double
GetMetersFromEdge
(
void
) {
172
return
mdMetersFromEdge
;
173
};
174
176
QString
LocationString
(
double
pdSample,
double
pdLine)
const
{
177
return
toString
((
int
)pdSample) +
","
+
toString
((
int
)pdLine);
178
};
179
181
bool
PixelsFromEdge
(
int
piSample,
int
piLine,
Cube
*pCube);
182
184
bool
MetersFromEdge
(
int
piSample,
int
piLine,
Cube
*pCube);
185
187
MeasureValidationResults
ValidStandardOptions
(
const
ControlMeasure
*pMeasure,
188
Cube
*pCube,
PvlGroup
*pMeasureGrp = NULL);
189
191
MeasureValidationResults
ValidStandardOptions
(
const
ControlMeasure
*pMeasure,
192
Cube
*pCube,
Camera
*camera,
PvlGroup
*pMeasureGrp = NULL);
193
195
MeasureValidationResults
ValidStandardOptions
(
double
pSample,
double
pLine,
196
const
ControlMeasure
*pMeasure,
Cube
*pCube,
PvlGroup
*pMeasureGrp = NULL);
197
198
MeasureValidationResults
ValidStandardOptions
(
double
pSample,
double
pLine,
199
const
ControlMeasure
*pMeasure,
Cube
*pCube,
Camera
*measureCamera,
200
PvlGroup
*pMeasureGrp = NULL);
201
203
MeasureValidationResults
ValidStandardOptions
(
double
pSample,
double
pLine,
204
Cube
*pCube,
PvlGroup
*pMeasureGrp = NULL);
205
206
bool
IsCubeRequired() {
207
return
IsCameraRequired
() ||
mbValidateDN
||
mbValidateFromEdge
;
208
}
209
217
bool
IsCameraRequired
() {
218
return
mbCameraRequired
;
219
}
220
221
protected
:
223
void
ValidatePvlDN
(
void
);
224
226
void
ValidatePvlEmissionAngle
(
void
);
227
229
void
ValidatePvlIncidenceAngle
(
void
);
230
232
void
ValidatePvlResolution
(
void
);
233
235
void
ValidatePvlFromEdge
(
void
);
236
238
void
ValidatePvlResidualTolerances
(
void
);
239
240
void
ValidatePvlShiftTolerances
();
241
243
void
ReadSerialNumbers
(QString psSerialNumfile);
244
254
void
SetCameraRequiredFlag
(
bool
pbFlag){
255
mbCameraRequired
= pbFlag;
256
}
257
258
double
mdMinDN
;
259
double
mdMaxDN
;
260
double
mdMinResolution
;
261
double
mdMaxResolution
;
262
double
mdMinEmissionAngle
;
263
double
mdMaxEmissionAngle
;
264
double
mdMinIncidenceAngle
;
265
double
mdMaxIncidenceAngle
;
266
double
mdMetersFromEdge
;
267
int
miPixelsFromEdge
;
268
double
mdSampleResTolerance
;
269
double
mdLineResTolerance
;
270
double
mdResidualTolerance
;
271
272
double
m_sampleShiftTolerance
;
273
double
m_lineShiftTolerance
;
274
double
m_pixelShiftTolerance
;
275
276
double
mdEmissionAngle
;
277
double
mdIncidenceAngle
;
278
double
mdResolution
;
279
double
mdDnValue
;
280
double
mdSampleResidual
;
281
double
mdLineResidual
;
282
double
mdResidualMagnitude
;
283
284
double
m_sampleShift
;
285
double
m_lineShift
;
286
double
m_pixelShift
;
287
288
PvlGroup
mPvlOpGrp
;
289
PvlGroup
mStdOptionsGrp
;
290
PvlGroup
mStatisticsGrp
;
291
Pvl
mPvlLog
;
292
Progress
mStatus
;
293
CubeManager
mCubeMgr
;
294
SerialNumberList
mSerialNumbers
;
295
296
bool
mbCameraRequired
;
297
298
bool
mbValidateDN
;
299
bool
mbValidateFromEdge
;
300
};
301
};
302
#endif
303