libcrtc
Classes | Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | List of all members
crtc::RTCPeerConnection Class Referenceabstract

#include <crtc.h>

Inheritance diagram for crtc::RTCPeerConnection:
crtc::Reference

Classes

struct  RTCAnswerOptions
 
struct  RTCConfiguration
 
struct  RTCDataChannelInit
 
struct  RTCIceCandidate
 
struct  RTCIceServer
 
struct  RTCOfferAnswerOptions
 
struct  RTCOfferOptions
 
struct  RTCSessionDescription
 

Public Types

enum  RTCSignalingState {
  kStable, kHaveLocalOffer, kHaveLocalPrAnswer, kHaveRemoteOffer,
  kHaveRemotePrAnswer, kSignalingClosed
}
 
enum  RTCIceGatheringState { kNewGathering, kGathering, kComplete }
 
enum  RTCIceConnectionState {
  kNew, kChecking, kConnected, kCompleted,
  kFailed, kDisconnected, kClosed
}
 
enum  RTCBundlePolicy { kBalanced, kMaxBundle, kMaxCompat }
 
enum  RTCIceTransportPolicy { kRelay, kPublic, kAll }
 
enum  RTCRtcpMuxPolicy { kNegotiate, kRequire }
 
typedef struct crtc::RTCPeerConnection::RTCDataChannelInit RTCDataChannelInit
 
typedef std::vector< RTCIceServerRTCIceServers
 
typedef struct crtc::RTCPeerConnection::RTCConfiguration RTCConfiguration
 
typedef Functor< void(const Let< MediaStream > &stream)> StreamCallback
 
typedef Functor< void(const Let< RTCDataChannel > &dataChannel)> DataChannelCallback
 
typedef Functor< void(const RTCIceCandidate &candidate)> IceCandidateCallback
 

Public Member Functions

virtual Let< RTCDataChannelCreateDataChannel (const std::string &label, const RTCDataChannelInit &options=RTCDataChannelInit())=0
 
virtual Let< Promise< void > > AddIceCandidate (const RTCIceCandidate &candidate)=0
 
virtual void AddStream (const Let< MediaStream > &stream)=0
 
virtual Let< Promise< RTCSessionDescription > > CreateAnswer (const RTCAnswerOptions &options=RTCAnswerOptions())=0
 
virtual Let< Promise< RTCSessionDescription > > CreateOffer (const RTCOfferOptions &options=RTCOfferOptions())=0
 
virtual MediaStreams GetLocalStreams ()=0
 
virtual MediaStreams GetRemoteStreams ()=0
 
virtual void RemoveStream (const Let< MediaStream > &stream)=0
 
virtual void SetConfiguration (const RTCConfiguration &config)=0
 
virtual Let< Promise< void > > SetLocalDescription (const RTCSessionDescription &sdp)=0
 
virtual Let< Promise< void > > SetRemoteDescription (const RTCSessionDescription &sdp)=0
 
virtual void Close ()=0
 
virtual RTCSessionDescription CurrentLocalDescription ()=0
 
virtual RTCSessionDescription CurrentRemoteDescription ()=0
 
virtual RTCSessionDescription LocalDescription ()=0
 
virtual RTCSessionDescription PendingLocalDescription ()=0
 
virtual RTCSessionDescription PendingRemoteDescription ()=0
 
virtual RTCSessionDescription RemoteDescription ()=0
 
virtual RTCIceConnectionState IceConnectionState ()=0
 
virtual RTCIceGatheringState IceGatheringState ()=0
 
virtual RTCSignalingState SignalingState ()=0
 

Static Public Member Functions

static Let< RTCPeerConnectionNew (const RTCConfiguration &config=RTCConfiguration())
 

Public Attributes

Callback onnegotiationneeded
 
Callback onsignalingstatechange
 
Callback onicegatheringstatechange
 
Callback oniceconnectionstatechange
 
Callback onicecandidatesremoved
 
StreamCallback onaddstream
 
StreamCallback onremovestream
 
DataChannelCallback ondatachannel
 
IceCandidateCallback onicecandidate
 

Static Public Attributes

static RTCIceServers defaultIceServers
 

Detailed Description

See also
https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection

Member Typedef Documentation

§ RTCConfiguration

§ RTCDataChannelInit

Member Enumeration Documentation

§ RTCBundlePolicy

§ RTCIceConnectionState

§ RTCIceGatheringState

§ RTCIceTransportPolicy

§ RTCRtcpMuxPolicy

§ RTCSignalingState

Member Function Documentation

§ AddIceCandidate()

virtual Let<Promise<void> > crtc::RTCPeerConnection::AddIceCandidate ( const RTCIceCandidate candidate)
pure virtual

§ AddStream()

virtual void crtc::RTCPeerConnection::AddStream ( const Let< MediaStream > &  stream)
pure virtual

§ Close()

virtual void crtc::RTCPeerConnection::Close ( )
pure virtual

§ CreateAnswer()

virtual Let<Promise<RTCSessionDescription> > crtc::RTCPeerConnection::CreateAnswer ( const RTCAnswerOptions options = RTCAnswerOptions())
pure virtual

§ CreateOffer()

virtual Let<Promise<RTCSessionDescription> > crtc::RTCPeerConnection::CreateOffer ( const RTCOfferOptions options = RTCOfferOptions())
pure virtual

§ GetLocalStreams()

virtual MediaStreams crtc::RTCPeerConnection::GetLocalStreams ( )
pure virtual

§ GetRemoteStreams()

virtual MediaStreams crtc::RTCPeerConnection::GetRemoteStreams ( )
pure virtual

§ RemoveStream()

virtual void crtc::RTCPeerConnection::RemoveStream ( const Let< MediaStream > &  stream)
pure virtual

§ SetConfiguration()

virtual void crtc::RTCPeerConnection::SetConfiguration ( const RTCConfiguration config)
pure virtual

§ SetLocalDescription()

virtual Let<Promise<void> > crtc::RTCPeerConnection::SetLocalDescription ( const RTCSessionDescription sdp)
pure virtual

§ SetRemoteDescription()

virtual Let<Promise<void> > crtc::RTCPeerConnection::SetRemoteDescription ( const RTCSessionDescription sdp)
pure virtual

The documentation for this class was generated from the following file: