CommonLibSSE NG
BGSStoryManagerTreeForm.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "RE/B/BSTArray.h"
4 #include "RE/F/FormTypes.h"
5 #include "RE/T/TESForm.h"
6 
7 namespace RE
8 {
9  class BGSStoryManagerBranchNode;
10  class BGSStoryManagerQuestNode;
11  class BGSStoryManagerTreeForm;
12  class PeriodicUpdateTimer;
13  class TESCondition;
14 
16  {
17  public:
18  inline static constexpr auto RTTI = RTTI_BGSStoryManagerTreeVisitor;
19 
20  enum class VisitControl
21  {
22  };
23 
24  virtual ~BGSStoryManagerTreeVisitor(); // 00
25 
26  // add
28  virtual VisitControl VisitQuestNode(BGSStoryManagerQuestNode& a_node, bool a_arg2); // 02
29  virtual VisitControl VisitQuest(TESQuest& a_quest); // 03
30  virtual void Revert(); // 04
31 
32  // members
33  PeriodicUpdateTimer* timer; // 08
34  std::int32_t currentCursorDepth; // 10
35  std::uint32_t pad14; // 14
38  std::uint32_t queryID; // 38
39  std::uint32_t pad3C; // 3C
40  };
41  static_assert(sizeof(BGSStoryManagerTreeVisitor) == 0x40);
42 
44  {
45  public:
46  inline static constexpr auto RTTI = RTTI_BGSStoryManagerTreeForm;
47 
48  ~BGSStoryManagerTreeForm() override; // 00
49 
50  // add
51  [[nodiscard]] virtual std::uint32_t QChildCount() const; // 3B - { return 0; }
52  [[nodiscard]] virtual BGSStoryManagerTreeForm* GetChild(std::uint32_t a_idx) const; // 3C - { return 0; }
53  virtual TESCondition* QConditions() = 0; // 3D
55 
56  // members
57  std::uint32_t lastVisitorID; // 20
58  std::uint32_t pad24; // 24
59  };
60  static_assert(sizeof(BGSStoryManagerTreeForm) == 0x28);
61 }
Definition: BGSStoryManagerBranchNode.h:10
Definition: BGSStoryManagerQuestNode.h:11
Definition: BGSStoryManagerTreeForm.h:44
virtual TESCondition * QConditions()=0
std::uint32_t lastVisitorID
Definition: BGSStoryManagerTreeForm.h:57
static constexpr auto RTTI
Definition: BGSStoryManagerTreeForm.h:46
std::uint32_t pad24
Definition: BGSStoryManagerTreeForm.h:58
virtual BGSStoryManagerTreeForm * GetChild(std::uint32_t a_idx) const
virtual std::uint32_t QChildCount() const
virtual BGSStoryManagerTreeVisitor::VisitControl AcceptVisitor(BGSStoryManagerTreeVisitor &a_visitor)=0
Definition: BGSStoryManagerTreeForm.h:16
VisitControl
Definition: BGSStoryManagerTreeForm.h:21
virtual VisitControl VisitQuest(TESQuest &a_quest)
BSTArray< BGSStoryManagerTreeForm * > cursorAncestry
Definition: BGSStoryManagerTreeForm.h:37
static constexpr auto RTTI
Definition: BGSStoryManagerTreeForm.h:18
PeriodicUpdateTimer * timer
Definition: BGSStoryManagerTreeForm.h:33
std::int32_t currentCursorDepth
Definition: BGSStoryManagerTreeForm.h:34
std::uint32_t pad14
Definition: BGSStoryManagerTreeForm.h:35
std::uint32_t pad3C
Definition: BGSStoryManagerTreeForm.h:39
std::uint32_t queryID
Definition: BGSStoryManagerTreeForm.h:38
virtual VisitControl VisitBranchNode(BGSStoryManagerBranchNode &a_node)
BGSStoryManagerQuestNode * lastQuestParent
Definition: BGSStoryManagerTreeForm.h:36
virtual VisitControl VisitQuestNode(BGSStoryManagerQuestNode &a_node, bool a_arg2)
Definition: BSTArray.h:377
Definition: TESCondition.h:992
Definition: TESForm.h:36
Definition: TESQuest.h:189
Definition: AbsorbEffect.h:6
constexpr REL::VariantID RTTI_BGSStoryManagerTreeForm(684849, 392553, 0x1edad28)
constexpr REL::VariantID RTTI_BGSStoryManagerTreeVisitor(686325, 394134, 0x1efb7f8)