Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(846)

Side by Side Diff: webrtc/voice_engine/test/auto_test/fakes/fake_external_transport.cc

Issue 1343393003: Remove some dead code. (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: Created 5 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
1 /*
2 * Copyright (c) 2012 The WebRTC project authors. All Rights Reserved.
3 *
4 * Use of this source code is governed by a BSD-style license
5 * that can be found in the LICENSE file in the root of the source
6 * tree. An additional intellectual property rights grant can be found
7 * in the file PATENTS. All contributing project authors may
8 * be found in the AUTHORS file in the root of the source tree.
9 */
10
11 #include "webrtc/system_wrappers/interface/critical_section_wrapper.h"
12 #include "webrtc/system_wrappers/interface/event_wrapper.h"
13 #include "webrtc/system_wrappers/interface/sleep.h"
14 #include "webrtc/system_wrappers/interface/thread_wrapper.h"
15 #include "webrtc/voice_engine/include/voe_network.h"
16 #include "webrtc/voice_engine/test/auto_test/fakes/fake_external_transport.h"
17 #include "webrtc/voice_engine/voice_engine_defines.h"
18
19 FakeExternalTransport::FakeExternalTransport(webrtc::VoENetwork* ptr)
20 : my_network_(ptr),
21 lock_(NULL),
22 event_(NULL),
23 length_(0),
24 channel_(0),
25 delay_is_enabled_(0),
26 delay_time_in_ms_(0) {
27 const char* thread_name = "external_thread";
28 lock_ = webrtc::CriticalSectionWrapper::CreateCriticalSection();
29 event_ = webrtc::EventWrapper::Create();
30 thread_ = webrtc::ThreadWrapper::CreateThread(Run, this, thread_name);
31 if (thread_) {
32 thread_->Start();
33 thread_->SetPriority(webrtc::kHighPriority);
34 }
35 }
36
37 FakeExternalTransport::~FakeExternalTransport() {
38 if (thread_) {
39 event_->Set();
40 thread_->Stop();
41 delete event_;
42 event_ = NULL;
43 delete lock_;
44 lock_ = NULL;
45 }
46 }
47
48 bool FakeExternalTransport::Run(void* ptr) {
49 return static_cast<FakeExternalTransport*> (ptr)->Process();
50 }
51
52 bool FakeExternalTransport::Process() {
53 switch (event_->Wait(500)) {
54 case webrtc::kEventSignaled:
55 lock_->Enter();
56 my_network_->ReceivedRTPPacket(channel_, packet_buffer_, length_,
57 webrtc::PacketTime());
58 lock_->Leave();
59 return true;
60 case webrtc::kEventTimeout:
61 return true;
62 case webrtc::kEventError:
63 break;
64 }
65 return true;
66 }
67
68 int FakeExternalTransport::SendPacket(int channel,
69 const void *data,
70 size_t len) {
71 lock_->Enter();
72 if (len < 1612) {
73 memcpy(packet_buffer_, (const unsigned char*) data, len);
74 length_ = len;
75 channel_ = channel;
76 }
77 lock_->Leave();
78 event_->Set(); // Triggers ReceivedRTPPacket() from worker thread.
79 return static_cast<int>(len);
80 }
81
82 int FakeExternalTransport::SendRTCPPacket(int channel,
83 const void *data,
84 size_t len) {
85 if (delay_is_enabled_) {
86 webrtc::SleepMs(delay_time_in_ms_);
87 }
88 my_network_->ReceivedRTCPPacket(channel, data, len);
89 return static_cast<int>(len);
90 }
91
92 void FakeExternalTransport::SetDelayStatus(bool enable,
93 unsigned int delayInMs) {
94 delay_is_enabled_ = enable;
95 delay_time_in_ms_ = delayInMs;
96 }
OLDNEW
« no previous file with comments | « webrtc/voice_engine/test/auto_test/fakes/fake_external_transport.h ('k') | webrtc/voice_engine/voice_engine.gyp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698