diff options
Diffstat (limited to 'remoting/base/compressor.h')
-rw-r--r-- | remoting/base/compressor.h | 25 |
1 files changed, 9 insertions, 16 deletions
diff --git a/remoting/base/compressor.h b/remoting/base/compressor.h index 4c242bd..fd4c412 100644 --- a/remoting/base/compressor.h +++ b/remoting/base/compressor.h @@ -21,27 +21,20 @@ class Compressor { // Compress |input_data| with |input_size| bytes. // // |output_data| is provided by the caller and |output_size| is the - // size of |output_data|. + // size of |output_data|. |output_size| must be greater than 0. + // + // |input_size| is set to 0 to indicate the end of input stream. // // Compressed data is written to |output_data|. |consumed| will // contain the number of bytes consumed from the input. |written| // contains the number of bytes written to output. - virtual void Write(const uint8* input_data, int input_size, - uint8* output_data, int output_size, - int* consumed, int* written) = 0; - - // Flush all the remaining data in the compressor. - // - // |output_data| is provided by the caller and |output_size| is called - // with the size of |output_data|. - // - // Output data is written to |output_data| and |written| contains the - // number of bytes written. // - // Returns true if |output_data| is not large enough to carry all - // compressed data and caller needs to call Flush() again. - virtual bool Flush(uint8* output_data, int output_size, - int* written) = 0; + // Returns true if this method needs to be called again because + // there is more data to be written out. This is particularly + // useful for end of the compression stream. + virtual bool Process(const uint8* input_data, int input_size, + uint8* output_data, int output_size, + int* consumed, int* written) = 0; }; } // namespace remoting |