diff options
author | BobTheBob <32057864+BobTheBob9@users.noreply.github.com> | 2021-07-08 15:33:31 +0100 |
---|---|---|
committer | BobTheBob <32057864+BobTheBob9@users.noreply.github.com> | 2021-07-08 15:33:31 +0100 |
commit | 4c4d605d10109e02708984755405bbe0947ef5c4 (patch) | |
tree | 1d5ffe7909b24b6c79fd444b420741e85f6c2b57 /NorthstarDedicatedTest/sourceinterface.cpp | |
parent | 8dfb8e866119f653802609b24165b0458149c4cc (diff) | |
download | NorthstarLauncher-4c4d605d10109e02708984755405bbe0947ef5c4.tar.gz NorthstarLauncher-4c4d605d10109e02708984755405bbe0947ef5c4.zip |
initial commit
Diffstat (limited to 'NorthstarDedicatedTest/sourceinterface.cpp')
-rw-r--r-- | NorthstarDedicatedTest/sourceinterface.cpp | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/NorthstarDedicatedTest/sourceinterface.cpp b/NorthstarDedicatedTest/sourceinterface.cpp new file mode 100644 index 00000000..49a2f164 --- /dev/null +++ b/NorthstarDedicatedTest/sourceinterface.cpp @@ -0,0 +1,13 @@ +#include "pch.h" +#include "sourceinterface.h" +#include <string> +#include "tier0.h" + +template<typename T> SourceInterface<T>::SourceInterface(const std::string& moduleName, const std::string& interfaceName) +{ + HMODULE handle = GetModuleHandleA(moduleName.c_str()); + CreateInterfaceFn createInterface = (CreateInterfaceFn)GetProcAddress(handle, interfaceName.c_str()); + m_interface = (T*)createInterface(interfaceName.c_str(), NULL); + if (m_interface == nullptr) + Error("Failed to call CreateInterface for %s in %s", interfaceName, moduleName); +}
\ No newline at end of file |