summaryrefslogtreecommitdiffstats
path: root/ui/ozone/public/native_pixmap.h
diff options
context:
space:
mode:
Diffstat (limited to 'ui/ozone/public/native_pixmap.h')
-rw-r--r--ui/ozone/public/native_pixmap.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/ui/ozone/public/native_pixmap.h b/ui/ozone/public/native_pixmap.h
index a1204f7..0251a12 100644
--- a/ui/ozone/public/native_pixmap.h
+++ b/ui/ozone/public/native_pixmap.h
@@ -5,6 +5,7 @@
#ifndef UI_OZONE_PUBLIC_NATIVE_PIXMAP_H_
#define UI_OZONE_PUBLIC_NATIVE_PIXMAP_H_
+#include "base/bind.h"
#include "base/memory/ref_counted.h"
#include "ui/gfx/native_widget_types.h"
#include "ui/gfx/overlay_transform.h"
@@ -43,6 +44,15 @@ class NativePixmap : public base::RefCountedThreadSafe<NativePixmap> {
const gfx::Rect& display_bounds,
const gfx::RectF& crop_rect) = 0;
+ // This represents a callback function pointing to scaling unit like VPP
+ // to do scaling operations on native pixmap with required size.
+ typedef base::Callback<scoped_refptr<NativePixmap>(gfx::Size)>
+ ScalingCallback;
+
+ // Set callback function for the pixmap used for scaling.
+ virtual void SetScalingCallback(const ScalingCallback& scaling_callback) = 0;
+ virtual scoped_refptr<NativePixmap> GetScaledPixmap(gfx::Size new_size) = 0;
+
protected:
virtual ~NativePixmap() {}