9#include "LineShiftFilter.h"
14#include "ControlMeasure.h"
15#include "ControlNet.h"
16#include "ControlPoint.h"
20 LineShiftFilter::LineShiftFilter(
21 AbstractFilter::FilterEffectivenessFlag flag,
22 int minimumForSuccess) : AbstractNumberFilter(flag, minimumForSuccess) {
26 LineShiftFilter::LineShiftFilter(
const LineShiftFilter &other) : AbstractNumberFilter(other) {
30 LineShiftFilter::~LineShiftFilter() {
34 bool LineShiftFilter::evaluate(
const QPair<QString, ControlNet *> *imageAndNet)
const {
35 return evaluateImageFromMeasureFilter(imageAndNet);
39 bool LineShiftFilter::evaluate(
const ControlPoint *point)
const {
40 return evaluatePointFromMeasureFilter(point);
44 bool LineShiftFilter::evaluate(
const ControlMeasure *measure)
const {
45 return AbstractNumberFilter::evaluate(measure->GetLineShift());
49 AbstractFilter *LineShiftFilter::clone()
const {
50 return new LineShiftFilter(*
this);
54 QString LineShiftFilter::getImageDescription()
const {
55 QString description = AbstractFilter::getImageDescription();
56 if (getMinForSuccess() == 1)
57 description +=
"measure that has a line shift which is ";
59 description +=
"measures that have line shifts which are ";
61 description += descriptionSuffix();
66 QString LineShiftFilter::getPointDescription()
const {
67 return getImageDescription();
71 QString LineShiftFilter::getMeasureDescription()
const {
72 return "have line shifts which are " + descriptionSuffix();
This is free and unencumbered software released into the public domain.