Reland "Reland "Implement RTC_DLOG macro and use in a few places to test.""

This is a reland of d6fc82f173
Original change's description:
> Reland "Implement RTC_DLOG macro and use in a few places to test."
>
> This is a reland of b18e868aa4
> Original change's description:
> > Implement RTC_DLOG macro and use in a few places to test.
> >
> > Bug: webrtc:8529
> > Change-Id: I31a5a4ec873088b1831dfa31a496467efff89cc1
> > Reviewed-on: https://webrtc-review.googlesource.com/23041
> > Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
> > Reviewed-by: Tommi <tommi@webrtc.org>
> > Commit-Queue: Fredrik Solenberg <solenberg@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#20690}
>
> Bug: webrtc:8529
> Change-Id: I68073870945f3085966e7a61fe6efa083eedd100
> Reviewed-on: https://webrtc-review.googlesource.com/23361
> Commit-Queue: Fredrik Solenberg <solenberg@webrtc.org>
> Reviewed-by: Fredrik Solenberg <solenberg@webrtc.org>
> Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#20725}

TBR=kwiberg@webrtc.org

Bug: webrtc:8529
Change-Id: I7a12591253a549cfbd91218e5563c3805e8c647b
Reviewed-on: https://webrtc-review.googlesource.com/24080
Commit-Queue: Fredrik Solenberg <solenberg@webrtc.org>
Reviewed-by: Fredrik Solenberg <solenberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20735}
This commit is contained in:
Fredrik Solenberg 2017-11-17 15:22:37 +01:00 committed by Commit Bot
parent a148b79e79
commit b3d7cac235
2 changed files with 27 additions and 6 deletions

View file

@ -61,6 +61,12 @@
#include "rtc_base/constructormagic.h"
#include "rtc_base/thread_annotations.h"
#if !defined(NDEBUG) || defined(DLOG_ALWAYS_ON)
#define RTC_DLOG_IS_ON 1
#else
#define RTC_DLOG_IS_ON 0
#endif
namespace rtc {
///////////////////////////////////////////////////////////////////////////////
@ -360,7 +366,22 @@ inline bool LogCheckLevel(LoggingSeverity sev) {
#define RTC_PLOG(sev, err) \
RTC_LOG_ERR_EX(sev, err)
// TODO(?): Add an "assert" wrapper that logs in the same manner.
// The RTC_DLOG macros are equivalent to their RTC_LOG counterparts except that
// they only generate code in debug builds.
#if RTC_DLOG_IS_ON
#define RTC_DLOG(sev) RTC_LOG(sev)
#define RTC_DLOG_V(sev) RTC_LOG_V(sev)
#define RTC_DLOG_F(sev) RTC_LOG_F(sev)
#else
#define RTC_DLOG_EAT_STREAM_PARAMS(sev) \
(true ? true : ((void)(rtc::sev), true)) \
? static_cast<void>(0) \
: rtc::LogMessageVoidify() & \
rtc::LogMessage(__FILE__, __LINE__, rtc::sev).stream()
#define RTC_DLOG(sev) RTC_DLOG_EAT_STREAM_PARAMS(sev)
#define RTC_DLOG_V(sev) RTC_DLOG_EAT_STREAM_PARAMS(sev)
#define RTC_DLOG_F(sev) RTC_DLOG_EAT_STREAM_PARAMS(sev)
#endif
} // namespace rtc

View file

@ -32,8 +32,8 @@ TransmitMixer::Create(TransmitMixer*& mixer)
mixer = new TransmitMixer();
if (mixer == NULL)
{
RTC_LOG(LS_ERROR) << "TransmitMixer::Create() unable to allocate memory "
"for mixer";
RTC_DLOG(LS_ERROR) <<
"TransmitMixer::Create() unable to allocate memory for mixer";
return -1;
}
return 0;
@ -187,8 +187,8 @@ void TransmitMixer::ProcessAudio(int delay_ms, int clock_drift,
GainControl* agc = audioproc_->gain_control();
if (agc->set_stream_analog_level(current_mic_level) != 0) {
RTC_LOG(LS_ERROR) << "set_stream_analog_level failed: current_mic_level = "
<< current_mic_level;
RTC_DLOG(LS_ERROR) << "set_stream_analog_level failed: current_mic_level = "
<< current_mic_level;
assert(false);
}
@ -201,7 +201,7 @@ void TransmitMixer::ProcessAudio(int delay_ms, int clock_drift,
int err = audioproc_->ProcessStream(&_audioFrame);
if (err != 0) {
RTC_LOG(LS_ERROR) << "ProcessStream() error: " << err;
RTC_DLOG(LS_ERROR) << "ProcessStream() error: " << err;
assert(false);
}