Home | History | Annotate | Download | only in opts
      1 /*
      2  * Copyright 2013 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 
      8 #ifndef SkBitmapFilter_opts_sse2_DEFINED
      9 #define SkBitmapFilter_opts_sse2_DEFINED
     10 
     11 #include "SkBitmapProcState.h"
     12 #include "SkConvolver.h"
     13 
     14 void highQualityFilter_SSE2(const SkBitmapProcState &s, int x, int y,
     15                             SkPMColor *SK_RESTRICT colors, int count);
     16 
     17 
     18 void convolveVertically_SSE2(const SkConvolutionFilter1D::ConvolutionFixed* filter_values,
     19                              int filter_length,
     20                              unsigned char* const* source_data_rows,
     21                              int pixel_width,
     22                              unsigned char* out_row,
     23                              bool has_alpha);
     24 void convolve4RowsHorizontally_SSE2(const unsigned char* src_data[4],
     25                                     const SkConvolutionFilter1D& filter,
     26                                     unsigned char* out_row[4]);
     27 void convolveHorizontally_SSE2(const unsigned char* src_data,
     28                                const SkConvolutionFilter1D& filter,
     29                                unsigned char* out_row,
     30                                bool has_alpha);
     31 void applySIMDPadding_SSE2(SkConvolutionFilter1D* filter);
     32 
     33 #endif
     34