blob: 219c02317bf233b795810e47e48e2db7a70a83db (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
#ifndef DUMMYPLUGINSERVICEFACTORY_H
#define DUMMYPLUGINSERVICEFACTORY_H
#include "bsapacker_global.h"
#include <bsapacker/IDummyPluginLogic.h>
#include <bsapacker/IDummyPluginServiceFactory.h>
#include <bsapacker/IFileWriterService.h>
#include <bsapacker/IModContext.h>
namespace BsaPacker
{
class BSAPACKER_EXPORT DummyPluginServiceFactory : public IDummyPluginServiceFactory
{
public:
explicit DummyPluginServiceFactory(
const IModContext* modContext,
const IFileWriterService* fileWriterService, // bad! only passing this to another constructor!
const IDummyPluginLogic* dummyPluginLogic); // TODO: perhaps remedy with strategy pattern?
~DummyPluginServiceFactory() override = default;
[[nodiscard]] std::unique_ptr<IDummyPluginService> Create() const override;
private:
const IModContext* m_ModContext = nullptr;
const IFileWriterService* m_FileWriterService = nullptr;
const IDummyPluginLogic* m_DummyPluginLogic = nullptr;
};
} // namespace BsaPacker
#endif // DUMMYPLUGINSERVICEFACTORY_H
|