CommonLibSSE (Parapets fork)
Loading...
Searching...
No Matches
BSExtraData.h
Go to the documentation of this file.
1#pragma once
2
5
6namespace RE
7{
9 {
10 public:
11 inline static constexpr auto RTTI = RTTI_BSExtraData;
12 inline static constexpr auto EXTRADATATYPE = ExtraDataType::kNone;
13
15 virtual ~BSExtraData() = default; // 00
16
17 // add
18 [[nodiscard]] virtual ExtraDataType GetType() const = 0; // 01
19 virtual bool IsNotEqual(const BSExtraData* a_rhs) const; // 02 - { return false; }
20
21 static BSExtraData* Create(std::size_t a_size, std::uintptr_t a_vtbl);
22 template <class T>
23 static T* Create(std::uintptr_t a_vtbl);
24
25 bool operator==(const BSExtraData& a_rhs) const;
26 bool operator!=(const BSExtraData& a_rhs) const;
27
29
30 // members
32 };
33 static_assert(sizeof(BSExtraData) == 0x10);
34
35 template <class T>
36 T* BSExtraData::Create(std::uintptr_t a_vtbl)
37 {
38 return static_cast<T*>(Create(sizeof(T), a_vtbl));
39 }
40}
Definition: BSExtraData.h:9
static constexpr auto RTTI
Definition: BSExtraData.h:11
static constexpr auto EXTRADATATYPE
Definition: BSExtraData.h:12
virtual bool IsNotEqual(const BSExtraData *a_rhs) const
static BSExtraData * Create(std::size_t a_size, std::uintptr_t a_vtbl)
virtual ~BSExtraData()=default
bool operator!=(const BSExtraData &a_rhs) const
bool operator==(const BSExtraData &a_rhs) const
BSExtraData * next
Definition: BSExtraData.h:31
virtual ExtraDataType GetType() const =0
Definition: AbsorbEffect.h:6
constexpr REL::ID RTTI_BSExtraData
Definition: Offsets_RTTI.h:1692
ExtraDataType
Definition: ExtraDataTypes.h:173