summaryrefslogtreecommitdiff
path: root/deimos/core/api_registry.h
diff options
context:
space:
mode:
Diffstat (limited to 'deimos/core/api_registry.h')
-rw-r--r--deimos/core/api_registry.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/deimos/core/api_registry.h b/deimos/core/api_registry.h
index 2624935..f2f850a 100644
--- a/deimos/core/api_registry.h
+++ b/deimos/core/api_registry.h
@@ -15,9 +15,16 @@ public:
virtual ~ApiRegistry() = default;
+ virtual void* Get(const IdName&) = 0;
virtual void Set(const IdName&, void* impl) = 0;
template<typename Api>
+ Api* Get()
+ {
+ return (Api*)Get(Api::kApiName);
+ }
+
+ template<typename Api>
void Set(Api* impl)
{
Set(Api::kApiName, impl);