1/*
2 *  Copyright (c) 2013 The WebRTC project authors. All Rights Reserved.
3 *
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
6 *  tree. An additional intellectual property rights grant can be found
7 *  in the file PATENTS.  All contributing project authors may
8 *  be found in the AUTHORS file in the root of the source tree.
9 */
10#ifndef WEBRTC_CALL_TRANSPORT_ADAPTER_H_
11#define WEBRTC_CALL_TRANSPORT_ADAPTER_H_
12
13#include "webrtc/common_types.h"
14#include "webrtc/system_wrappers/include/atomic32.h"
15#include "webrtc/transport.h"
16
17namespace webrtc {
18namespace internal {
19
20class TransportAdapter : public Transport {
21 public:
22  explicit TransportAdapter(Transport* transport);
23
24  bool SendRtp(const uint8_t* packet,
25               size_t length,
26               const PacketOptions& options) override;
27  bool SendRtcp(const uint8_t* packet, size_t length) override;
28
29  void Enable();
30  void Disable();
31
32 private:
33  Transport *transport_;
34  Atomic32 enabled_;
35};
36}  // namespace internal
37}  // namespace webrtc
38
39#endif  // WEBRTC_CALL_TRANSPORT_ADAPTER_H_
40