From 4bb3b9c6cbc0aafcd7e9c0b385bb33ceda70ee1a Mon Sep 17 00:00:00 2001 From: eladalon Date: Mon, 11 Sep 2017 07:25:26 -0700 Subject: [PATCH] Move StreamConfig into its own file Move StreamConfig into its own file, to allow it to be seen from different RtcEvent subclasses (introduces in upcoming CL). BUG=webrtc:8111 Review-Url: https://codereview.webrtc.org/3013523002 Cr-Commit-Position: refs/heads/master@{#19776} --- webrtc/logging/BUILD.gn | 2 + webrtc/logging/rtc_event_log/rtc_event_log.h | 34 ++---------- .../rtc_event_log/rtc_stream_config.cc | 29 ++++++++++ .../logging/rtc_event_log/rtc_stream_config.h | 53 +++++++++++++++++++ 4 files changed, 88 insertions(+), 30 deletions(-) create mode 100644 webrtc/logging/rtc_event_log/rtc_stream_config.cc create mode 100644 webrtc/logging/rtc_event_log/rtc_stream_config.h diff --git a/webrtc/logging/BUILD.gn b/webrtc/logging/BUILD.gn index fac7e3d9b4..18d6084f11 100644 --- a/webrtc/logging/BUILD.gn +++ b/webrtc/logging/BUILD.gn @@ -26,6 +26,8 @@ rtc_source_set("rtc_event_log_api") { sources = [ "rtc_event_log/rtc_event_log.h", "rtc_event_log/rtc_event_log_factory_interface.h", + "rtc_event_log/rtc_stream_config.cc", + "rtc_event_log/rtc_stream_config.h", ] deps = [ "..:webrtc_common", diff --git a/webrtc/logging/rtc_event_log/rtc_event_log.h b/webrtc/logging/rtc_event_log/rtc_event_log.h index 1e4650c054..40d8989635 100644 --- a/webrtc/logging/rtc_event_log/rtc_event_log.h +++ b/webrtc/logging/rtc_event_log/rtc_event_log.h @@ -15,43 +15,17 @@ #include #include +// TODO(eladalon): Get rid of this later in the CL-stack. #include "webrtc/api/rtpparameters.h" #include "webrtc/common_types.h" +// TODO(eladalon): Get rid of this later in the CL-stack. +#include "webrtc/logging/rtc_event_log/rtc_stream_config.h" #include "webrtc/rtc_base/platform_file.h" namespace webrtc { -// Forward declaration of storage class that is automatically generated from -// the protobuf file. namespace rtclog { -class EventStream; - -struct StreamConfig { - uint32_t local_ssrc = 0; - uint32_t remote_ssrc = 0; - uint32_t rtx_ssrc = 0; - std::string rsid; - - bool remb = false; - std::vector rtp_extensions; - - RtcpMode rtcp_mode = RtcpMode::kReducedSize; - - struct Codec { - Codec(const std::string& payload_name, - int payload_type, - int rtx_payload_type) - : payload_name(payload_name), - payload_type(payload_type), - rtx_payload_type(rtx_payload_type) {} - - std::string payload_name; - int payload_type; - int rtx_payload_type; - }; - std::vector codecs; -}; - +class EventStream; // Storage class automatically generated from protobuf. } // namespace rtclog class Clock; diff --git a/webrtc/logging/rtc_event_log/rtc_stream_config.cc b/webrtc/logging/rtc_event_log/rtc_stream_config.cc new file mode 100644 index 0000000000..c6e5cb9cca --- /dev/null +++ b/webrtc/logging/rtc_event_log/rtc_stream_config.cc @@ -0,0 +1,29 @@ +/* + * Copyright (c) 2017 The WebRTC project authors. All Rights Reserved. + * + * Use of this source code is governed by a BSD-style license + * that can be found in the LICENSE file in the root of the source + * tree. An additional intellectual property rights grant can be found + * in the file PATENTS. All contributing project authors may + * be found in the AUTHORS file in the root of the source tree. + */ + +#include "webrtc/logging/rtc_event_log/rtc_stream_config.h" + +namespace webrtc { +namespace rtclog { + +StreamConfig::StreamConfig() {} + +StreamConfig::~StreamConfig() {} + +StreamConfig::Codec::Codec(const std::string& payload_name, + int payload_type, + int rtx_payload_type) + : payload_name(payload_name), + payload_type(payload_type), + rtx_payload_type(rtx_payload_type) {} + + +} // namespace rtclog +} // namespace webrtc diff --git a/webrtc/logging/rtc_event_log/rtc_stream_config.h b/webrtc/logging/rtc_event_log/rtc_stream_config.h new file mode 100644 index 0000000000..4a09873f37 --- /dev/null +++ b/webrtc/logging/rtc_event_log/rtc_stream_config.h @@ -0,0 +1,53 @@ +/* + * Copyright (c) 2017 The WebRTC project authors. All Rights Reserved. + * + * Use of this source code is governed by a BSD-style license + * that can be found in the LICENSE file in the root of the source + * tree. An additional intellectual property rights grant can be found + * in the file PATENTS. All contributing project authors may + * be found in the AUTHORS file in the root of the source tree. + */ + +#ifndef WEBRTC_LOGGING_RTC_EVENT_LOG_RTC_STREAM_CONFIG_H_ +#define WEBRTC_LOGGING_RTC_EVENT_LOG_RTC_STREAM_CONFIG_H_ + +#include +#include + +#include "webrtc/api/rtpparameters.h" +#include "webrtc/common_types.h" + +namespace webrtc { +namespace rtclog { + +struct StreamConfig { + StreamConfig(); + ~StreamConfig(); + + uint32_t local_ssrc = 0; + uint32_t remote_ssrc = 0; + uint32_t rtx_ssrc = 0; + std::string rsid; + + bool remb = false; + std::vector rtp_extensions; + + RtcpMode rtcp_mode = RtcpMode::kReducedSize; + + struct Codec { + Codec(const std::string& payload_name, + int payload_type, + int rtx_payload_type); + + std::string payload_name; + int payload_type; + int rtx_payload_type; + }; + + std::vector codecs; +}; + +} // namespace rtclog +} // namespace webrtc + +#endif // WEBRTC_LOGGING_RTC_EVENT_LOG_RTC_STREAM_CONFIG_H_