Bazaar developer reference

CvDllPlayer::QueryInterface(GUID)

Defined in
CvDllPlayer.cpp, line 35
Class
CvDllPlayer
Hook name
CivHooks::CvDllPlayer_QueryInterface

Hooks

static bool BeforeCvDllPlayer_QueryInterface(CvDllPlayer* self, GUID guidInterface, void*& result);static void AfterCvDllPlayer_QueryInterface(CvDllPlayer* self, GUID guidInterface, void*& result);static void* ReplaceCvDllPlayer_QueryInterface(void* (*original)(CvDllPlayer*, GUID), CvDllPlayer* self, GUID guidInterface);// CivHooks.h gives this hook point no types, so nothing checks these hooks' parameters.host->RegisterHook(host->pluginIndex, CivHooks::CvDllPlayer_QueryInterface::ID, CIV_HOOK_BEFORE, (void*)&BeforeCvDllPlayer_QueryInterface);host->RegisterHook(host->pluginIndex, CivHooks::CvDllPlayer_QueryInterface::ID, CIV_HOOK_AFTER, (void*)&AfterCvDllPlayer_QueryInterface);host->RegisterHook(host->pluginIndex, CivHooks::CvDllPlayer_QueryInterface::ID, CIV_HOOK_REPLACE, (void*)&ReplaceCvDllPlayer_QueryInterface);

Code

35void* CvDllPlayer::QueryInterface(GUID guidInterface)36{37	if(	guidInterface == ICvUnknown::GetInterfaceId() ||38		guidInterface == ICvPlayer1::GetInterfaceId() ||39		guidInterface == ICvPlayer2::GetInterfaceId() ||40		guidInterface == ICvPlayer3::GetInterfaceId())41	{42		IncrementReference();43		return this;44	}4546	return NULL;47}

Calls