aboutsummaryrefslogtreecommitdiff
path: root/NorthstarDedicatedTest/sourceinterface.h
diff options
context:
space:
mode:
authorBobTheBob <32057864+BobTheBob9@users.noreply.github.com>2021-07-08 15:33:31 +0100
committerBobTheBob <32057864+BobTheBob9@users.noreply.github.com>2021-07-08 15:33:31 +0100
commit4c4d605d10109e02708984755405bbe0947ef5c4 (patch)
tree1d5ffe7909b24b6c79fd444b420741e85f6c2b57 /NorthstarDedicatedTest/sourceinterface.h
parent8dfb8e866119f653802609b24165b0458149c4cc (diff)
downloadNorthstarLauncher-4c4d605d10109e02708984755405bbe0947ef5c4.tar.gz
NorthstarLauncher-4c4d605d10109e02708984755405bbe0947ef5c4.zip
initial commit
Diffstat (limited to 'NorthstarDedicatedTest/sourceinterface.h')
-rw-r--r--NorthstarDedicatedTest/sourceinterface.h24
1 files changed, 24 insertions, 0 deletions
diff --git a/NorthstarDedicatedTest/sourceinterface.h b/NorthstarDedicatedTest/sourceinterface.h
new file mode 100644
index 00000000..bc4767f5
--- /dev/null
+++ b/NorthstarDedicatedTest/sourceinterface.h
@@ -0,0 +1,24 @@
+#pragma once
+#include <string>
+
+// literally just copied from ttf2sdk definition
+typedef void* (*CreateInterfaceFn)(const char* pName, int* pReturnCode);
+
+template<typename T> class SourceInterface
+{
+private:
+ T* m_interface;
+
+public:
+ SourceInterface(const std::string& moduleName, const std::string& interfaceName);
+
+ T* operator->() const
+ {
+ return m_interface;
+ }
+
+ operator T* () const
+ {
+ return m_interface;
+ }
+};