<html><body><div style="color:#000; background-color:#fff; font-family:times new roman, new york, times, serif;font-size:12pt"><div style="font-family: 'times new roman', 'new york', times, serif; font-size: 12pt;">Get a look to the rtsp-server.h source code first.</div><div style="font-family: 'times new roman', 'new york', times, serif; font-size: 12pt;"><br></div><div style="font-family: 'times new roman', 'new york', times, serif; font-size: 16px; color: rgb(0, 0, 0); background-color: transparent; font-style: normal;">if I wan to sublcass GstRTSPServer I can do this:</div><div style="font-family: 'times new roman', 'new york', times, serif; font-size: 16px; color: rgb(0, 0, 0); background-color: transparent; font-style: normal;"><br></div><div style="font-family: 'times new roman', 'new york', times, serif; font-size: 16px; color: rgb(0, 0, 0); background-color: transparent; font-style: normal;"><br></div><div style="font-family: 'times new
roman', 'new york', times, serif; font-size: 16px; color: rgb(0, 0, 0); background-color: transparent; font-style: normal;"><span style="background-color: transparent;">typedef struct RtspExtendServer RtspExtendServer_t;</span><br></div><div style="font-family: 'times new roman', 'new york', times, serif; font-size: 16px; color: rgb(0, 0, 0); background-color: transparent; font-style: normal;">typedef struct RtspExtendServerClass RtspExtendServerClass_t;<br></div><div style="font-family: 'times new roman', 'new york', times, serif; font-size: 16px; color: rgb(0, 0, 0); background-color: transparent; font-style: normal;"><br></div><div style="background-color: transparent;">#define RTSP_TYPE_EXTEND_SERVER (gst_rtsp_extend_server_get_type ())</div><div style="background-color: transparent;"><br></div><div style="background-color: transparent;">#define RTSP_IS_EXTEND_SERVER(obj)
(G_TYPE_CHECK_INSTANCE_TYPE ((obj), RTSP_TYPE_EXTEND_SERVER))</div><div style="background-color: transparent;"><br></div><div style="background-color: transparent;">#define RTSP_IS_EXTEND_SERVER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), RTSP_TYPE_EXTEND_SERVER))</div><div style="background-color: transparent;"><br></div><div style="background-color: transparent;">#define RTSP_EXTEND_SERVER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), RTSP_TYPE_EXTEND_SERVER, RtspExtendServerClass))</div><div style="background-color: transparent;"><br></div><div style="background-color: transparent;">#define RTSP_EXTEND_SERVER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), RTSP_TYPE_EXTEND_SERVER, RtspExtendServer))</div><div style="background-color: transparent;"><br></div><div style="background-color: transparent;">#define
RTSP_EXTEND_SERVER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), RTSP_TYPE_EXTEND_SERVER, RtspExtendServerClass))</div><div style="background-color: transparent;"><br></div><div style="background-color: transparent;">#define RTSP_EXTEND_SERVER_CAST(obj) ((RtspExtendServer*)(obj))</div><div style="background-color: transparent;"><br></div><div style="background-color: transparent;">#define RTSP_EXTEND_SERVER_CLASS_CAST(klass) ((RtspExtendServerClass*)(klass))</div><div style="font-family: 'times new roman', 'new york', times, serif; font-size: 16px; color: rgb(0, 0, 0); background-color: transparent; font-style: normal;"><br></div><div style="font-family: 'times new roman', 'new york', times, serif; font-size: 16px; color: rgb(0, 0, 0); background-color: transparent; font-style: normal;"><br></div><div style="font-family: 'times new roman', 'new york', times, serif; font-size: 16px; color: rgb(0, 0,
0); background-color: transparent; font-style: normal;">struct <span style="font-size: 12pt;">RtspExtendServer</span></div><div style="font-family: 'times new roman', 'new york', times, serif; font-size: 12pt; color: rgb(0, 0, 0); background-color: transparent; font-style: normal;"><span style="font-size: 12pt;">{</span></div><div style="font-family: 'times new roman', 'new york', times, serif; font-size: 12pt; color: rgb(0, 0, 0); background-color: transparent; font-style: normal;"><span style="font-size: 12pt;"> GstRTSPServer server;</span></div><div style="font-family: 'times new roman', 'new york', times, serif; font-size: 12pt; color: rgb(0, 0, 0); background-color: transparent; font-style: normal;"><span style="font-size: 12pt;"> /*some object variables*/</span></div><div style="font-family: 'times new roman', 'new york', times, serif; font-size: 12pt; color: rgb(0, 0, 0); background-color: transparent;
font-style: normal;"><span style="font-size: 12pt;">};</span></div><div style="font-family: 'times new roman', 'new york', times, serif; font-size: 12pt; color: rgb(0, 0, 0); background-color: transparent; font-style: normal;"><span style="font-size: 12pt;"><br></span></div><div style="font-family: 'times new roman', 'new york', times, serif; font-size: 12pt; background-color: transparent;">struct <span style="font-size: 12pt;">RtspExtendServerClass</span></div><div style="font-family: 'times new roman', 'new york', times, serif; font-size: 12pt; background-color: transparent;"><span style="font-size: 12pt;">{</span></div><div style="font-family: 'times new roman', 'new york', times, serif; font-size: 12pt; background-color: transparent;"><span style="font-size: 12pt;"> GstRTSPServerClass server;</span></div><div style="font-family: 'times new roman', 'new york', times, serif; font-size: 12pt; background-color:
transparent;"><span style="font-size: 12pt;"> /*some function ans signals here*/</span></div><div style="font-family: 'times new roman', 'new york', times, serif; font-size: 12pt; background-color: transparent;"><span style="font-size: 12pt;"></span></div><div style="font-family: 'times new roman', 'new york', times, serif; font-size: 12pt; background-color: transparent;"><span style="font-size: 12pt;">};</span></div><div style="font-family: 'times new roman', 'new york', times, serif; font-size: 12pt; background-color: transparent; color: rgb(0, 0, 0); font-style: normal;"><span style="font-size: 12pt;"><br></span></div><div style="font-family: 'times new roman', 'new york', times, serif; font-size: 16px; background-color: transparent; color: rgb(0, 0, 0); font-style: normal;"><span style="font-size: 12pt;"><br></span></div><div style="font-family: 'times new roman', 'new york', times, serif; font-size: 16px; background-color: transparent;
color: rgb(0, 0, 0); font-style: normal;"><span style="font-size: 12pt;">Hope that you will find what to do.</span></div><div style="font-family: 'times new roman', 'new york', times, serif; font-size: 12pt;"><br></div> <div style="font-family: 'times new roman', 'new york', times, serif; font-size: 12pt;"> <div style="font-family: 'times new roman', 'new york', times, serif; font-size: 12pt;"> <div dir="ltr"> ----- Mail transféré -----<br> <font size="2" face="Arial"> <b><span style="font-weight:bold;">De :</span></b> Chuck Crisler <ccrisler@mutualink.net><br> <b><span style="font-weight: bold;">À :</span></b> Discussion of the development of and with GStreamer <gstreamer-devel@lists.freedesktop.org> <br> <b><span style="font-weight: bold;">Envoyé le :</span></b> Mardi 2 juillet 2013 14h21<br> <b><span style="font-weight: bold;">Objet :</span></b> class derivation question<br> </font> </div> <div
class="y_msg_container"><br><div id="yiv7489535046"><div dir="ltr"><div>This is really a GObject question but I am sure many people on this list know the answer.<br><br>I am trying to extend the RTSP server code, so I am deriving from the RTSP objects. How do I connect my derived classes to the GStreamer RTSP classes up to GObject? I have read through the GObject doc but they seem to assume that you are deriving from GObject (with the RTSP classes do).<br>
<br>TIA!<br></div>Chuck<br></div></div><br>_______________________________________________<br>gstreamer-devel mailing list<br><a ymailto="mailto:gstreamer-devel@lists.freedesktop.org" href="mailto:gstreamer-devel@lists.freedesktop.org">gstreamer-devel@lists.freedesktop.org</a><br><a href="http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel" target="_blank">http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel</a><br><br><br></div> </div> </div> </div></body></html>