CommonLibSSE (powerof3)
GArray.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "RE/G/GAllocator.h"
4 #include "RE/G/GArrayBase.h"
5 #include "RE/G/GArrayData.h"
7 #include "RE/G/GStats.h"
8 
9 namespace RE
10 {
11  template <class T, std::uint32_t SID = GStatGroup::kGStat_Default_Mem, class SizePolicy = GArrayDefaultPolicy>
12  class GArray : public GArrayBase<GArrayData<T, GAllocatorGH<T, SID>, SizePolicy>>
13  {
14  public:
15  using ValueType = T;
17  using SizePolicyType = SizePolicy;
20 
21  GArray() :
22  BaseType()
23  {}
24 
25  GArray(std::int32_t a_size) :
26  BaseType(a_size)
27  {}
28 
29  GArray(const SizePolicyType& a_policy) :
30  BaseType()
31  {
32  SetSizePolicy(a_policy);
33  }
34 
35  GArray(const SelfType& a_array) :
36  BaseType(a_array)
37  {}
38 
39  const SelfType& operator=(const SelfType& a_array)
40  {
41  BaseType::operator=(a_array);
42  return *this;
43  }
44  };
45  static_assert(sizeof(GArray<void*>) == 0x18);
46 }
Definition: GArrayBase.h:11
const SelfType & operator=(const SelfType &a_array)
Definition: GArrayBase.h:385
Definition: GArray.h:13
GArray()
Definition: GArray.h:21
GArray(const SizePolicyType &a_policy)
Definition: GArray.h:29
SizePolicy SizePolicyType
Definition: GArray.h:17
const SelfType & operator=(const SelfType &a_array)
Definition: GArray.h:39
GArray(const SelfType &a_array)
Definition: GArray.h:35
T ValueType
Definition: GArray.h:15
GArray(std::int32_t a_size)
Definition: GArray.h:25
Definition: AbsorbEffect.h:6
Definition: GAllocator.h:12