OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "media/base/media_log.h" | 5 #include "media/base/media_log.h" |
6 | 6 |
7 #include "base/atomic_sequence_num.h" | 7 #include "base/atomic_sequence_num.h" |
8 #include "base/logging.h" | 8 #include "base/logging.h" |
9 | 9 |
10 namespace media { | 10 namespace media { |
11 | 11 |
12 // A count of all MediaLogs created on this render process. | 12 // A count of all MediaLogs created on this render process. |
13 // Used to generate unique ids. | 13 // Used to generate unique ids. |
14 static base::AtomicSequenceNumber media_log_count(base::LINKER_INITIALIZED); | 14 static base::AtomicSequenceNumber media_log_count(base::LINKER_INITIALIZED); |
15 | 15 |
16 const char* MediaLog::EventTypeToString(MediaLogEvent::Type type) { | 16 const char* MediaLog::EventTypeToString(MediaLogEvent::Type type) { |
17 switch (type) { | 17 switch (type) { |
18 case MediaLogEvent::CREATING: | 18 case MediaLogEvent::CREATING: |
19 return "CREATING"; | 19 return "CREATING"; |
20 case MediaLogEvent::DESTROYING: | 20 case MediaLogEvent::DESTROYING: |
21 return "DESTROYING"; | 21 return "DESTROYING"; |
22 case MediaLogEvent::LOAD: | 22 case MediaLogEvent::LOAD: |
23 return "LOAD"; | 23 return "LOAD"; |
24 case MediaLogEvent::PLAY: | 24 case MediaLogEvent::PLAY: |
25 return "PLAY"; | 25 return "PLAY"; |
26 case MediaLogEvent::PAUSE: | 26 case MediaLogEvent::PAUSE: |
27 return "PAUSE"; | 27 return "PAUSE"; |
| 28 case MediaLogEvent::BUFFERED_EXTENTS_CHANGED: |
| 29 return "BUFFERED_EXTENTS_CHANGED"; |
28 } | 30 } |
29 NOTREACHED(); | 31 NOTREACHED(); |
30 return NULL; | 32 return NULL; |
31 } | 33 } |
32 | 34 |
33 MediaLog::MediaLog() { | 35 MediaLog::MediaLog() { |
34 id_ = media_log_count.GetNext(); | 36 id_ = media_log_count.GetNext(); |
35 } | 37 } |
36 | 38 |
37 MediaLog::~MediaLog() {} | 39 MediaLog::~MediaLog() {} |
38 | 40 |
39 void MediaLog::Load(const std::string& url) { | 41 void MediaLog::Load(const std::string& url) { |
40 MediaLogEvent* event = CreateEvent(MediaLogEvent::LOAD); | 42 MediaLogEvent* event = CreateEvent(MediaLogEvent::LOAD); |
41 event->params.SetString("url", url); | 43 event->params.SetString("url", url); |
42 AddEvent(event); | 44 AddEvent(event); |
43 } | 45 } |
44 | 46 |
| 47 void MediaLog::SetBufferedExtents(size_t start, size_t current, size_t end) { |
| 48 MediaLogEvent* event = CreateEvent(MediaLogEvent::BUFFERED_EXTENTS_CHANGED); |
| 49 event->params.SetInteger("buffer_start", start); |
| 50 event->params.SetInteger("buffer_current", current); |
| 51 event->params.SetInteger("buffer_end", end); |
| 52 AddEvent(event); |
| 53 } |
| 54 |
45 void MediaLog::AddEventOfType(MediaLogEvent::Type type) { | 55 void MediaLog::AddEventOfType(MediaLogEvent::Type type) { |
46 MediaLogEvent* event = CreateEvent(type); | 56 MediaLogEvent* event = CreateEvent(type); |
47 AddEvent(event); | 57 AddEvent(event); |
48 } | 58 } |
49 | 59 |
50 MediaLogEvent* MediaLog::CreateEvent(MediaLogEvent::Type type) { | 60 MediaLogEvent* MediaLog::CreateEvent(MediaLogEvent::Type type) { |
51 MediaLogEvent* event = new MediaLogEvent; | 61 MediaLogEvent* event = new MediaLogEvent; |
52 event->id = id_; | 62 event->id = id_; |
53 event->type = type; | 63 event->type = type; |
54 event->time = base::Time::Now(); | 64 event->time = base::Time::Now(); |
55 return event; | 65 return event; |
56 } | 66 } |
57 | 67 |
58 void MediaLog::AddEvent(MediaLogEvent* event) {} | 68 void MediaLog::AddEvent(MediaLogEvent* event) {} |
59 | 69 |
60 } //namespace media | 70 } //namespace media |
OLD | NEW |