diff options
author | andrew@webrtc.org <andrew@webrtc.org@4adac7df-926f-26a2-2b94-8c16560cd09d> | 2012-10-22 18:19:23 +0000 |
---|---|---|
committer | andrew@webrtc.org <andrew@webrtc.org@4adac7df-926f-26a2-2b94-8c16560cd09d> | 2012-10-22 18:19:23 +0000 |
commit | b015cbede88899f67a53fbbe581b02ce8e327949 (patch) | |
tree | 530a64a3cfdbbabacab974c183326517d49e761e /voice_engine/voe_network_impl.h | |
download | webrtc-b015cbede88899f67a53fbbe581b02ce8e327949.tar.gz |
Move src/ -> webrtc/
TBR=niklas.enbom@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/915006
git-svn-id: http://webrtc.googlecode.com/svn/trunk/webrtc@2963 4adac7df-926f-26a2-2b94-8c16560cd09d
Diffstat (limited to 'voice_engine/voe_network_impl.h')
-rw-r--r-- | voice_engine/voe_network_impl.h | 114 |
1 files changed, 114 insertions, 0 deletions
diff --git a/voice_engine/voe_network_impl.h b/voice_engine/voe_network_impl.h new file mode 100644 index 00000000..b159c81b --- /dev/null +++ b/voice_engine/voe_network_impl.h @@ -0,0 +1,114 @@ +/* + * Copyright (c) 2012 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_VOICE_ENGINE_VOE_NETWORK_IMPL_H +#define WEBRTC_VOICE_ENGINE_VOE_NETWORK_IMPL_H + +#include "voe_network.h" + +#include "shared_data.h" + + +namespace webrtc +{ + +class VoENetworkImpl: public VoENetwork +{ +public: + virtual int RegisterExternalTransport(int channel, Transport& transport); + + virtual int DeRegisterExternalTransport(int channel); + + virtual int ReceivedRTPPacket(int channel, + const void* data, + unsigned int length); + + virtual int ReceivedRTCPPacket(int channel, + const void* data, + unsigned int length); + + virtual int GetSourceInfo(int channel, + int& rtpPort, + int& rtcpPort, + char ipAddr[64]); + + virtual int GetLocalIP(char ipAddr[64], bool ipv6 = false); + + virtual int EnableIPv6(int channel); + + virtual bool IPv6IsEnabled(int channel); + + virtual int SetSourceFilter(int channel, + int rtpPort, + int rtcpPort, + const char ipAddr[64] = 0); + + virtual int GetSourceFilter(int channel, + int& rtpPort, + int& rtcpPort, + char ipAddr[64]); + + virtual int SetSendTOS(int channel, + int DSCP, + int priority = -1, + bool useSetSockopt = false); + + virtual int GetSendTOS(int channel, + int& DSCP, + int& priority, + bool& useSetSockopt); + + virtual int SetSendGQoS(int channel, + bool enable, + int serviceType, + int overrideDSCP); + + virtual int GetSendGQoS(int channel, + bool& enabled, + int& serviceType, + int& overrideDSCP); + + virtual int SetPacketTimeoutNotification(int channel, + bool enable, + int timeoutSeconds = 2); + + virtual int GetPacketTimeoutNotification(int channel, + bool& enabled, + int& timeoutSeconds); + + virtual int RegisterDeadOrAliveObserver(int channel, + VoEConnectionObserver& observer); + + virtual int DeRegisterDeadOrAliveObserver(int channel); + + virtual int SetPeriodicDeadOrAliveStatus(int channel, + bool enable, + int sampleTimeSeconds = 2); + + virtual int GetPeriodicDeadOrAliveStatus(int channel, + bool& enabled, + int& sampleTimeSeconds); + + virtual int SendUDPPacket(int channel, + const void* data, + unsigned int length, + int& transmittedBytes, + bool useRtcpSocket = false); + +protected: + VoENetworkImpl(voe::SharedData* shared); + virtual ~VoENetworkImpl(); +private: + voe::SharedData* _shared; +}; + +} // namespace webrtc + +#endif // WEBRTC_VOICE_ENGINE_VOE_NETWORK_IMPL_H |