Squashed 'third_party/rawrtc/rawrtc/' content from commit aa3ae4b24

Change-Id: I38a655a4259b62f591334e90a1315bd4e7e4d8ec
git-subtree-dir: third_party/rawrtc/rawrtc
git-subtree-split: aa3ae4b247275cc6e69c30613b3a4ba7fdc82d1b
diff --git a/include/rawrtc/peer_connection_state.h b/include/rawrtc/peer_connection_state.h
new file mode 100644
index 0000000..6649734
--- /dev/null
+++ b/include/rawrtc/peer_connection_state.h
@@ -0,0 +1,35 @@
+#pragma once
+
+/*
+ * Signalling state.
+ */
+enum rawrtc_signaling_state {
+    RAWRTC_SIGNALING_STATE_STABLE,
+    RAWRTC_SIGNALING_STATE_HAVE_LOCAL_OFFER,
+    RAWRTC_SIGNALING_STATE_HAVE_REMOTE_OFFER,
+    RAWRTC_SIGNALING_STATE_HAVE_LOCAL_PROVISIONAL_ANSWER,
+    RAWRTC_SIGNALING_STATE_HAVE_REMOTE_PROVISIONAL_ANSWER,
+    RAWRTC_SIGNALING_STATE_CLOSED,
+};
+
+/*
+ * Peer connection state.
+ */
+enum rawrtc_peer_connection_state {
+    RAWRTC_PEER_CONNECTION_STATE_NEW,
+    RAWRTC_PEER_CONNECTION_STATE_CONNECTING,
+    RAWRTC_PEER_CONNECTION_STATE_CONNECTED,
+    RAWRTC_PEER_CONNECTION_STATE_DISCONNECTED,
+    RAWRTC_PEER_CONNECTION_STATE_FAILED,
+    RAWRTC_PEER_CONNECTION_STATE_CLOSED,
+};
+
+/*
+ * Get the corresponding name for a signaling state.
+ */
+char const* rawrtc_signaling_state_to_name(enum rawrtc_signaling_state const state);
+
+/*
+ * Get the corresponding name for a peer connection state.
+ */
+char const* rawrtc_peer_connection_state_to_name(enum rawrtc_peer_connection_state const state);