/*
 * 由SharpDevelop创建。
 * 用户： Administrator
 * 日期: 2018-11-28
 * 时间: 15:54
 * 
 * 要改变这种模板请点击 工具|选项|代码编写|编辑标准头文件
 */
using System;
using System.Runtime.InteropServices;

namespace zyxAdapter
{
	internal delegate int DLogs([MarshalAs(UnmanagedType.LPStr)]string log,int level);
	
	internal delegate int DGetSeatid(int tingid,int deskid,int seat);
	
	[return : MarshalAs(UnmanagedType.LPStr)]
	internal delegate string DGetPlayerStr(int tingid,int deskid,int seat,int lx);
	
	internal delegate int DGetPlayerInt(int tingid,int deskid,int seat,int lx);
	
 	internal delegate int DGetDeskInt(int tingid,int deskid,int lx);
	
	[return : MarshalAs(UnmanagedType.LPStr)]
	internal delegate string DGetDeskStr(int tingid,int deskid,int lx);
	
	[return : MarshalAs(UnmanagedType.LPStr)]
	internal delegate string DGetTingStr(int tingid,int lx);
	
	internal delegate int DGetTingInt(int tingid,int lx);
	
	[return : MarshalAs(UnmanagedType.LPStr)]
	internal delegate string DGetRoomStr(int roomid,int lx);
	
	internal delegate int DGetRoomInt(int roomid,int lx);
	
	internal delegate int DSetPlayer(int tingid,int deskid,int id,int lx,int num,[MarshalAs(UnmanagedType.LPStr)]string str);
	
	internal delegate int DSendPack(int tingid,int deskid,int id,IntPtr intPtr,int length);
	
	internal delegate int DWarOver(int tingid,int deskid);
	
	internal delegate int DGetGameInt([MarshalAs(UnmanagedType.LPStr)]string lx);
	
	[return : MarshalAs(UnmanagedType.LPStr)]
	internal delegate string DGetGameStr([MarshalAs(UnmanagedType.LPStr)]string lx);
	
	internal delegate int DIsKaiZhan(int tingid,int deskid);
	
	internal delegate int DSaveHuiFang(int tingid,int deskid,int lx,[MarshalAs(UnmanagedType.LPStr)]string jsondata);
	
	internal delegate int DLoadHuiFang(int tingid,int deskid);
	
	internal delegate int DSaveMem(int tingid,int deskid,IntPtr ptr,int len);
	
    internal delegate int DDoZyxFun([MarshalAs(UnmanagedType.LPStr)]string dowhat,[MarshalAs(UnmanagedType.LPStr)]string param,ref tr_rltpchar rlt);

    [return : MarshalAs(UnmanagedType.LPStr)]
    internal delegate string DLoad_taidata(int tingid,int deskid);

    internal delegate int DSave_taidata(int tingid,int deskid,[MarshalAs(UnmanagedType.LPStr)]string base64data);

	/// <summary>
	/// 子游戏单元 delphi 调用 其他dll 调用 c#使用
	/// </summary>
	public interface IParasitismUtil
	{
		int Logs(string log,int level);
		
		int GetSeatid(int tingid,int deskid,int seat);
		
		string GetPlayerStr(int tingid,int deskid,int seat,int lx);
		
		int GetPlayerInt(int tingid,int deskid,int seat,int lx);
		
		string GetDeskStr(int tingid,int deskid,int lx);
		
		int GetDeskInt(int tingid,int deskid,int lx);
		
		string GetTingStr(int tingid,int lx);
		
		int GetTingInt(int tingid,int lx);
		
		string GetRoomStr(int roomid,int lx);
		
		int GetRoomInt(int roomid,int lx);
		
		int SetPlayer(int tingid,int deskid,int seat,int lx,int num,string str);
		
		int SendPack(int tingid,int deskid,int seat,IntPtr intPtr,int length);
		
		int WarOver(int tingid,int deskid);
		
		int GetGameInt(string lx);
		
		string GetGameStr(string lx);
		
		int IsKaiZhan(int tingid,int deskid);
		
		int SaveMem(int tingid,int deskid,IntPtr ptr,int len);
		
		int SaveHuiFang(int tingid,int deskid,int lx,string jsondata);
		
		int LoadHuiFang(int tingid,int deskid);

        int DoZyxFun([MarshalAs(UnmanagedType.LPStr)]string dowhat,[MarshalAs(UnmanagedType.LPStr)]string param,ref tr_rltpchar rlt);

        string Load_taidata(int tingid,int deskid);

        int Save_taidata(int tingid,int deskid,string base64data);
	}
}
