CommonLibVR
BSTFreeList.h
Go to the documentation of this file.
1 #pragma once
2 
3 namespace RE
4 {
5  template <class T>
7  {
8  char elem[sizeof(T)]; // 00
10  };
11  // size == sizeof(T) + 0x8
12 
13  template <class T>
15  {
16  public:
17  virtual ~BSTFreeList(); // 00
18 
19  // members
20  std::uint32_t lock; // 08
21  std::uint32_t pad0C; // 0C
23  };
24  static_assert(sizeof(BSTFreeList<void*>) == 0x18);
25 
26  template <class T, std::size_t SIZE>
27  class BSTStaticFreeList : public BSTFreeList<T>
28  {
29  virtual ~BSTStaticFreeList(); // 00
30 
31  // members
32  BSTFreeListElem<T> elems[SIZE]; // 18
33  };
34  // size == 0x18 + sizeof(BSTFreeListElem<T>) * SIZE
35 }
Definition: BSTFreeList.h:15
std::uint32_t pad0C
Definition: BSTFreeList.h:21
virtual ~BSTFreeList()
BSTFreeListElem< T > * free
Definition: BSTFreeList.h:22
std::uint32_t lock
Definition: BSTFreeList.h:20
Definition: BSTFreeList.h:28
Definition: AbsorbEffect.h:6
Definition: BSTFreeList.h:7
char elem[sizeof(T)]
Definition: BSTFreeList.h:8
BSTFreeListElem< T > * next
Definition: BSTFreeList.h:9