diff options
Diffstat (limited to 'Runtime/Export/Serialization/PPtrRemapper.txt')
-rw-r--r-- | Runtime/Export/Serialization/PPtrRemapper.txt | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/Runtime/Export/Serialization/PPtrRemapper.txt b/Runtime/Export/Serialization/PPtrRemapper.txt new file mode 100644 index 0000000..e1fd2a7 --- /dev/null +++ b/Runtime/Export/Serialization/PPtrRemapper.txt @@ -0,0 +1,53 @@ +C++RAW +#include "UnityPrefix.h" +#include "Configuration/UnityConfigure.h" +#include "Runtime/Mono/MonoBehaviour.h" +#if ENABLE_SERIALIZATION_BY_CODEGENERATION +#include "Runtime/Mono/MonoBehaviourSerialization_ByCodeGeneration.h" +#endif + +CSRAW +using System; +using System.Collections.Generic; +using UnityEngine; +using Object=UnityEngine.Object; + +namespace UnityEngine.Serialization +{ + +CONDITIONAL ENABLE_SERIALIZATION_BY_CODEGENERATION +CLASS public PPtrRemapper : IPPtrRemapper + + CSRAW public static IPPtrRemapper Instance = null; + + CSRAW public static void Init() + { + if(Instance == null) + Instance = new PPtrRemapper(); + } + CSRAW public static void SetInstance(IPPtrRemapper remapper) + { + Instance = remapper; + } + CSRAW public object GetNewInstanceToReplaceOldInstance(object value) + { + return INTERNAL_GetNewInstanceToReplaceOldInstance(((UnityEngine.Object)value).GetInstanceID()); + } + + THREAD_SAFE + CUSTOM private static object INTERNAL_GetNewInstanceToReplaceOldInstance(int instance_id) + { + return NativeExt_MonoBehaviourSerialization_GetNewInstanceToReplaceOldInstance(instance_id); + } + +END + +CONDITIONAL !ENABLE_SERIALIZATION_BY_CODEGENERATION && UNITY_METRO +CLASS public PPtrRemapper + CSRAW public static void SetInstance(IPPtrRemapper reader) + { + } +END + +CSRAW +} |