dom/media/bridge/IPeerConnection.idl

Wed, 31 Dec 2014 06:09:35 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Wed, 31 Dec 2014 06:09:35 +0100
changeset 0
6474c204b198
permissions
-rw-r--r--

Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.

     1 #include "nsIThread.idl"
     2 #include "nsIDOMWindow.idl"
     3 #include "nsIPropertyBag2.idl"
     5 interface nsIDOMMediaStream;
     6 interface nsIDOMDataChannel;
     8 /*
     9  * Manager interface to PeerConnection.js so it is accessible from C++.
    10  */
    11 [scriptable, uuid(c2218bd2-2648-4701-8fa6-305d3379e9f8)]
    12 interface IPeerConnectionManager : nsISupports
    13 {
    14   boolean hasActivePeerConnection(in unsigned long innerWindowID);
    15 };
    17 %{C++
    18 #define IPEERCONNECTION_MANAGER_CONTRACTID "@mozilla.org/dom/peerconnectionmanager;1"
    19 %}
    21 /* Do not confuse with nsIDOMRTCPeerConnection. This interface is purely for
    22  * communication between the PeerConnection JS DOM binding and the C++
    23  * implementation in SIPCC.
    24  *
    25  * See media/webrtc/signaling/include/PeerConnectionImpl.h
    26  */
    27 [scriptable, uuid(d7dfe148-0416-446b-a128-66a7c71ae8d3)]
    28 interface IPeerConnectionObserver : nsISupports
    29 {
    30 };
    32 [scriptable, uuid(c9c31639-1a49-4533-8429-f6a348c4d8c3)]
    33 interface IPeerConnection : nsISupports
    34 {
    35   const unsigned long kHintAudio = 0x00000001;
    36   const unsigned long kHintVideo = 0x00000002;
    38   const long kActionNone = -1;
    39   const long kActionOffer = 0;
    40   const long kActionAnswer = 1;
    41   const long kActionPRAnswer = 2;
    43   const long kIceGathering = 0;
    44   const long kIceWaiting = 1;
    45   const long kIceChecking = 2;
    46   const long kIceConnected = 3;
    47   const long kIceFailed = 4;
    49   /* for readyState on Peer Connection */
    50   const long kNew = 0;
    51   const long kNegotiating = 1;
    52   const long kActive = 2;
    53   const long kClosing = 3;
    54   const long kClosed = 4;
    56   /* for 'type' in DataChannelInit dictionary */
    57   const unsigned short kDataChannelReliable = 0;
    58   const unsigned short kDataChannelPartialReliableRexmit = 1;
    59   const unsigned short kDataChannelPartialReliableTimed = 2;
    61   /* Constants for 'name' in error callbacks */
    62   const unsigned long kNoError                          = 0; // Test driver only
    63   const unsigned long kInvalidConstraintsType           = 1;
    64   const unsigned long kInvalidCandidateType             = 2;
    65   const unsigned long kInvalidMediastreamTrack          = 3;
    66   const unsigned long kInvalidState                     = 4;
    67   const unsigned long kInvalidSessionDescription        = 5;
    68   const unsigned long kIncompatibleSessionDescription   = 6;
    69   const unsigned long kIncompatibleConstraints          = 7;
    70   const unsigned long kIncompatibleMediaStreamTrack     = 8;
    71   const unsigned long kInternalError                    = 9;
    72   const unsigned long kMaxErrorType                     = 9; // Same as final error
    73 };

mercurial