#pragma once inline CMemory p_BinkOpen; inline auto v_BinkOpen = p_BinkOpen.RCast(); inline CMemory p_BinkClose; inline auto v_BinkClose = p_BinkClose.RCast(); inline CMemory p_BinkGetError; inline auto v_BinkGetError = p_BinkGetError.RCast(); /////////////////////////////////////////////////////////////////////////////// class BinkCore : public IDetour { virtual void GetAdr(void) const { LogFunAdr("BinkOpen", p_BinkOpen.GetPtr()); LogFunAdr("BinkClose", p_BinkClose.GetPtr()); LogFunAdr("BinkGetError", p_BinkGetError.GetPtr()); } virtual void GetFun(void) const { p_BinkOpen = g_RadVideoToolsDll.GetExportedSymbol("BinkOpen"); v_BinkOpen = p_BinkOpen.RCast(); p_BinkClose = g_RadVideoToolsDll.GetExportedSymbol("BinkClose"); v_BinkClose = p_BinkClose.RCast(); p_BinkGetError = g_RadVideoToolsDll.GetExportedSymbol("BinkGetError"); v_BinkGetError = p_BinkGetError.RCast(); } virtual void GetVar(void) const { } virtual void GetCon(void) const { } virtual void Attach(void) const; virtual void Detach(void) const; }; ///////////////////////////////////////////////////////////////////////////////