ResourceManager.ResourceLoader.LoadBinaryInfo.cs 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. //------------------------------------------------------------
  2. // Game Framework
  3. // Copyright © 2013-2021 loyalsoft. All rights reserved.
  4. // Homepage: http://www.game7000.com/
  5. // Feedback: http://www.game7000.com/
  6. //------------------------------------------------------------
  7. namespace GameFramework.Resource
  8. {
  9. internal sealed partial class ResourceManager : GameFrameworkModule, IResourceManager
  10. {
  11. private sealed partial class ResourceLoader
  12. {
  13. private sealed class LoadBinaryInfo : IReference
  14. {
  15. private string m_BinaryAssetName;
  16. private ResourceInfo m_ResourceInfo;
  17. private LoadBinaryCallbacks m_LoadBinaryCallbacks;
  18. private object m_UserData;
  19. public LoadBinaryInfo()
  20. {
  21. m_BinaryAssetName = null;
  22. m_ResourceInfo = null;
  23. m_LoadBinaryCallbacks = null;
  24. m_UserData = null;
  25. }
  26. public string BinaryAssetName
  27. {
  28. get
  29. {
  30. return m_BinaryAssetName;
  31. }
  32. }
  33. public ResourceInfo ResourceInfo
  34. {
  35. get
  36. {
  37. return m_ResourceInfo;
  38. }
  39. }
  40. public LoadBinaryCallbacks LoadBinaryCallbacks
  41. {
  42. get
  43. {
  44. return m_LoadBinaryCallbacks;
  45. }
  46. }
  47. public object UserData
  48. {
  49. get
  50. {
  51. return m_UserData;
  52. }
  53. }
  54. public static LoadBinaryInfo Create(string binaryAssetName, ResourceInfo resourceInfo, LoadBinaryCallbacks loadBinaryCallbacks, object userData)
  55. {
  56. LoadBinaryInfo loadBinaryInfo = ReferencePool.Acquire<LoadBinaryInfo>();
  57. loadBinaryInfo.m_BinaryAssetName = binaryAssetName;
  58. loadBinaryInfo.m_ResourceInfo = resourceInfo;
  59. loadBinaryInfo.m_LoadBinaryCallbacks = loadBinaryCallbacks;
  60. loadBinaryInfo.m_UserData = userData;
  61. return loadBinaryInfo;
  62. }
  63. public void Clear()
  64. {
  65. m_BinaryAssetName = null;
  66. m_ResourceInfo = null;
  67. m_LoadBinaryCallbacks = null;
  68. m_UserData = null;
  69. }
  70. }
  71. }
  72. }
  73. }