| Index: webrtc/call/congestion_controller.h
 | 
| diff --git a/webrtc/call/congestion_controller.h b/webrtc/call/congestion_controller.h
 | 
| index a1c1b853ffa1aa2d71d88ca2ee2cc8b3663a4d74..ddc7abb97ec9ab4ef5cf23241ba0d7624ccb4bd7 100644
 | 
| --- a/webrtc/call/congestion_controller.h
 | 
| +++ b/webrtc/call/congestion_controller.h
 | 
| @@ -12,6 +12,12 @@
 | 
|  #define WEBRTC_CALL_CONGESTION_CONTROLLER_H_
 | 
|  
 | 
|  #include "webrtc/base/scoped_ptr.h"
 | 
| +#include "webrtc/base/thread_checker.h"
 | 
| +#include "webrtc/modules/include/module.h"
 | 
| +#include "webrtc/modules/include/module_common_types.h"
 | 
| +#include "webrtc/modules/pacing/packet_router.h"
 | 
| +#include "webrtc/modules/remote_bitrate_estimator/remote_estimator_proxy.h"
 | 
| +#include "webrtc/modules/remote_bitrate_estimator/transport_feedback_adapter.h"
 | 
|  #include "webrtc/stream.h"
 | 
|  
 | 
|  namespace rtc {
 | 
| @@ -22,38 +28,30 @@ namespace webrtc {
 | 
|  
 | 
|  class BitrateController;
 | 
|  class BitrateObserver;
 | 
| -class CallStats;
 | 
|  class Clock;
 | 
|  class PacedSender;
 | 
| -class PacketRouter;
 | 
|  class ProcessThread;
 | 
|  class RemoteBitrateEstimator;
 | 
|  class RemoteBitrateObserver;
 | 
| -class RemoteEstimatorProxy;
 | 
| -class RtpRtcp;
 | 
| -class TransportFeedbackAdapter;
 | 
|  class TransportFeedbackObserver;
 | 
|  
 | 
| -class CongestionController {
 | 
| +class CongestionController : public CallStatsObserver, public Module {
 | 
|   public:
 | 
|    CongestionController(Clock* clock,
 | 
| -                       ProcessThread* process_thread,
 | 
| -                       CallStats* call_stats,
 | 
|                         BitrateObserver* bitrate_observer,
 | 
|                         RemoteBitrateObserver* remote_bitrate_observer);
 | 
|    virtual ~CongestionController();
 | 
| +
 | 
|    virtual void SetBweBitrates(int min_bitrate_bps,
 | 
|                                int start_bitrate_bps,
 | 
|                                int max_bitrate_bps);
 | 
| -
 | 
|    virtual void SignalNetworkState(NetworkState state);
 | 
| -
 | 
|    virtual BitrateController* GetBitrateController() const;
 | 
|    virtual RemoteBitrateEstimator* GetRemoteBitrateEstimator(
 | 
| -      bool send_side_bwe) const;
 | 
| +      bool send_side_bwe);
 | 
|    virtual int64_t GetPacerQueuingDelayMs() const;
 | 
| -  virtual PacedSender* pacer() const { return pacer_.get(); }
 | 
| -  virtual PacketRouter* packet_router() const { return packet_router_.get(); }
 | 
| +  virtual PacedSender* pacer() { return pacer_.get(); }
 | 
| +  virtual PacketRouter* packet_router() { return &packet_router_; }
 | 
|    virtual TransportFeedbackObserver* GetTransportFeedbackObserver();
 | 
|  
 | 
|    virtual void UpdatePacerBitrate(int bitrate_kbps,
 | 
| @@ -62,21 +60,23 @@ class CongestionController {
 | 
|  
 | 
|    virtual void OnSentPacket(const rtc::SentPacket& sent_packet);
 | 
|  
 | 
| - private:
 | 
| -  Clock* const clock_;
 | 
| -  rtc::scoped_ptr<PacketRouter> packet_router_;
 | 
| -  rtc::scoped_ptr<PacedSender> pacer_;
 | 
| -  rtc::scoped_ptr<RemoteBitrateEstimator> remote_bitrate_estimator_;
 | 
| -  rtc::scoped_ptr<RemoteEstimatorProxy> remote_estimator_proxy_;
 | 
| -
 | 
| -  // Registered at construct time and assumed to outlive this class.
 | 
| -  ProcessThread* const process_thread_;
 | 
| -  CallStats* const call_stats_;
 | 
| +  // Implements CallStatsObserver.
 | 
| +  void OnRttUpdate(int64_t avg_rtt_ms, int64_t max_rtt_ms) override;
 | 
|  
 | 
| -  rtc::scoped_ptr<ProcessThread> pacer_thread_;
 | 
| +  // Implements Module.
 | 
| +  int64_t TimeUntilNextProcess() override;
 | 
| +  int32_t Process() override;
 | 
|  
 | 
| -  rtc::scoped_ptr<BitrateController> bitrate_controller_;
 | 
| -  rtc::scoped_ptr<TransportFeedbackAdapter> transport_feedback_adapter_;
 | 
| + private:
 | 
| +  Clock* const clock_;
 | 
| +  rtc::ThreadChecker config_thread_checker_;
 | 
| +  const rtc::scoped_ptr<PacedSender> pacer_;
 | 
| +  const rtc::scoped_ptr<RemoteBitrateEstimator> remote_bitrate_estimator_;
 | 
| +  const rtc::scoped_ptr<ProcessThread> pacer_thread_;
 | 
| +  const rtc::scoped_ptr<BitrateController> bitrate_controller_;
 | 
| +  PacketRouter packet_router_;
 | 
| +  RemoteEstimatorProxy remote_estimator_proxy_;
 | 
| +  TransportFeedbackAdapter transport_feedback_adapter_;
 | 
|    int min_bitrate_bps_;
 | 
|  
 | 
|    RTC_DISALLOW_IMPLICIT_CONSTRUCTORS(CongestionController);
 | 
| 
 |