ossu b01c7816a8 Added functional variants of Buffer::SetData and Buffer::AppendData.
They are invoked with the maximum size of the data to be added, and a
callable that generates that data, like this:

buffer.AppendData(10, [] (rtc::ArrayView<uint8_t> av) {
    for (uint8_t i = 0; i != 5; ++i)
      av[i] = i;

    return 5;
  });

The callable returns the number of bytes actually written, and the
final Buffer size will be adjusted accordingly. SetData and AppendData
both return the number of bytes added (i.e. the return value of the
callable).

These versions will be useful when converting AudioEncoder::Encode to use Buffer rather than raw pointers.

Also added a few tests for the new functionality.

Review URL: https://codereview.webrtc.org/1717273002

Cr-Commit-Position: refs/heads/master@{#11733}
2016-02-24 09:06:02 +00:00
..
2016-02-23 17:56:49 +00:00
2016-02-23 10:35:41 +00:00
2015-11-16 19:02:02 +00:00
2016-02-03 12:30:10 +00:00
2015-09-08 12:36:23 +00:00

Name: WebRTC
URL: http://www.webrtc.org
Version: 90
License: BSD
License File: LICENSE

Description:
WebRTC provides real time voice and video processing
functionality to enable the implementation of 
PeerConnection/MediaStream.

Third party code used in this project is described 
in the file LICENSE_THIRD_PARTY.