SkArithmeticImageFilter.h 880 B

1234567891011121314151617181920212223242526272829303132333435
  1. /*
  2. * Copyright 2016 Google Inc.
  3. *
  4. * Use of this source code is governed by a BSD-style license that can be
  5. * found in the LICENSE file.
  6. */
  7. #ifndef SkArithmeticImageFilter_DEFINED
  8. #define SkArithmeticImageFilter_DEFINED
  9. #include "SkImageFilter.h"
  10. struct ArithmeticFPInputs {
  11. ArithmeticFPInputs() {
  12. memset(this, 0, sizeof(*this));
  13. }
  14. float k[4];
  15. bool enforcePMColor;
  16. };
  17. class SK_API SkArithmeticImageFilter {
  18. public:
  19. static sk_sp<SkImageFilter> Make(float k1, float k2, float k3, float k4, bool enforcePMColor,
  20. sk_sp<SkImageFilter> background,
  21. sk_sp<SkImageFilter> foreground,
  22. const SkImageFilter::CropRect* cropRect);
  23. static void RegisterFlattenables();
  24. private:
  25. SkArithmeticImageFilter(); // can't instantiate
  26. };
  27. #endif