コード例 #1
0
    public unsafe ulong GetNetStat(RNSPerSecondMetrics metrics)
    {
        if (ptr != IntPtr.Zero)
        {
            RakNetStats stats = GetNetStats();
            ulong       value = stats.runningTotal[(int)metrics];
            return(value);
        }

        return(0);
    }
コード例 #2
0
    public unsafe ulong GetNetStatLastSecond(RNSPerSecondMetrics metrics)
    {
        if (ptr != IntPtr.Zero)
        {
            RakNetStats stats = GetNetStats();
            ulong       value = stats.valueOverLastSecond[(int)metrics];
            return(value);
        }

        return(0);
    }
コード例 #3
0
    public unsafe ulong SendedBytes(ulong guid)
    {
        RakNetStats stats = new RakNetStats();

        if (ptr != IntPtr.Zero && NET_GetStatistics(ptr, guid, ref stats))
        {
            return(stats.runningTotal[(int)RNSPerSecondMetrics.ACTUAL_BYTES_SENT]);
        }

        return(0);
    }
コード例 #4
0
    public RakNetStats GetNetStats(ulong guid)
    {
        RakNetStats stats = new RakNetStats();

        if (ptr != IntPtr.Zero && NET_GetStatistics(ptr, guid, ref stats))
        {
            return(stats);
        }

        return(stats);
    }
コード例 #5
0
    public static bool NET_GetStatistics(IntPtr nw, ulong connectionID, ref RakNetStats data)
    {
        bool result = false;

        try
        {
            result = _NET_GetStatistics(nw, connectionID, ref data, Marshal.SizeOf(data));
        }
        catch
        {
            MessageBox.Show("Fatal Error!", "Native error in " + DLL_NAME, MessageBox.Type.ICON_ERROR);
        }

        return(result);
    }
コード例 #6
0
 private static extern bool _NET_GetStatistics(IntPtr nw, ulong connectionID, ref RakNetStats data, int dataLength);