11 #include "ControlNetFile.h"
67 if (diffFile.
hasGroup(
"Tolerances")) {
69 for (
int i = 0; i < tolerances.
keywords(); i++)
74 if (diffFile.
hasGroup(
"IgnoreKeys")) {
76 for (
int i = 0; i < ignoreKeys.
keywords(); i++)
96 diff(
"Filename", net1Name.name(), net2Name.name(), report);
99 Pvl net2Pvl(net2->toPvl());
104 BigInt net1NumPts = net1Obj.objects();
105 BigInt net2NumPts = net2Obj.
objects();
108 diff(
"NetworkId", net1Obj, net2Obj, report);
109 diff(
"TargetName", net1Obj, net2Obj, report);
112 for (
int p = 0; p < net1NumPts; p++) {
118 for (
int p = 0; p < net2NumPts; p++) {
125 for (
int i = 0; i < pointNames.size(); i++) {
127 if (idMap.size() == 2) {
128 compare(idMap[0], idMap[1], report);
130 else if (idMap.contains(0)) {
131 addUniquePoint(
"PointId", idMap[0].findKeyword(
"PointId")[0],
"N/A", report);
133 else if (idMap.contains(1)) {
134 addUniquePoint(
"PointId",
"N/A", idMap[1].findKeyword(
"PointId")[0], report);
162 int p1Measures = point1Pvl.
groups();
163 int p2Measures = point2Pvl.
groups();
169 for (
int m = 0; m < p1Measures; m++) {
171 measureMap[measure.
findKeyword(
"SerialNumber")[0]].insert(
175 for (
int m = 0; m < p2Measures; m++) {
177 measureMap[measure.
findKeyword(
"SerialNumber")[0]].insert(
182 for (
int i = 0; i < measureNames.size(); i++) {
184 if (idMap.size() == 2) {
187 else if (idMap.contains(0)) {
188 addUniqueMeasure(
"SerialNumber", idMap[0].findKeyword(
"SerialNumber")[0],
"N/A", pointReport);
190 else if (idMap.contains(1)) {
191 addUniqueMeasure(
"SerialNumber",
"N/A", idMap[1].findKeyword(
"SerialNumber")[0], pointReport);
223 for (
int k = 0; k < g1.
keywords(); k++)
224 keywordMap[g1[k].name()].insert(0, g1[k]);
225 for (
int k = 0; k < g2.
keywords(); k++)
226 keywordMap[g2[k].name()].insert(1, g2[k]);
229 for (
int i = 0; i < keywordNames.size(); i++) {
231 if (idMap.size() == 2) {
232 compare(idMap[0], idMap[1], groupReport);
234 else if (idMap.contains(0)) {
235 QString name = idMap[0].name();
237 diff(name, idMap[0][0],
"N/A", groupReport);
239 else if (idMap.contains(1)) {
240 QString name = idMap[1].name();
242 diff(name,
"N/A", idMap[1][0], groupReport);
265 QString name = k1.
name();
269 diff(name, k1[0], k2[0], report);
284 QString v1 = o1[name][0];
285 QString v2 = o2[name][0];
286 diff(name, v1, v2, report);
359 if (fabs(v1 - v2) > tol) {