OLD | NEW |
1 /* | 1 /* |
2 * Copyright (c) 2012 The WebRTC project authors. All Rights Reserved. | 2 * Copyright (c) 2012 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 <assert.h> | 11 #include <assert.h> |
12 | 12 |
13 #include "webrtc/modules/audio_device/linux/audio_mixer_manager_pulse_linux.h" | 13 #include "webrtc/modules/audio_device/linux/audio_mixer_manager_pulse_linux.h" |
14 #include "webrtc/system_wrappers/include/trace.h" | 14 #include "webrtc/system_wrappers/include/trace.h" |
15 #include "webrtc/base/checks.h" | 15 #include "webrtc/base/checks.h" |
16 | 16 |
17 extern webrtc_adm_linux_pulse::PulseAudioSymbolTable PaSymbolTable; | 17 extern webrtc::adm_linux_pulse::PulseAudioSymbolTable PaSymbolTable; |
18 | 18 |
19 // Accesses Pulse functions through our late-binding symbol table instead of | 19 // Accesses Pulse functions through our late-binding symbol table instead of |
20 // directly. This way we don't have to link to libpulse, which means our | 20 // directly. This way we don't have to link to libpulse, which means our |
21 // binary will work on systems that don't have it. | 21 // binary will work on systems that don't have it. |
22 #define LATE(sym) \ | 22 #define LATE(sym) \ |
23 LATESYM_GET(webrtc_adm_linux_pulse::PulseAudioSymbolTable, \ | 23 LATESYM_GET(webrtc::adm_linux_pulse::PulseAudioSymbolTable, &PaSymbolTable, \ |
24 &PaSymbolTable, sym) | 24 sym) |
25 | 25 |
26 namespace webrtc | 26 namespace webrtc |
27 { | 27 { |
28 | 28 |
29 class AutoPulseLock { | 29 class AutoPulseLock { |
30 public: | 30 public: |
31 explicit AutoPulseLock(pa_threaded_mainloop* pa_mainloop) | 31 explicit AutoPulseLock(pa_threaded_mainloop* pa_mainloop) |
32 : pa_mainloop_(pa_mainloop) { | 32 : pa_mainloop_(pa_mainloop) { |
33 LATE(pa_threaded_mainloop_lock)(pa_mainloop_); | 33 LATE(pa_threaded_mainloop_lock)(pa_mainloop_); |
34 } | 34 } |
(...skipping 1110 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1145 | 1145 |
1146 AutoPulseLock auto_lock(_paMainloop); | 1146 AutoPulseLock auto_lock(_paMainloop); |
1147 paOperation = LATE(pa_context_get_source_info_by_index)( | 1147 paOperation = LATE(pa_context_get_source_info_by_index)( |
1148 _paContext, device_index, PaSourceInfoCallback, (void*) this); | 1148 _paContext, device_index, PaSourceInfoCallback, (void*) this); |
1149 | 1149 |
1150 WaitForOperationCompletion(paOperation); | 1150 WaitForOperationCompletion(paOperation); |
1151 return true; | 1151 return true; |
1152 } | 1152 } |
1153 | 1153 |
1154 } | 1154 } |
OLD | NEW |