CommonLibSSE NG
IAnimationGraphManagerHolder.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "RE/B/BSFixedString.h"
4 #include "RE/B/BSTArray.h"
5 #include "RE/B/BSTSmartPointer.h"
6 
7 namespace RE
8 {
9  class BSAnimationGraphChannel;
10  class BSAnimationGraphManager;
11  class BShkbAnimationGraph;
12  class NiAVObject;
13  class NiPoint3;
14 
15  struct BSAnimationUpdateData;
16 
18  {
19  public:
20  inline static constexpr auto RTTI = RTTI_IAnimationGraphManagerHolder;
21 
23 
24  // add
25  virtual bool NotifyAnimationGraph(const BSFixedString& a_eventName); // 01
28  virtual bool PopulateGraphNodesToTarget(BSScrapArray<NiAVObject*>& a_nodes); // 04 - { return false; }
30  virtual void Unk_06(void); // 06 - { return 1; }
31  virtual void Unk_07(void); // 07 - { return 1; }
32  virtual bool SetupAnimEventSinks(const BSTSmartPointer<BShkbAnimationGraph>& a_animGraph); // 08 - { return true; } - sinks the holder to the the source passed in
33  virtual void Unk_09(void); // 09 - { return; }
34  virtual bool CreateAnimationChannels(BSScrapArray<BSTSmartPointer<BSAnimationGraphChannel>>& animGraphChannels); // 0A - { return 0; }
35  virtual void PostCreateAnimationGraphManager(BSTSmartPointer<BSAnimationGraphManager>& a_animGraphMgr); // 0B - { return; }
36  virtual void Unk_0C(void); // 0C - { return; }
37  virtual void PostChangeAnimationManager(const BSTSmartPointer<BShkbAnimationGraph>& a_arg1, const BSTSmartPointer<BShkbAnimationGraph>& a_arg2); // 0D - { return; }
38  virtual void Unk_0E(void); // 0E - { return 1; }
39  [[nodiscard]] virtual std::uint32_t GetGraphVariableCacheSize() const; // 0F - { return 0; }
40  virtual bool GetGraphVariableImpl1(const BSFixedString& a_variableName, float& a_out) const; // 10
41  virtual bool GetGraphVariableImpl2(const BSFixedString& a_variableName, std::int32_t& a_out) const; // 11
42  virtual bool GetGraphVariableImpl3(const BSFixedString& a_variableName, bool& a_out) const; // 12
43 
45  bool GetGraphVariableFloat(const BSFixedString& a_variableName, float& a_out) const;
46  bool GetGraphVariableInt(const BSFixedString& a_variableName, std::int32_t& a_out) const;
47  bool GetGraphVariableBool(const BSFixedString& a_variableName, bool& a_out) const;
48  bool GetGraphVariableNiPoint3(const BSFixedString& a_variableName, NiPoint3& a_out) const;
50  bool SetGraphVariableBool(const BSFixedString& a_variableName, bool a_in);
51  bool SetGraphVariableInt(const BSFixedString& a_variableName, std::int32_t a_in);
52  bool SetGraphVariableFloat(const BSFixedString& a_variableName, float a_in);
53  bool SetGraphVariableNiPoint3(const BSFixedString& a_variableName, NiPoint3& a_in) const;
55  };
56  static_assert(sizeof(IAnimationGraphManagerHolder) == 0x8);
57 }
Definition: BSTArray.h:377
Definition: BSTSmartPointer.h:36
Definition: IAnimationGraphManagerHolder.h:18
bool SetGraphVariableFloat(const BSFixedString &a_variableName, float a_in)
virtual bool GetGraphVariableImpl3(const BSFixedString &a_variableName, bool &a_out) const
bool GetGraphVariableBool(const BSFixedString &a_variableName, bool &a_out) const
bool SetGraphVariableNiPoint3(const BSFixedString &a_variableName, NiPoint3 &a_in) const
virtual bool GetGraphVariableImpl2(const BSFixedString &a_variableName, std::int32_t &a_out) const
bool GetGraphVariableNiPoint3(const BSFixedString &a_variableName, NiPoint3 &a_out) const
bool SetGraphVariableBool(const BSFixedString &a_variableName, bool a_in)
virtual bool GetAnimationGraphManagerImpl(BSTSmartPointer< BSAnimationGraphManager > &a_out) const =0
bool UpdateAnimationGraphManager(const BSAnimationUpdateData &a_updateData)
virtual bool SetAnimationGraphManagerImpl(BSTSmartPointer< BSAnimationGraphManager > &a_in)=0
virtual bool NotifyAnimationGraph(const BSFixedString &a_eventName)
bool SetGraphVariableInt(const BSFixedString &a_variableName, std::int32_t a_in)
virtual bool GetGraphVariableImpl1(const BSFixedString &a_variableName, float &a_out) const
bool SetAnimationGraphManager(BSTSmartPointer< BSAnimationGraphManager > &a_in)
virtual bool CreateAnimationChannels(BSScrapArray< BSTSmartPointer< BSAnimationGraphChannel >> &animGraphChannels)
bool GetGraphVariableInt(const BSFixedString &a_variableName, std::int32_t &a_out) const
virtual bool PopulateGraphNodesToTarget(BSScrapArray< NiAVObject * > &a_nodes)
virtual void PostChangeAnimationManager(const BSTSmartPointer< BShkbAnimationGraph > &a_arg1, const BSTSmartPointer< BShkbAnimationGraph > &a_arg2)
virtual bool SetupAnimEventSinks(const BSTSmartPointer< BShkbAnimationGraph > &a_animGraph)
virtual void PostCreateAnimationGraphManager(BSTSmartPointer< BSAnimationGraphManager > &a_animGraphMgr)
bool GetAnimationGraphManager(BSTSmartPointer< BSAnimationGraphManager > &a_out) const
bool GetGraphVariableFloat(const BSFixedString &a_variableName, float &a_out) const
virtual std::uint32_t GetGraphVariableCacheSize() const
virtual bool ConstructAnimationGraph(BSTSmartPointer< BShkbAnimationGraph > &a_out)=0
static constexpr auto RTTI
Definition: IAnimationGraphManagerHolder.h:20
Definition: NiPoint3.h:6
Definition: AbsorbEffect.h:6
constexpr REL::VariantID RTTI_IAnimationGraphManagerHolder(685175, 392941, 0x1ee1038)
Definition: BSAnimationUpdateData.h:10