RedirectCalls() public static method

Redirects all calls from method 'from' to method 'to'.
public static RedirectCalls ( MethodInfo from, MethodInfo to ) : RedirectCallsState
from System.Reflection.MethodInfo
to System.Reflection.MethodInfo
return RedirectCallsState
Beispiel #1
0
        public override void UpdateData(SimulationManager.UpdateMode mode)
        {
            // Call
            EventUpdateDataPre?.Invoke(mode);
            EventUpdateData?.Invoke(mode);
            EventUpdateDataPost?.Invoke(mode);

            // Execute original method
            RedirectionHelper.RevertRedirect(_RenderManager_UpdateData_original, _RenderManager_UpdateData_state);
            RenderManager.instance.UpdateData(mode);
            RedirectionHelper.RedirectCalls(_RenderManager_UpdateData_original, _RenderManager_UpdateData_detour);
        }
Beispiel #2
0
        public static void Deploy()
        {
            if (deployed)
            {
                return;
            }

            _RenderManager_UpdateData_original = typeof(RenderManager).GetMethod("UpdateData", BindingFlags.Instance | BindingFlags.Public);
            _RenderManager_UpdateData_detour   = typeof(RenderManagerDetour).GetMethod("UpdateData", BindingFlags.Instance | BindingFlags.Public);
            _RenderManager_UpdateData_state    = RedirectionHelper.RedirectCalls(_RenderManager_UpdateData_original, _RenderManager_UpdateData_detour);

            deployed = true;
        }