CommonLibVR
IAIWorldLocationHandle.h
Go to the documentation of this file.
1 #pragma once
2 
3 namespace RE
4 {
5  class IAIWorldLocation;
6  class PackageLocation;
7  class TESObjectREFR;
8  struct AIWorldLocationContext;
9 
11  {
12  public:
13  inline static constexpr auto RTTI = RTTI_IAIWorldLocationHandle;
14  inline static constexpr auto VTABLE = VTABLE_IAIWorldLocationHandle;
15 
16  virtual ~IAIWorldLocationHandle(); // 00
17 
18  // add
19  virtual const IAIWorldLocation* AllocateLocation(AIWorldLocationContext* a_context) = 0; // 01
20  virtual PackageLocation* GetAsPackageLocation(); // 02 - { return 0; }
21  virtual bool IsRefAtLocation(AIWorldLocationContext* a_context, TESObjectREFR* a_ref) = 0; // 03
22  private:
23  KEEP_FOR_RE()
24  };
25  static_assert(sizeof(IAIWorldLocationHandle) == 0x8);
26 }
#define KEEP_FOR_RE()
Definition: PCH.h:713
Definition: IAIWorldLocationHandle.h:11
virtual PackageLocation * GetAsPackageLocation()
virtual bool IsRefAtLocation(AIWorldLocationContext *a_context, TESObjectREFR *a_ref)=0
static constexpr auto RTTI
Definition: IAIWorldLocationHandle.h:13
virtual const IAIWorldLocation * AllocateLocation(AIWorldLocationContext *a_context)=0
static constexpr auto VTABLE
Definition: IAIWorldLocationHandle.h:14
Definition: PackageLocation.h:11
Definition: TESObjectREFR.h:113
Definition: AbsorbEffect.h:6
constexpr REL::ID RTTI_IAIWorldLocationHandle(static_cast< std::uint64_t >(685600))
constexpr std::array< REL::ID, 1 > VTABLE_IAIWorldLocationHandle
Definition: Offsets_VTABLE.h:11757