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

Side by Side Diff: webrtc/modules/rtp_rtcp/source/dtmf_queue.cc

Issue 1877253002: Replaced CriticalSectionWrapper with rtc::CriticalSection in rtp_rtcp module (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: Created 4 years, 8 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
1 /* 1 /*
2 * Copyright (c) 2011 The WebRTC project authors. All Rights Reserved. 2 * Copyright (c) 2011 The WebRTC project authors. All Rights Reserved.
3 * 3 *
4 * Use of this source code is governed by a BSD-style license 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 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 6 * tree. An additional intellectual property rights grant can be found
7 * in the file PATENTS. All contributing project authors may 7 * in the file PATENTS. All contributing project authors may
8 * be found in the AUTHORS file in the root of the source tree. 8 * be found in the AUTHORS file in the root of the source tree.
9 */ 9 */
10 10
11 #include "webrtc/modules/rtp_rtcp/source/dtmf_queue.h" 11 #include "webrtc/modules/rtp_rtcp/source/dtmf_queue.h"
12 12
13 #include <string.h> 13 #include <string.h>
14 14
15 namespace webrtc { 15 namespace webrtc {
16 DTMFqueue::DTMFqueue() 16 DTMFqueue::DTMFqueue()
17 : dtmf_critsect_(CriticalSectionWrapper::CreateCriticalSection()), 17 : next_empty_index_(0) {
pbos-webrtc 2016/04/12 09:08:43 git cl format plz
danilchap 2016/04/12 09:14:40 Done.
18 next_empty_index_(0) {
19 memset(dtmf_key_, 0, sizeof(dtmf_key_)); 18 memset(dtmf_key_, 0, sizeof(dtmf_key_));
20 memset(dtmf_length, 0, sizeof(dtmf_length)); 19 memset(dtmf_length, 0, sizeof(dtmf_length));
21 memset(dtmf_level_, 0, sizeof(dtmf_level_)); 20 memset(dtmf_level_, 0, sizeof(dtmf_level_));
22 } 21 }
23 22
24 DTMFqueue::~DTMFqueue() { 23 DTMFqueue::~DTMFqueue() {}
25 delete dtmf_critsect_;
26 }
27 24
28 int32_t DTMFqueue::AddDTMF(uint8_t key, uint16_t len, uint8_t level) { 25 int32_t DTMFqueue::AddDTMF(uint8_t key, uint16_t len, uint8_t level) {
29 CriticalSectionScoped lock(dtmf_critsect_); 26 rtc::CritScope lock(&dtmf_critsect_);
30 27
31 if (next_empty_index_ >= DTMF_OUTBAND_MAX) { 28 if (next_empty_index_ >= DTMF_OUTBAND_MAX) {
32 return -1; 29 return -1;
33 } 30 }
34 int32_t index = next_empty_index_; 31 int32_t index = next_empty_index_;
35 dtmf_key_[index] = key; 32 dtmf_key_[index] = key;
36 dtmf_length[index] = len; 33 dtmf_length[index] = len;
37 dtmf_level_[index] = level; 34 dtmf_level_[index] = level;
38 next_empty_index_++; 35 next_empty_index_++;
39 return 0; 36 return 0;
40 } 37 }
41 38
42 int8_t DTMFqueue::NextDTMF(uint8_t* dtmf_key, uint16_t* len, uint8_t* level) { 39 int8_t DTMFqueue::NextDTMF(uint8_t* dtmf_key, uint16_t* len, uint8_t* level) {
43 CriticalSectionScoped lock(dtmf_critsect_); 40 rtc::CritScope lock(&dtmf_critsect_);
44 if (next_empty_index_ == 0) 41 if (next_empty_index_ == 0)
45 return -1; 42 return -1;
46 43
47 *dtmf_key = dtmf_key_[0]; 44 *dtmf_key = dtmf_key_[0];
48 *len = dtmf_length[0]; 45 *len = dtmf_length[0];
49 *level = dtmf_level_[0]; 46 *level = dtmf_level_[0];
50 47
51 memmove(&(dtmf_key_[0]), &(dtmf_key_[1]), 48 memmove(&(dtmf_key_[0]), &(dtmf_key_[1]),
52 next_empty_index_ * sizeof(uint8_t)); 49 next_empty_index_ * sizeof(uint8_t));
53 memmove(&(dtmf_length[0]), &(dtmf_length[1]), 50 memmove(&(dtmf_length[0]), &(dtmf_length[1]),
54 next_empty_index_ * sizeof(uint16_t)); 51 next_empty_index_ * sizeof(uint16_t));
55 memmove(&(dtmf_level_[0]), &(dtmf_level_[1]), 52 memmove(&(dtmf_level_[0]), &(dtmf_level_[1]),
56 next_empty_index_ * sizeof(uint8_t)); 53 next_empty_index_ * sizeof(uint8_t));
57 54
58 next_empty_index_--; 55 next_empty_index_--;
59 return 0; 56 return 0;
60 } 57 }
61 58
62 bool DTMFqueue::PendingDTMF() { 59 bool DTMFqueue::PendingDTMF() {
63 CriticalSectionScoped lock(dtmf_critsect_); 60 rtc::CritScope lock(&dtmf_critsect_);
64 return next_empty_index_ > 0; 61 return next_empty_index_ > 0;
65 } 62 }
66 63
67 void DTMFqueue::ResetDTMF() { 64 void DTMFqueue::ResetDTMF() {
68 CriticalSectionScoped lock(dtmf_critsect_); 65 rtc::CritScope lock(&dtmf_critsect_);
69 next_empty_index_ = 0; 66 next_empty_index_ = 0;
70 } 67 }
71 } // namespace webrtc 68 } // namespace webrtc
OLDNEW
« no previous file with comments | « webrtc/modules/rtp_rtcp/source/dtmf_queue.h ('k') | webrtc/modules/rtp_rtcp/source/fec_receiver_impl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698