Warn if there is more than one property of a given type that is currently dynamic. There may be more than one property of a given type, but only one will respond to parameter updates, the others will use their original parameter values.
| 422 | // be more than one property of a given type, but only one will respond to parameter updates, the |
| 423 | // others will use their original parameter values. |
| 424 | void OpRcPtrVec::validateDynamicProperties() |
| 425 | { |
| 426 | // Empty shared pointers. |
| 427 | DynamicPropertyDoubleImplRcPtr dpExposure; |
| 428 | DynamicPropertyDoubleImplRcPtr dpContrast; |
| 429 | DynamicPropertyDoubleImplRcPtr dpGamma; |
| 430 | DynamicPropertyGradingPrimaryImplRcPtr dpGradingPrimary; |
| 431 | DynamicPropertyGradingRGBCurveImplRcPtr dpGradingRGBCurve; |
| 432 | DynamicPropertyGradingHueCurveImplRcPtr dpGradingHueCurve; |
| 433 | DynamicPropertyGradingToneImplRcPtr dpGradingTone; |
| 434 | |
| 435 | for (auto op : m_ops) |
| 436 | { |
| 437 | // Each property can only be there once. |
| 438 | ValidateDynamicProperty(op, dpExposure, DYNAMIC_PROPERTY_EXPOSURE); |
| 439 | ValidateDynamicProperty(op, dpContrast, DYNAMIC_PROPERTY_CONTRAST); |
| 440 | ValidateDynamicProperty(op, dpGamma, DYNAMIC_PROPERTY_GAMMA); |
| 441 | ValidateDynamicProperty(op, dpGradingPrimary, DYNAMIC_PROPERTY_GRADING_PRIMARY); |
| 442 | ValidateDynamicProperty(op, dpGradingRGBCurve, DYNAMIC_PROPERTY_GRADING_RGBCURVE); |
| 443 | ValidateDynamicProperty(op, dpGradingHueCurve, DYNAMIC_PROPERTY_GRADING_HUECURVE); |
| 444 | ValidateDynamicProperty(op, dpGradingTone, DYNAMIC_PROPERTY_GRADING_TONE); |
| 445 | } |
| 446 | } |
| 447 | |
| 448 | std::string OpRcPtrVec::getCacheID() const |
| 449 | { |