CommonLibSSE (Parapets fork)
ProcessLists.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "RE/B/BSAtomic.h"
4 #include "RE/B/BSPointerHandle.h"
5 #include "RE/B/BSSimpleList.h"
6 #include "RE/B/BSTArray.h"
7 #include "RE/B/BSTSingleton.h"
8 #include "RE/B/BSTSmartPointer.h"
9 #include "RE/C/Crime.h"
10 #include "RE/N/NiSmartPointer.h"
11 
12 namespace RE
13 {
14  class Actor;
15  class BSTempEffect;
16  class SyncQueueObj;
17 
18  class ProcessLists : public BSTSingletonSDM<ProcessLists>
19  {
20  public:
22  {
23  public:
24  inline static constexpr auto RTTI = RTTI_ProcessLists__GetActorsFilter;
25 
26  virtual ~GetActorsFilter(); // 00
27 
28  // add
29  virtual bool IsValid(Actor* a_actor) = 0; // 01
30  };
31  static_assert(sizeof(GetActorsFilter) == 0x8);
32 
34 
36  void StopCombatAndAlarmOnActor(Actor* a_actor, bool a_notAlarm);
37 
38  // members
39  bool runDetection; // 001
40  bool showDetectionStats; // 002
41  std::uint8_t pad003; // 003
43  bool processHigh; // 008
44  bool processLow; // 009
45  bool processMHigh; // 00A
46  bool processMLow; // 00B
47  std::uint16_t unk00C; // 00C
48  std::uint8_t unk00E; // 00E
49  std::uint8_t pad00F; // 00F
50  std::int32_t numberHighActors; // 010
51  float unk014; // 014
52  std::uint32_t unk018; // 018
53  float removeExcessDeadTimer; // 01C
55  std::uint32_t unk028; // 028
56  std::uint32_t pad02C; // 02C
62  BSSimpleList<Crime*>* globalCrimes[PackageNS::CRIME_TYPES::kTotal]; // 0B0
64  mutable BSSpinLock globalEffectsLock; // 100
66  mutable BSSpinLock magicEffectsLock; // 120
69  std::uint64_t unk148; // 148
70  std::uint64_t unk150; // 150
79  std::uint32_t currentLowActor; // 1D8
80  std::uint32_t currentMiddleHighActor; // 1DC
81  std::uint32_t currentMiddleLowActor; // 1E0
82  bool runSchedules; // 1E4
83  bool runMovement; // 1E5
84  bool runAnimations; // 1E6
86  std::uint64_t unk1E8; // 1E8
87  };
88  static_assert(sizeof(ProcessLists) == 0x1F0);
89 }
Definition: Actor.h:134
Definition: BSAtomic.h:41
Definition: BSSimpleList.h:10
Definition: BSAtomic.h:49
Definition: BSTArray.h:377
Definition: ProcessLists.h:22
virtual bool IsValid(Actor *a_actor)=0
static constexpr auto RTTI
Definition: ProcessLists.h:24
Definition: ProcessLists.h:19
float removeExcessDeadTimer
Definition: ProcessLists.h:53
bool updateActorsInPlayerCell
Definition: ProcessLists.h:85
std::uint32_t unk028
Definition: ProcessLists.h:55
BSTArray< ObjectRefHandle > tempShouldMoves
Definition: ProcessLists.h:71
bool processMHigh
Definition: ProcessLists.h:45
BSTArray< ActorHandle > initPackageLocationsQueue
Definition: ProcessLists.h:73
bool runAnimations
Definition: ProcessLists.h:84
std::uint32_t unk018
Definition: ProcessLists.h:52
BSTArray< ActorHandle > * allProcesses[4]
Definition: ProcessLists.h:61
ActorHandle statdetect
Definition: ProcessLists.h:42
static ProcessLists * GetSingleton()
std::uint32_t pad02C
Definition: ProcessLists.h:56
BSTArray< NiPointer< BSTempEffect > > interfaceEffects
Definition: ProcessLists.h:67
std::uint64_t unk150
Definition: ProcessLists.h:70
std::uint64_t unk148
Definition: ProcessLists.h:69
std::int32_t numberHighActors
Definition: ProcessLists.h:50
BSSpinLock globalEffectsLock
Definition: ProcessLists.h:64
BSSpinLock magicEffectsLock
Definition: ProcessLists.h:66
std::uint64_t unk1E8
Definition: ProcessLists.h:86
std::uint8_t unk00E
Definition: ProcessLists.h:48
bool showDetectionStats
Definition: ProcessLists.h:40
std::uint32_t currentMiddleLowActor
Definition: ProcessLists.h:81
std::uint32_t currentMiddleHighActor
Definition: ProcessLists.h:80
float playerKnockObjectCommentTimer
Definition: ProcessLists.h:78
bool runDetection
Definition: ProcessLists.h:39
bool runMovement
Definition: ProcessLists.h:83
BSTArray< BSTSmartPointer< SyncQueueObj > > syncPositionQueue
Definition: ProcessLists.h:76
BSSpinLock interfaceEffectsLock
Definition: ProcessLists.h:68
float playerActionCommentTimer
Definition: ProcessLists.h:77
BSTArray< ActorHandle > lowActorHandles
Definition: ProcessLists.h:58
BSTArray< ActorHandle > initAnimPositionQueue
Definition: ProcessLists.h:75
void ClearCachedFactionFightReactions() const
bool processHigh
Definition: ProcessLists.h:43
BSTArray< NiPointer< BSTempEffect > > magicEffects
Definition: ProcessLists.h:65
BSSemaphore movementSyncSema
Definition: ProcessLists.h:54
float unk014
Definition: ProcessLists.h:51
bool runSchedules
Definition: ProcessLists.h:82
bool processMLow
Definition: ProcessLists.h:46
BSTArray< ActorHandle > middleHighActorHandles
Definition: ProcessLists.h:59
BSTArray< ActorHandle > highActorHandles
Definition: ProcessLists.h:57
BSSimpleList< Crime * > * globalCrimes[PackageNS::CRIME_TYPES::kTotal]
Definition: ProcessLists.h:62
BSSimpleList< ActorHandle > unk170
Definition: ProcessLists.h:72
BSSpinLock packageLocationsQueueLock
Definition: ProcessLists.h:74
std::uint16_t unk00C
Definition: ProcessLists.h:47
std::uint8_t pad00F
Definition: ProcessLists.h:49
std::uint32_t currentLowActor
Definition: ProcessLists.h:79
void StopCombatAndAlarmOnActor(Actor *a_actor, bool a_notAlarm)
BSTArray< ActorHandle > middleLowActorHandles
Definition: ProcessLists.h:60
std::uint8_t pad003
Definition: ProcessLists.h:41
bool processLow
Definition: ProcessLists.h:44
BSTArray< NiPointer< BSTempEffect > > globalTempEffects
Definition: ProcessLists.h:63
Definition: AbsorbEffect.h:6
constexpr REL::ID RTTI_ProcessLists__GetActorsFilter
Definition: Offsets_RTTI.h:5732
Definition: BSTSingleton.h:50