- add sources.
[platform/framework/web/crosswalk.git] / src / media / cast / logging / logging_internal.cc
1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #include "media/cast/logging/logging_internal.h"
6
7 namespace media {
8 namespace cast {
9
10 FrameLogData::FrameLogData(base::TickClock* clock)
11     : clock_(clock),
12       frame_map_() {}
13
14 FrameLogData::~FrameLogData() {}
15
16 void FrameLogData::Insert(uint32 rtp_timestamp, uint8 frame_id) {
17   FrameEvent info;
18   InsertBase(rtp_timestamp, frame_id, info);
19 }
20
21 void FrameLogData::InsertWithSize(
22       uint32 rtp_timestamp, uint8 frame_id, int size) {
23   FrameEvent info;
24   info.size = size;
25   InsertBase(rtp_timestamp, frame_id, info);
26 }
27
28 void FrameLogData::InsertWithDelay(
29     uint32 rtp_timestamp, uint8 frame_id, base::TimeDelta delay) {
30   FrameEvent info;
31   info.delay_delta = delay;
32   InsertBase(rtp_timestamp, frame_id, info);
33 }
34
35 void FrameLogData::InsertBase(
36     uint32 rtp_timestamp, uint8 frame_id, FrameEvent info) {
37   info.timestamp = clock_->NowTicks();
38   info.frame_id = frame_id;
39   frame_map_.insert(std::make_pair(rtp_timestamp, info));
40 }
41
42 PacketLogData::PacketLogData(base::TickClock* clock)
43     : clock_(clock),
44       packet_map_() {}
45
46 PacketLogData::~PacketLogData() {}
47
48 void PacketLogData::Insert(uint32 rtp_timestamp,
49     uint8 frame_id, uint16 packet_id, uint16 max_packet_id, int size) {
50   PacketEvent info;
51   info.size = size;
52   info.max_packet_id = max_packet_id;
53   info.frame_id = frame_id;
54   info.timestamp = clock_->NowTicks();
55   // Is this a new frame?
56   PacketMap::iterator it = packet_map_.find(rtp_timestamp);
57   if (it == packet_map_.end()) {
58     // New rtp_timestamp id - create base packet map.
59     BasePacketMap base_map;
60     base_map.insert(std::make_pair(packet_id, info));
61     packet_map_.insert(std::make_pair(rtp_timestamp, base_map));
62   } else {
63     // Existing rtp_timestamp.
64     it->second.insert(std::make_pair(packet_id, info));
65   }
66 }
67
68 GenericLogData::GenericLogData(base::TickClock* clock)
69     : clock_(clock) {}
70
71 GenericLogData::~GenericLogData() {}
72
73 void GenericLogData::Insert(int data) {
74   data_.push_back(data);
75   timestamp_.push_back(clock_->NowTicks());
76 }
77
78 }  // namespace cast
79 }  // namespace media