Commit 6ddb98217d658912c53a9eea10cc4c5d5387295a

Authored by Josh Klontz
1 parent 9b89b0e3

added demographic filters setting

sdk/openbr_plugin.cpp
@@ -455,6 +455,8 @@ QString Object::argument(int index) const @@ -455,6 +455,8 @@ QString Object::argument(int index) const
455 return "[" + strings.join(",") + "]"; 455 return "[" + strings.join(",") + "]";
456 } else if (type == "br::Transform*") { 456 } else if (type == "br::Transform*") {
457 return variant.value<Transform*>()->description(); 457 return variant.value<Transform*>()->description();
  458 + } else if (type == "QStringList") {
  459 + return "[" + variant.toStringList().join(",") + "]";
458 } 460 }
459 461
460 return variant.toString(); 462 return variant.toString();
@@ -488,6 +490,10 @@ void Object::store(QDataStream &amp;stream) const @@ -488,6 +490,10 @@ void Object::store(QDataStream &amp;stream) const
488 stream << property.read(this).toFloat(); 490 stream << property.read(this).toFloat();
489 } else if (type == "double") { 491 } else if (type == "double") {
490 stream << property.read(this).toDouble(); 492 stream << property.read(this).toDouble();
  493 + } else if (type == "QString") {
  494 + stream << property.read(this).toString();
  495 + } else if (type == "QStringList") {
  496 + stream << property.read(this).toStringList();
491 } else { 497 } else {
492 qFatal("Can't serialize value of type: %s", qPrintable(type)); 498 qFatal("Can't serialize value of type: %s", qPrintable(type));
493 } 499 }
@@ -524,6 +530,14 @@ void Object::load(QDataStream &amp;stream) @@ -524,6 +530,14 @@ void Object::load(QDataStream &amp;stream)
524 double value; 530 double value;
525 stream >> value; 531 stream >> value;
526 property.write(this, value); 532 property.write(this, value);
  533 + } else if (type == "QString") {
  534 + QString value;
  535 + stream >> value;
  536 + property.write(this, value);
  537 + } else if (type == "QStringList") {
  538 + QStringList value;
  539 + stream >> value;
  540 + property.write(this, value);
527 } else { 541 } else {
528 qFatal("Can't serialize value of type: %s", qPrintable(type)); 542 qFatal("Can't serialize value of type: %s", qPrintable(type));
529 } 543 }
@@ -564,6 +578,8 @@ void Object::setProperty(const QString &amp;name, const QString &amp;value) @@ -564,6 +578,8 @@ void Object::setProperty(const QString &amp;name, const QString &amp;value)
564 } 578 }
565 } else if (type == "br::Transform*") { 579 } else if (type == "br::Transform*") {
566 variant.setValue(Transform::make(value, this)); 580 variant.setValue(Transform::make(value, this));
  581 + } else if (type == "QStringList") {
  582 + variant.setValue(parse(value.mid(1, value.size()-2)));
567 } else if (type == "bool") { 583 } else if (type == "bool") {
568 if (value.isEmpty()) variant = true; 584 if (value.isEmpty()) variant = true;
569 else if (value == "false") variant = false; 585 else if (value == "false") variant = false;
sdk/openbr_plugin.h
@@ -485,6 +485,12 @@ public: @@ -485,6 +485,12 @@ public:
485 Q_PROPERTY(bool enrollAll READ get_enrollAll WRITE set_enrollAll RESET reset_enrollAll) 485 Q_PROPERTY(bool enrollAll READ get_enrollAll WRITE set_enrollAll RESET reset_enrollAll)
486 BR_PROPERTY(bool, enrollAll, false) 486 BR_PROPERTY(bool, enrollAll, false)
487 487
  488 + /*!
  489 + * \brief Keys to use when matching templates to automatically determine non-match based on template metadata.
  490 + */
  491 + Q_PROPERTY(QStringList demographicFilters READ get_demographicFilters WRITE set_demographicFilters)
  492 + BR_PROPERTY(QStringList, demographicFilters, QStringList())
  493 +
488 QHash<QString,QString> abbreviations; /*!< \brief Used by br::Transform::make() to expand abbreviated algorithms into their complete definitions. */ 494 QHash<QString,QString> abbreviations; /*!< \brief Used by br::Transform::make() to expand abbreviated algorithms into their complete definitions. */
489 QHash<QString,int> classes; /*!< \brief Used by classifiers to associate text class labels with unique integers IDs. */ 495 QHash<QString,int> classes; /*!< \brief Used by classifiers to associate text class labels with unique integers IDs. */
490 QTime startTime; /*!< \brief Used to estimate timeRemaining(). */ 496 QTime startTime; /*!< \brief Used to estimate timeRemaining(). */