gstreamer/subprojects/gstreamer-sharp/sources/generated/Gst.RtspServer/RTSPSessionPool.cs
Piotr Brzeziński 4e31f2def5 csharp: Add GstRtspServer bindings
With a few unnecessary gst_rtsp_stream_transport_* methods manually disabled to avoid compilation errors.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5961>
2024-02-21 19:00:50 +00:00

337 lines
11 KiB
C#

// This file was generated by the Gtk# code generator.
// Any changes made will be lost if regenerated.
namespace Gst.RtspServer {
using System;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.InteropServices;
#region Autogenerated code
public partial class RTSPSessionPool : GLib.Object {
public RTSPSessionPool (IntPtr raw) : base(raw) {}
[DllImport("gstrtspserver-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
static extern IntPtr gst_rtsp_session_pool_new();
public RTSPSessionPool () : base (IntPtr.Zero)
{
if (GetType () != typeof (RTSPSessionPool)) {
CreateNativeObject (new string [0], new GLib.Value[0]);
return;
}
Raw = gst_rtsp_session_pool_new();
}
[DllImport("gstrtspserver-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
static extern uint gst_rtsp_session_pool_get_max_sessions(IntPtr raw);
[DllImport("gstrtspserver-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
static extern void gst_rtsp_session_pool_set_max_sessions(IntPtr raw, uint max);
[GLib.Property ("max-sessions")]
public uint MaxSessions {
get {
uint raw_ret = gst_rtsp_session_pool_get_max_sessions(Handle);
uint ret = raw_ret;
return ret;
}
set {
gst_rtsp_session_pool_set_max_sessions(Handle, value);
}
}
[GLib.Signal("session-removed")]
public event Gst.RtspServer.SessionRemovedHandler SessionRemoved {
add {
this.AddSignalHandler ("session-removed", value, typeof (Gst.RtspServer.SessionRemovedArgs));
}
remove {
this.RemoveSignalHandler ("session-removed", value);
}
}
static CreateSessionIdNativeDelegate CreateSessionId_cb_delegate;
static CreateSessionIdNativeDelegate CreateSessionIdVMCallback {
get {
if (CreateSessionId_cb_delegate == null)
CreateSessionId_cb_delegate = new CreateSessionIdNativeDelegate (CreateSessionId_cb);
return CreateSessionId_cb_delegate;
}
}
static void OverrideCreateSessionId (GLib.GType gtype)
{
OverrideCreateSessionId (gtype, CreateSessionIdVMCallback);
}
static void OverrideCreateSessionId (GLib.GType gtype, CreateSessionIdNativeDelegate callback)
{
unsafe {
IntPtr* raw_ptr = (IntPtr*)(((long) gtype.GetClassPtr()) + (long) class_abi.GetFieldOffset("create_session_id"));
*raw_ptr = Marshal.GetFunctionPointerForDelegate((Delegate) callback);
}
}
[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
delegate IntPtr CreateSessionIdNativeDelegate (IntPtr inst);
static IntPtr CreateSessionId_cb (IntPtr inst)
{
try {
RTSPSessionPool __obj = GLib.Object.GetObject (inst, false) as RTSPSessionPool;
string __result;
__result = __obj.OnCreateSessionId ();
return GLib.Marshaller.StringToPtrGStrdup(__result);
} catch (Exception e) {
GLib.ExceptionManager.RaiseUnhandledException (e, true);
// NOTREACHED: above call does not return.
throw e;
}
}
[GLib.DefaultSignalHandler(Type=typeof(Gst.RtspServer.RTSPSessionPool), ConnectionMethod="OverrideCreateSessionId")]
protected virtual string OnCreateSessionId ()
{
return InternalCreateSessionId ();
}
private string InternalCreateSessionId ()
{
CreateSessionIdNativeDelegate unmanaged = null;
unsafe {
IntPtr* raw_ptr = (IntPtr*)(((long) this.LookupGType().GetThresholdType().GetClassPtr()) + (long) class_abi.GetFieldOffset("create_session_id"));
unmanaged = (CreateSessionIdNativeDelegate) Marshal.GetDelegateForFunctionPointer(*raw_ptr, typeof(CreateSessionIdNativeDelegate));
}
if (unmanaged == null) return null;
IntPtr __result = unmanaged (this.Handle);
return GLib.Marshaller.PtrToStringGFree(__result);
}
static SessionRemovedNativeDelegate SessionRemoved_cb_delegate;
static SessionRemovedNativeDelegate SessionRemovedVMCallback {
get {
if (SessionRemoved_cb_delegate == null)
SessionRemoved_cb_delegate = new SessionRemovedNativeDelegate (SessionRemoved_cb);
return SessionRemoved_cb_delegate;
}
}
static void OverrideSessionRemoved (GLib.GType gtype)
{
OverrideSessionRemoved (gtype, SessionRemovedVMCallback);
}
static void OverrideSessionRemoved (GLib.GType gtype, SessionRemovedNativeDelegate callback)
{
unsafe {
IntPtr* raw_ptr = (IntPtr*)(((long) gtype.GetClassPtr()) + (long) class_abi.GetFieldOffset("session_removed"));
*raw_ptr = Marshal.GetFunctionPointerForDelegate((Delegate) callback);
}
}
[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
delegate void SessionRemovedNativeDelegate (IntPtr inst, IntPtr _object);
static void SessionRemoved_cb (IntPtr inst, IntPtr _object)
{
try {
RTSPSessionPool __obj = GLib.Object.GetObject (inst, false) as RTSPSessionPool;
__obj.OnSessionRemoved (GLib.Object.GetObject(_object) as Gst.RtspServer.RTSPSession);
} catch (Exception e) {
GLib.ExceptionManager.RaiseUnhandledException (e, false);
}
}
[GLib.DefaultSignalHandler(Type=typeof(Gst.RtspServer.RTSPSessionPool), ConnectionMethod="OverrideSessionRemoved")]
protected virtual void OnSessionRemoved (Gst.RtspServer.RTSPSession _object)
{
InternalSessionRemoved (_object);
}
private void InternalSessionRemoved (Gst.RtspServer.RTSPSession _object)
{
SessionRemovedNativeDelegate unmanaged = null;
unsafe {
IntPtr* raw_ptr = (IntPtr*)(((long) this.LookupGType().GetThresholdType().GetClassPtr()) + (long) class_abi.GetFieldOffset("session_removed"));
unmanaged = (SessionRemovedNativeDelegate) Marshal.GetDelegateForFunctionPointer(*raw_ptr, typeof(SessionRemovedNativeDelegate));
}
if (unmanaged == null) return;
unmanaged (this.Handle, _object == null ? IntPtr.Zero : _object.Handle);
}
// Internal representation of the wrapped structure ABI.
static GLib.AbiStruct _class_abi = null;
static public new GLib.AbiStruct class_abi {
get {
if (_class_abi == null)
_class_abi = new GLib.AbiStruct (new List<GLib.AbiField>{
new GLib.AbiField("create_session_id"
, GLib.Object.class_abi.Fields
, (uint) Marshal.SizeOf(typeof(IntPtr)) // create_session_id
, null
, "create_session"
, (uint) Marshal.SizeOf(typeof(IntPtr))
, 0
),
new GLib.AbiField("create_session"
, -1
, (uint) Marshal.SizeOf(typeof(IntPtr)) // create_session
, "create_session_id"
, "session_removed"
, (uint) Marshal.SizeOf(typeof(IntPtr))
, 0
),
new GLib.AbiField("session_removed"
, -1
, (uint) Marshal.SizeOf(typeof(IntPtr)) // session_removed
, "create_session"
, "_gst_reserved"
, (uint) Marshal.SizeOf(typeof(IntPtr))
, 0
),
new GLib.AbiField("_gst_reserved"
, -1
, (uint) Marshal.SizeOf(typeof(IntPtr)) * 19 // _gst_reserved
, "session_removed"
, null
, (uint) Marshal.SizeOf(typeof(IntPtr))
, 0
),
});
return _class_abi;
}
}
// End of the ABI representation.
[DllImport("gstrtspserver-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
static extern IntPtr gst_rtsp_session_pool_get_type();
public static new GLib.GType GType {
get {
IntPtr raw_ret = gst_rtsp_session_pool_get_type();
GLib.GType ret = new GLib.GType(raw_ret);
return ret;
}
}
[DllImport("gstrtspserver-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
static extern uint gst_rtsp_session_pool_cleanup(IntPtr raw);
public uint Cleanup() {
uint raw_ret = gst_rtsp_session_pool_cleanup(Handle);
uint ret = raw_ret;
return ret;
}
[DllImport("gstrtspserver-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
static extern IntPtr gst_rtsp_session_pool_create(IntPtr raw);
public Gst.RtspServer.RTSPSession Create() {
IntPtr raw_ret = gst_rtsp_session_pool_create(Handle);
Gst.RtspServer.RTSPSession ret = GLib.Object.GetObject(raw_ret, true) as Gst.RtspServer.RTSPSession;
return ret;
}
[DllImport("gstrtspserver-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
static extern IntPtr gst_rtsp_session_pool_create_watch(IntPtr raw);
public GLib.Source CreateWatch() {
IntPtr raw_ret = gst_rtsp_session_pool_create_watch(Handle);
GLib.Source ret = new GLib.Source(raw_ret);
return ret;
}
[DllImport("gstrtspserver-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
static extern IntPtr gst_rtsp_session_pool_filter(IntPtr raw, Gst.RtspServerSharp.RTSPSessionPoolFilterFuncNative func, IntPtr user_data);
public Gst.RtspServer.RTSPSession[] Filter(Gst.RtspServer.RTSPSessionPoolFilterFunc func) {
Gst.RtspServerSharp.RTSPSessionPoolFilterFuncWrapper func_wrapper = new Gst.RtspServerSharp.RTSPSessionPoolFilterFuncWrapper (func);
IntPtr raw_ret = gst_rtsp_session_pool_filter(Handle, func_wrapper.NativeDelegate, IntPtr.Zero);
Gst.RtspServer.RTSPSession[] ret = (Gst.RtspServer.RTSPSession[]) GLib.Marshaller.ListPtrToArray (raw_ret, typeof(GLib.List), true, true, typeof(Gst.RtspServer.RTSPSession));
return ret;
}
public Gst.RtspServer.RTSPSession[] Filter() {
return Filter (null);
}
[DllImport("gstrtspserver-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
static extern IntPtr gst_rtsp_session_pool_find(IntPtr raw, IntPtr sessionid);
public Gst.RtspServer.RTSPSession Find(string sessionid) {
IntPtr native_sessionid = GLib.Marshaller.StringToPtrGStrdup (sessionid);
IntPtr raw_ret = gst_rtsp_session_pool_find(Handle, native_sessionid);
Gst.RtspServer.RTSPSession ret = GLib.Object.GetObject(raw_ret, true) as Gst.RtspServer.RTSPSession;
GLib.Marshaller.Free (native_sessionid);
return ret;
}
[DllImport("gstrtspserver-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
static extern uint gst_rtsp_session_pool_get_n_sessions(IntPtr raw);
public uint NSessions {
get {
uint raw_ret = gst_rtsp_session_pool_get_n_sessions(Handle);
uint ret = raw_ret;
return ret;
}
}
[DllImport("gstrtspserver-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
static extern bool gst_rtsp_session_pool_remove(IntPtr raw, IntPtr sess);
public bool Remove(Gst.RtspServer.RTSPSession sess) {
bool raw_ret = gst_rtsp_session_pool_remove(Handle, sess == null ? IntPtr.Zero : sess.Handle);
bool ret = raw_ret;
return ret;
}
static RTSPSessionPool ()
{
GtkSharp.GstreamerSharp.ObjectManager.Initialize ();
}
// Internal representation of the wrapped structure ABI.
static GLib.AbiStruct _abi_info = null;
static public new GLib.AbiStruct abi_info {
get {
if (_abi_info == null)
_abi_info = new GLib.AbiStruct (new List<GLib.AbiField>{
new GLib.AbiField("priv"
, GLib.Object.abi_info.Fields
, (uint) Marshal.SizeOf(typeof(IntPtr)) // priv
, null
, "_gst_reserved"
, (uint) Marshal.SizeOf(typeof(IntPtr))
, 0
),
new GLib.AbiField("_gst_reserved"
, -1
, (uint) Marshal.SizeOf(typeof(IntPtr)) * 4 // _gst_reserved
, "priv"
, null
, (uint) Marshal.SizeOf(typeof(IntPtr))
, 0
),
});
return _abi_info;
}
}
// End of the ABI representation.
#endregion
}
}