tree c5ac9163b05547e022a6651657c4d39c681c3160
parent 03eb63c1148be2c7267a8a01796dce700fe22fb7
author Dmitry Kovalev <dkovalev@google.com> 1390595217 -0800
committer Dmitry Kovalev <dkovalev@google.com> 1390607848 -0800

Renaming INTERPOLATION_TYPE to INTERP_FILTER.

Corresponding renames:
  subpel_kernel              => interp_kernel
  vp9_get_filter_kernel()    => vp9_get_interp_kernel()
  pred_filter_type           => pred_interp_filter
  adaptive_pred_filter_type  => adaptive_pred_interp_filter
  mcomp_filter_type          => interp_filter
  read_interp_filter_type()  => read_interp_filter()
  write_interp_filter_type() => write_interp_filter()
  fix_mcomp_filter_type()    => fix_interp_filter()

Change-Id: I1fa61fa1dc81ebbf043457c3ee2d8d4515bee6d3
