Don't test pipe modes nobody uses.
authormtklein <mtklein@chromium.org>
Wed, 21 Jan 2015 21:18:51 +0000 (13:18 -0800)
committerCommit bot <commit-bot@chromium.org>
Wed, 21 Jan 2015 21:18:51 +0000 (13:18 -0800)
SkDeferredCanvas uses a simple pipe: no cross-process, no shared-address, etc.
(see src/utils/SkDeferredCanvas.cpp:306).

We could just remove these modes from the bot configs, but I'd like to take the
opportunity to simplify the DM code too.  I'll happily volunteer to put things
back should we decide we want to test these modes.

BUG=skia:

Review URL: https://codereview.chromium.org/861303003

dm/DM.cpp
dm/DMSrcSink.cpp
dm/DMSrcSink.h

index ae544058d3effe071d6603197f0665f1646b72b2..e90a3f5f0c79ce56cc2f2a1b360f08cc10f31056 100644 (file)
--- a/dm/DM.cpp
+++ b/dm/DM.cpp
@@ -171,16 +171,10 @@ static Sink* create_sink(const char* tag) {
 
 static Sink* create_via(const char* tag, Sink* wrapped) {
 #define VIA(t, via, ...) if (0 == strcmp(t, tag)) { return new via(__VA_ARGS__); }
+    VIA("pipe",      ViaPipe,          wrapped);
     VIA("serialize", ViaSerialization, wrapped);
-
-    VIA("tiles",    ViaTiles, 256, 256,               NULL, wrapped);
-    VIA("tiles_rt", ViaTiles, 256, 256, new SkRTreeFactory, wrapped);
-
-    const int xp = SkGPipeWriter::kCrossProcess_Flag,
-              sa = xp | SkGPipeWriter::kSharedAddressSpace_Flag;
-    VIA("pipe",    ViaPipe,  0, wrapped);
-    VIA("pipe_xp", ViaPipe, xp, wrapped);
-    VIA("pipe_sa", ViaPipe, sa, wrapped);
+    VIA("tiles",     ViaTiles, 256, 256,               NULL, wrapped);
+    VIA("tiles_rt",  ViaTiles, 256, 256, new SkRTreeFactory, wrapped);
 
     if (FLAGS_matrix.count() == 9) {
         SkMatrix m;
index fd9943533bc8964ed1a4586b59f08778c5cfa066..9be17d1c32c68cf080c57d6e554f989a511c9e14 100644 (file)
@@ -230,25 +230,25 @@ Error ViaMatrix::draw(const Src& src, SkBitmap* bitmap, SkWStream* stream) const
 
 /*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
 
-ViaPipe::ViaPipe(int flags, Sink* sink) : fFlags((SkGPipeWriter::Flags)flags), fSink(sink) {}
+ViaPipe::ViaPipe(Sink* sink) : fSink(sink) {}
 
 Error ViaPipe::draw(const Src& src, SkBitmap* bitmap, SkWStream* stream) const {
-    // We turn our arguments into a Src, then draw that Src into our Sink to fill bitmap or stream.
+    // We turn ourselves into another Src that draws our argument into bitmap/stream via pipe.
     struct ProxySrc : public Src {
         const Src& fSrc;
-        SkGPipeWriter::Flags fFlags;
-        ProxySrc(const Src& src, SkGPipeWriter::Flags flags) : fSrc(src), fFlags(flags) {}
+        ProxySrc(const Src& src) : fSrc(src) {}
 
         Error draw(SkCanvas* canvas) const SK_OVERRIDE {
             SkISize size = this->size();
             // TODO: is DecodeMemory really required? Might help RAM usage to be lazy if we can.
             PipeController controller(canvas, &SkImageDecoder::DecodeMemory);
             SkGPipeWriter pipe;
-            return fSrc.draw(pipe.startRecording(&controller, fFlags, size.width(), size.height()));
+            const uint32_t kFlags = 0; // We mirror SkDeferredCanvas, which doesn't use any flags.
+            return fSrc.draw(pipe.startRecording(&controller, kFlags, size.width(), size.height()));
         }
         SkISize size() const SK_OVERRIDE { return fSrc.size(); }
         Name name() const SK_OVERRIDE { sk_throw(); return ""; }  // No one should be calling this.
-    } proxy(src, fFlags);
+    } proxy(src);
     return fSink->draw(proxy, bitmap, stream);
 }
 
index df92ff3fb93d9bea09628e4096afedd3bd7eec90..31c31308ecc05d3f7ac4764e4b92da7fc9fef00f 100644 (file)
@@ -133,13 +133,12 @@ private:
 
 class ViaPipe : public Sink {
 public:
-    ViaPipe(int flags, Sink*);
+    explicit ViaPipe(Sink*);
 
     Error draw(const Src&, SkBitmap*, SkWStream*) const SK_OVERRIDE;
     int enclave() const SK_OVERRIDE { return fSink->enclave(); }
     const char* fileExtension() const SK_OVERRIDE { return fSink->fileExtension(); }
 private:
-    SkGPipeWriter::Flags fFlags;
     SkAutoTDelete<Sink>  fSink;
 };