InitializeParameters.cs 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. 
  2. namespace YooAsset
  3. {
  4. /// <summary>
  5. /// 运行模式
  6. /// </summary>
  7. public enum EPlayMode
  8. {
  9. /// <summary>
  10. /// 编辑器下的模拟模式
  11. /// </summary>
  12. EditorSimulateMode,
  13. /// <summary>
  14. /// 离线运行模式
  15. /// </summary>
  16. OfflinePlayMode,
  17. /// <summary>
  18. /// 联机运行模式
  19. /// </summary>
  20. HostPlayMode,
  21. }
  22. /// <summary>
  23. /// 初始化参数
  24. /// </summary>
  25. public abstract class InitializeParameters
  26. {
  27. /// <summary>
  28. /// 文件解密服务接口
  29. /// </summary>
  30. public IDecryptionServices DecryptionServices = null;
  31. /// <summary>
  32. /// 内置文件的根路径
  33. /// 注意:当参数为空的时候会使用默认的根目录。
  34. /// </summary>
  35. public string BuildinRootDirectory = string.Empty;
  36. /// <summary>
  37. /// 沙盒文件的根路径
  38. /// 注意:当参数为空的时候会使用默认的根目录。
  39. /// </summary>
  40. public string SandboxRootDirectory = string.Empty;
  41. /// <summary>
  42. /// 资源加载每帧处理的最大时间片段
  43. /// 注意:默认值为MaxValue
  44. /// </summary>
  45. public long LoadingMaxTimeSlice = long.MaxValue;
  46. /// <summary>
  47. /// 下载失败尝试次数
  48. /// 注意:默认值为MaxValue
  49. /// </summary>
  50. public int DownloadFailedTryAgain = int.MaxValue;
  51. }
  52. /// <summary>
  53. /// 编辑器下模拟运行模式的初始化参数
  54. /// </summary>
  55. public class EditorSimulateModeParameters : InitializeParameters
  56. {
  57. /// <summary>
  58. /// 用于模拟运行的资源清单路径
  59. /// </summary>
  60. public string SimulateManifestFilePath = string.Empty;
  61. }
  62. /// <summary>
  63. /// 离线运行模式的初始化参数
  64. /// </summary>
  65. public class OfflinePlayModeParameters : InitializeParameters
  66. {
  67. }
  68. /// <summary>
  69. /// 联机运行模式的初始化参数
  70. /// </summary>
  71. public class HostPlayModeParameters : InitializeParameters
  72. {
  73. /// <summary>
  74. /// 内置资源查询服务接口
  75. /// </summary>
  76. public IQueryServices QueryServices = null;
  77. /// <summary>
  78. /// 远端资源地址查询服务类
  79. /// </summary>
  80. public IRemoteServices RemoteServices = null;
  81. }
  82. }