CommonLibSSE NG
Loading...
Searching...
No Matches
IBSTCreator.h
Go to the documentation of this file.
1#pragma once
2
3namespace RE
4{
5 template <class T>
7 {
8 public:
9 virtual ~IBSTCreator(); // 00
10
11 protected:
12 // add
13 [[nodiscard]] virtual T* CreateImpl() const = 0; // 01
14
15 public:
16 virtual void Destroy(const T* a_val) const = 0; // 02
17
18 [[nodiscard]] inline T* Create() const
19 {
20 return CreateImpl();
21 }
22 };
23 static_assert(sizeof(IBSTCreator<void*>) == 0x8);
24}
Definition AbsorbEffect.h:6
Definition IBSTCreator.h:7
virtual ~IBSTCreator()
virtual void Destroy(const T *a_val) const =0
T * Create() const
Definition IBSTCreator.h:18
virtual T * CreateImpl() const =0