Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(36)

Side by Side Diff: Source/core/platform/graphics/chromium/test/MockImageDecoder.h

Issue 23068027: Animated WebP: Optimize decoding in case of seeking (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@add_noblend_image
Patch Set: Fix assert fail on debug Created 7 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2012 Google Inc. All rights reserved. 2 * Copyright (C) 2012 Google Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions 5 * modification, are permitted provided that the following conditions
6 * are met: 6 * are met:
7 * 7 *
8 * 1. Redistributions of source code must retain the above copyright 8 * 1. Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * 2. Redistributions in binary form must reproduce the above copyright 10 * 2. Redistributions in binary form must reproduce the above copyright
(...skipping 16 matching lines...) Expand all
27 27
28 #include "core/platform/image-decoders/ImageDecoder.h" 28 #include "core/platform/image-decoders/ImageDecoder.h"
29 #include "wtf/PassOwnPtr.h" 29 #include "wtf/PassOwnPtr.h"
30 30
31 namespace WebCore { 31 namespace WebCore {
32 32
33 class MockImageDecoderClient { 33 class MockImageDecoderClient {
34 public: 34 public:
35 virtual void decoderBeingDestroyed() = 0; 35 virtual void decoderBeingDestroyed() = 0;
36 virtual void frameBufferRequested() = 0; 36 virtual void frameBufferRequested() = 0;
37 virtual ImageFrame::FrameStatus frameStatus() = 0; 37 virtual ImageFrame::Status status() = 0;
38 virtual size_t frameCount() = 0; 38 virtual size_t frameCount() = 0;
39 virtual int repetitionCount() const = 0; 39 virtual int repetitionCount() const = 0;
40 virtual float frameDuration() const = 0; 40 virtual float frameDuration() const = 0;
41 }; 41 };
42 42
43 class MockImageDecoder : public ImageDecoder { 43 class MockImageDecoder : public ImageDecoder {
44 public: 44 public:
45 static PassOwnPtr<MockImageDecoder> create(MockImageDecoderClient* client) { return adoptPtr(new MockImageDecoder(client)); } 45 static PassOwnPtr<MockImageDecoder> create(MockImageDecoderClient* client) { return adoptPtr(new MockImageDecoder(client)); }
46 46
47 MockImageDecoder(MockImageDecoderClient* client) 47 MockImageDecoder(MockImageDecoderClient* client)
(...skipping 28 matching lines...) Expand all
76 76
77 virtual int repetitionCount() const 77 virtual int repetitionCount() const
78 { 78 {
79 return m_client->repetitionCount(); 79 return m_client->repetitionCount();
80 } 80 }
81 81
82 virtual ImageFrame* frameBufferAtIndex(size_t) 82 virtual ImageFrame* frameBufferAtIndex(size_t)
83 { 83 {
84 m_client->frameBufferRequested(); 84 m_client->frameBufferRequested();
85 85
86 m_frameBufferCache[0].setStatus(m_client->frameStatus()); 86 m_frameBufferCache[0].setStatus(m_client->status());
87 return &m_frameBufferCache[0]; 87 return &m_frameBufferCache[0];
88 } 88 }
89 89
90 virtual bool frameIsCompleteAtIndex(size_t) const 90 virtual bool frameIsCompleteAtIndex(size_t) const
91 { 91 {
92 return m_client->frameStatus() == ImageFrame::FrameComplete; 92 return m_client->status() == ImageFrame::FrameComplete;
93 } 93 }
94 94
95 virtual float frameDurationAtIndex(size_t) const 95 virtual float frameDurationAtIndex(size_t) const
96 { 96 {
97 return m_client->frameDuration(); 97 return m_client->frameDuration();
98 } 98 }
99 99
100 private: 100 private:
101 MockImageDecoderClient* m_client; 101 MockImageDecoderClient* m_client;
102 }; 102 };
103 103
104 } // namespace WebCore 104 } // namespace WebCore
105 105
106 #endif // MockImageDecoder_h 106 #endif // MockImageDecoder_h
OLDNEW
« no previous file with comments | « Source/core/platform/graphics/chromium/ImageFrameGeneratorTest.cpp ('k') | Source/core/platform/image-decoders/ImageDecoder.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698