aboutsummaryrefslogtreecommitdiff
path: root/src/zenhttp/transports/dlltransport.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/zenhttp/transports/dlltransport.h')
-rw-r--r--src/zenhttp/transports/dlltransport.h23
1 files changed, 6 insertions, 17 deletions
diff --git a/src/zenhttp/transports/dlltransport.h b/src/zenhttp/transports/dlltransport.h
index 2dccdd0f9..9346a10ce 100644
--- a/src/zenhttp/transports/dlltransport.h
+++ b/src/zenhttp/transports/dlltransport.h
@@ -8,30 +8,19 @@
namespace zen {
-class DllTransportPluginImpl;
-
/** Transport plugin which supports dynamic loading of external transport
* provider modules
*/
-class DllTransportPlugin : public TransportPlugin, RefCounted
+
+class DllTransportPlugin : public TransportPlugin
{
public:
- DllTransportPlugin(uint16_t BasePort, unsigned int ThreadCount);
- ~DllTransportPlugin();
-
- virtual uint32_t AddRef() const override;
- virtual uint32_t Release() const override;
-
- virtual void Initialize(TransportServer* ServerInterface) override;
- virtual void Shutdown() override;
- virtual bool IsAvailable() override;
-
- void LoadDll(std::string_view Name);
-
-private:
- std::unique_ptr<DllTransportPluginImpl> m_Impl;
+ virtual void LoadDll(std::string_view Name) = 0;
+ virtual void ConfigureDll(std::string_view Name, const char* OptionTag, const char* OptionValue) = 0;
};
+DllTransportPlugin* CreateDllTransportPlugin();
+
} // namespace zen
#endif