Use ASYNC RTSP io
[platform/upstream/gstreamer.git] / gst / rtsp-server / rtsp-client.h
index 5dff20c..4746d1c 100644 (file)
@@ -38,7 +38,7 @@
 #define __GST_RTSP_CLIENT_H__
 
 #include "rtsp-media.h"
-#include "rtsp-media-factory.h"
+#include "rtsp-media-mapping.h"
 #include "rtsp-session-pool.h"
 
 G_BEGIN_DECLS
@@ -70,14 +70,15 @@ struct _GstRTSPClient {
   GObject       parent;
 
   GstRTSPConnection *connection;
-  struct sockaddr_in address;
+  GstRTSPChannel *channel;
   GThread *thread;
 
-  GstRTSPSessionPool *pool;
-
-  GstRTSPMedia *media;
-  GstRTSPMediaFactory *factory;
+  guint                 timeout;
+  GstRTSPSessionPool   *session_pool;
+  GstRTSPMediaMapping  *media_mapping;
 
+  GstRTSPUrl     *uri;
+  GstRTSPMedia   *media;
 };
 
 struct _GstRTSPClientClass {
@@ -92,9 +93,12 @@ void                  gst_rtsp_client_set_session_pool  (GstRTSPClient *client,
                                                          GstRTSPSessionPool *pool);
 GstRTSPSessionPool *  gst_rtsp_client_get_session_pool  (GstRTSPClient *client);
 
-void                  gst_rtsp_client_set_media_factory (GstRTSPClient *client, 
-                                                         GstRTSPMediaFactory *factory);
-GstRTSPMediaFactory * gst_rtsp_client_get_media_factory (GstRTSPClient *client);
+void                  gst_rtsp_client_set_media_mapping (GstRTSPClient *client, 
+                                                         GstRTSPMediaMapping *mapping);
+GstRTSPMediaMapping * gst_rtsp_client_get_media_mapping (GstRTSPClient *client);
+
+void                  gst_rtsp_client_set_timeout       (GstRTSPClient *client, guint timeout);
+guint                 gst_rtsp_client_get_timeout       (GstRTSPClient *client);
 
 gboolean              gst_rtsp_client_accept            (GstRTSPClient *client, 
                                                          GIOChannel *channel);