1 2 /* 3 * Copyright 2013 Google Inc. 4 * 5 * Use of this source code is governed by a BSD-style license that can be 6 * found in the LICENSE file. 7 */ 8 9 10 #ifndef SkBitmapFilter_opts_sse2_DEFINED 11 #define SkBitmapFilter_opts_sse2_DEFINED 12 13 #include "SkBitmapProcState.h" 14 #include "SkConvolver.h" 15 16 void highQualityFilter_ScaleOnly_SSE2(const SkBitmapProcState &s, int x, int y, 17 SkPMColor *SK_RESTRICT colors, int count); 18 void highQualityFilter_SSE2(const SkBitmapProcState &s, int x, int y, 19 SkPMColor *SK_RESTRICT colors, int count); 20 21 22 void convolveVertically_SSE2(const SkConvolutionFilter1D::ConvolutionFixed* filter_values, 23 int filter_length, 24 unsigned char* const* source_data_rows, 25 int pixel_width, 26 unsigned char* out_row, 27 bool has_alpha); 28 void convolve4RowsHorizontally_SSE2(const unsigned char* src_data[4], 29 const SkConvolutionFilter1D& filter, 30 unsigned char* out_row[4]); 31 void convolveHorizontally_SSE2(const unsigned char* src_data, 32 const SkConvolutionFilter1D& filter, 33 unsigned char* out_row, 34 bool has_alpha); 35 void applySIMDPadding_SSE2(SkConvolutionFilter1D* filter); 36 37 #endif 38