webrtc/talk
tommi@webrtc.org 4fb7e25843 Update StatsReport and by extension StatsCollector to reduce data copying.
Summary of changes:
* We're now using an enum for types instead of strings which both eliminates unecessary string creations+copies and further restricts the type to a known set at compile time.
* IDs are now a separate type instead of a string, copying of Values is not possible and values are const to allow grabbing references outside of the statscollector.
* StatsReport member variables are no longer public.
* Consolidated code in StatsCollector (e.g. merged PrepareLocalReport and PrepareRemoteReport).
* Refactored methods that forced copies of string (e.g. ExtractValueFromReport).
* More asserts for thread correctness.
* Using std::list for the StatsSet instead of a set since order is not important and updates are more efficient in list<>.

BUG=2822
R=hta@webrtc.org, perkj@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/40439004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@8110 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-21 11:36:18 +00:00
..
app/webrtc Update StatsReport and by extension StatsCollector to reduce data copying. 2015-01-21 11:36:18 +00:00
build Update libjingle license statements at top of talk files for consistency 2015-01-20 21:36:13 +00:00
examples Update libjingle license statements at top of talk files for consistency 2015-01-20 21:36:13 +00:00
media Update libjingle license statements at top of talk files for consistency 2015-01-20 21:36:13 +00:00
session/media Update libjingle license statements at top of talk files for consistency 2015-01-20 21:36:13 +00:00
codereview.settings Add codereview.settings to the /talk subdirectory 2014-12-05 13:47:37 +00:00
COPYING Libjingle in webrtc needs updated AUTHORS, COPYING, LICENSE_THIRD_PARTY AND README. 2013-07-16 18:04:56 +00:00
libjingle_examples.gyp Update libjingle license statements at top of talk files for consistency 2015-01-20 21:36:13 +00:00
libjingle_media_unittest.isolate Update libjingle license statements at top of talk files for consistency 2015-01-20 21:36:13 +00:00
libjingle_p2p_unittest.isolate Update libjingle license statements at top of talk files for consistency 2015-01-20 21:36:13 +00:00
libjingle_peerconnection_unittest.isolate Update libjingle license statements at top of talk files for consistency 2015-01-20 21:36:13 +00:00
libjingle_sound_unittest.isolate Update libjingle license statements at top of talk files for consistency 2015-01-20 21:36:13 +00:00
libjingle_tests.gyp Update libjingle license statements at top of talk files for consistency 2015-01-20 21:36:13 +00:00
libjingle_unittest.isolate Update libjingle license statements at top of talk files for consistency 2015-01-20 21:36:13 +00:00
libjingle.gyp Update libjingle license statements at top of talk files for consistency 2015-01-20 21:36:13 +00:00
LICENSE_THIRD_PARTY Libjingle in webrtc needs updated AUTHORS, COPYING, LICENSE_THIRD_PARTY AND README. 2013-07-16 18:04:56 +00:00
OWNERS OWNERS: Remove tomasl@ and mallinath@ 2014-11-24 10:05:05 +00:00
PRESUBMIT.py Update libjingle license statements at top of talk files for consistency 2015-01-20 21:36:13 +00:00