Isis 3 Programmer Reference
ImageIdFilter.cpp
1
7/* SPDX-License-Identifier: CC0-1.0 */
8
9#include "ImageIdFilter.h"
10
11#include <QPair>
12#include <QString>
13
14#include "CnetDisplayProperties.h"
15#include "ControlMeasure.h"
16#include "ControlNet.h"
17#include "ControlPoint.h"
18#include "IString.h"
19
20
21namespace Isis {
22 ImageIdFilter::ImageIdFilter(
23 AbstractFilter::FilterEffectivenessFlag flag,
24 int minimumForSuccess) : AbstractStringFilter(flag, minimumForSuccess) {
25 }
26
27
28 ImageIdFilter::ImageIdFilter(const ImageIdFilter &other): AbstractStringFilter(other) {
29 }
30
31
32 ImageIdFilter::~ImageIdFilter() {
33 }
34
35
36 bool ImageIdFilter::evaluate(const QPair<QString, ControlNet *> *imageAndNet) const {
37 return AbstractStringFilter::evaluate(
38 CnetDisplayProperties::getInstance()->getImageName(imageAndNet->first));
39 }
40
41
42 bool ImageIdFilter::evaluate(const ControlPoint *point) const {
43 return evaluatePointFromMeasureFilter(point);
44 }
45
46
47 bool ImageIdFilter::evaluate(const ControlMeasure *measure) const {
48 return AbstractStringFilter::evaluate(
49 CnetDisplayProperties::getInstance()->getImageName(
50 (QString) measure->GetCubeSerialNumber()));
51 }
52
53
54 AbstractFilter *ImageIdFilter::clone() const {
55 return new ImageIdFilter(*this);
56 }
57
58
59 QString ImageIdFilter::getImageDescription() const {
60 return getMeasureDescription();
61 }
62
63
64 QString ImageIdFilter::getPointDescription() const {
65 QString description = AbstractFilter::getImageDescription();
66
67 if (getMinForSuccess() == 1)
68 description += "measure with it's image ID ";
69 else
70 description += "measures with image IDs ";
71
72 description += descriptionSuffix();
73 return description;
74 }
75
76
77 QString ImageIdFilter::getMeasureDescription() const {
78 return "have image IDs " + descriptionSuffix();
79 }
80}
This is free and unencumbered software released into the public domain.
Definition Apollo.h:16