blob: 204b27dd4cf77a9f3bc083304407aeb326c6aeb6 [file] [log] [blame]
epoger@google.comec3ed6a2011-07-28 14:26:00 +00001/*
2 * Copyright 2006 The Android Open Source Project
3 *
4 * Use of this source code is governed by a BSD-style license that can be
5 * found in the LICENSE file.
6 */
reed@android.com8a1c16f2008-12-17 15:59:43 +00007#ifndef SkBitmapProcShader_DEFINED
8#define SkBitmapProcShader_DEFINED
9
reed1ec04d92016-08-05 12:07:41 -070010#include "SkImagePriv.h"
reed@android.com8a1c16f2008-12-17 15:59:43 +000011#include "SkShader.h"
reed@android.com8a1c16f2008-12-17 15:59:43 +000012
reed013e9e32015-09-15 14:46:27 -070013class SkBitmapProvider;
bungemanf3c15b72015-08-19 11:56:48 -070014
reed320a40d2016-08-02 06:12:06 -070015class SkBitmapProcLegacyShader : public SkShader {
reed@google.com7c2f27d2011-03-07 19:29:00 +000016private:
reed7a4d8472015-09-15 13:33:58 -070017 friend class SkImageShader;
18
reedd8829012016-03-04 11:07:43 -080019 static size_t ContextSize(const ContextRec&, const SkImageInfo& srcInfo);
reed013e9e32015-09-15 14:46:27 -070020 static Context* MakeContext(const SkShader&, TileMode tmx, TileMode tmy,
Herb Derby83e939b2017-02-07 14:25:11 -050021 const SkBitmapProvider&, const ContextRec&, SkArenaAlloc* alloc);
reed7a4d8472015-09-15 13:33:58 -070022
reed@android.com8a1c16f2008-12-17 15:59:43 +000023 typedef SkShader INHERITED;
24};
25
reed@android.com8a1c16f2008-12-17 15:59:43 +000026#endif