| Index: remoting/base/decoder.h
|
| diff --git a/remoting/base/decoder.h b/remoting/base/decoder.h
|
| index 75ffa03b25f4fc6ac141af1cf98a5635947a35bc..c8c77a779ee568106fbe45bb9a89cb20539eb0b3 100644
|
| --- a/remoting/base/decoder.h
|
| +++ b/remoting/base/decoder.h
|
| @@ -90,6 +90,30 @@ class Decoder {
|
| // of BeginDecode() / EndDecode().
|
| virtual bool IsStarted() { return started_; }
|
|
|
| + // --- NEW API ---
|
| + // TODO(ajwong): This API is incorrect in the face of a streaming decode
|
| + // protocol like VP8. However, it breaks the layering abstraction by
|
| + // depending on the network packet protocol buffer type. I'm going to go
|
| + // forward with it as is, and then refactor again to support streaming
|
| + // decodes.
|
| +
|
| + // Initializes the decoder to draw into the given |frame|. The |clip|
|
| + // specifies the region to draw into. The clip region must fit inside
|
| + // the dimensions of frame. Failure to do so will CHECK Fail.
|
| + virtual void Initialize(scoped_refptr<media::VideoFrame> frame,
|
| + const gfx::Rect& clip) {}
|
| +
|
| + // Reset the decoder to an uninitialized state. Release all references to
|
| + // the initialized |frame|. Initialize() must be called before the decoder
|
| + // is used again.
|
| + virtual void Reset() {}
|
| +
|
| + // Feeds more data into the decoder.
|
| + virtual void DecodeBytes(const std::string& encoded_bytes) {}
|
| +
|
| + // Returns true if decoder is ready to accept data via ProcessRectangleData.
|
| + virtual bool IsReadyForData() { return false; }
|
| +
|
| protected:
|
| // Every decoder will have two internal states because there are three
|
| // kinds of messages send to PartialDecode().
|
|
|