Files
BoneSync/Facepunch.Steamworks/Generated/Interfaces/ISteamVideo.cs
2025-02-25 12:58:41 +02:00

71 lines
2.3 KiB
C#

using System;
using System.Runtime.InteropServices;
using System.Text;
using System.Threading.Tasks;
using Facepunch.Steamworks.Data;
namespace Facepunch.Steamworks
{
internal class ISteamVideo : SteamInterface
{
internal ISteamVideo( bool IsGameServer )
{
SetupInterface( IsGameServer );
}
[DllImport( Platform.LibraryName, EntryPoint = "SteamAPI_SteamVideo_v002", CallingConvention = Platform.CC)]
internal static extern IntPtr SteamAPI_SteamVideo_v002();
public override IntPtr GetUserInterfacePointer() => SteamAPI_SteamVideo_v002();
#region FunctionMeta
[DllImport( Platform.LibraryName, EntryPoint = "SteamAPI_ISteamVideo_GetVideoURL", CallingConvention = Platform.CC)]
private static extern void _GetVideoURL( IntPtr self, AppId unVideoAppID );
#endregion
internal void GetVideoURL( AppId unVideoAppID )
{
_GetVideoURL( Self, unVideoAppID );
}
#region FunctionMeta
[DllImport( Platform.LibraryName, EntryPoint = "SteamAPI_ISteamVideo_IsBroadcasting", CallingConvention = Platform.CC)]
[return: MarshalAs( UnmanagedType.I1 )]
private static extern bool _IsBroadcasting( IntPtr self, ref int pnNumViewers );
#endregion
internal bool IsBroadcasting( ref int pnNumViewers )
{
var returnValue = _IsBroadcasting( Self, ref pnNumViewers );
return returnValue;
}
#region FunctionMeta
[DllImport( Platform.LibraryName, EntryPoint = "SteamAPI_ISteamVideo_GetOPFSettings", CallingConvention = Platform.CC)]
private static extern void _GetOPFSettings( IntPtr self, AppId unVideoAppID );
#endregion
internal void GetOPFSettings( AppId unVideoAppID )
{
_GetOPFSettings( Self, unVideoAppID );
}
#region FunctionMeta
[DllImport( Platform.LibraryName, EntryPoint = "SteamAPI_ISteamVideo_GetOPFStringForApp", CallingConvention = Platform.CC)]
[return: MarshalAs( UnmanagedType.I1 )]
private static extern bool _GetOPFStringForApp( IntPtr self, AppId unVideoAppID, IntPtr pchBuffer, ref int pnBufferSize );
#endregion
internal bool GetOPFStringForApp( AppId unVideoAppID, out string pchBuffer, ref int pnBufferSize )
{
IntPtr mempchBuffer = Helpers.TakeMemory();
var returnValue = _GetOPFStringForApp( Self, unVideoAppID, mempchBuffer, ref pnBufferSize );
pchBuffer = Helpers.MemoryToString( mempchBuffer );
return returnValue;
}
}
}