Rework GrSamplerParams to be more compact and use its own wrap mode enum.

The main change is to make GrSamplerParams smaller by making its enums have byte-sized underlying types. The rest is cosmetic.

Change-Id: Ib71ea50612d24619a85e463826c6b8dfb9b445e3
Reviewed-on: https://skia-review.googlesource.com/43200
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
diff --git a/src/gpu/GrProcessor.cpp b/src/gpu/GrProcessor.cpp
index 148c011..7ea5972 100644
--- a/src/gpu/GrProcessor.cpp
+++ b/src/gpu/GrProcessor.cpp
@@ -9,7 +9,7 @@
 #include "GrContext.h"
 #include "GrGeometryProcessor.h"
 #include "GrMemoryPool.h"
-#include "GrSamplerParams.h"
+#include "GrSamplerState.h"
 #include "GrTextureProxy.h"
 #include "GrXferProcessor.h"
 #include "SkSpinlock.h"
@@ -220,33 +220,33 @@
 GrResourceIOProcessor::TextureSampler::TextureSampler() {}
 
 GrResourceIOProcessor::TextureSampler::TextureSampler(sk_sp<GrTextureProxy> proxy,
-                                                      const GrSamplerParams& params) {
-    this->reset(std::move(proxy), params);
+                                                      const GrSamplerState& samplerState) {
+    this->reset(std::move(proxy), samplerState);
 }
 
 GrResourceIOProcessor::TextureSampler::TextureSampler(sk_sp<GrTextureProxy> proxy,
-                                                      GrSamplerParams::FilterMode filterMode,
-                                                      SkShader::TileMode tileXAndY,
+                                                      GrSamplerState::Filter filterMode,
+                                                      GrSamplerState::WrapMode wrapXAndY,
                                                       GrShaderFlags visibility) {
-    this->reset(std::move(proxy), filterMode, tileXAndY, visibility);
+    this->reset(std::move(proxy), filterMode, wrapXAndY, visibility);
 }
 
 void GrResourceIOProcessor::TextureSampler::reset(sk_sp<GrTextureProxy> proxy,
-                                                  const GrSamplerParams& params,
+                                                  const GrSamplerState& samplerState,
                                                   GrShaderFlags visibility) {
-    fParams = params;
+    fSamplerState = samplerState;
     fProxyRef.setProxy(std::move(proxy), kRead_GrIOType);
-    fParams.setFilterMode(SkTMin(params.filterMode(), this->proxy()->highestFilterMode()));
+    fSamplerState.setFilterMode(SkTMin(samplerState.filter(), this->proxy()->highestFilterMode()));
     fVisibility = visibility;
 }
 
 void GrResourceIOProcessor::TextureSampler::reset(sk_sp<GrTextureProxy> proxy,
-                                                  GrSamplerParams::FilterMode filterMode,
-                                                  SkShader::TileMode tileXAndY,
+                                                  GrSamplerState::Filter filterMode,
+                                                  GrSamplerState::WrapMode wrapXAndY,
                                                   GrShaderFlags visibility) {
     fProxyRef.setProxy(std::move(proxy), kRead_GrIOType);
     filterMode = SkTMin(filterMode, this->proxy()->highestFilterMode());
-    fParams.reset(tileXAndY, filterMode);
+    fSamplerState = GrSamplerState(wrapXAndY, filterMode);
     fVisibility = visibility;
 }