CommonLibSSE (powerof3)
Loading...
Searching...
No Matches
ProcessLists.h
Go to the documentation of this file.
1#pragma once
2
3#include "RE/B/BSAtomic.h"
4#include "RE/B/BSContainer.h"
6#include "RE/B/BSTArray.h"
7#include "RE/B/BSTList.h"
8#include "RE/B/BSTSingleton.h"
10#include "RE/C/Crime.h"
11#include "RE/N/NiSmartPointer.h"
12
13namespace RE
14{
15 class Actor;
16 class BSTempEffect;
17 class ModelReferenceEffect;
18 class ShaderReferenceEffect;
19 class SyncQueueObj;
20
21 class ProcessLists : public BSTSingletonSDM<ProcessLists>
22 {
23 public:
25 {
26 public:
27 inline static constexpr auto RTTI = RTTI_ProcessLists__GetActorsFilter;
28
29 virtual ~GetActorsFilter(); // 00
30
31 // add
32 virtual bool IsValid(Actor* a_actor) = 0; // 01
33 };
34 static_assert(sizeof(GetActorsFilter) == 0x8);
35
37
39 void ForAllActors(std::function<BSContainer::ForEachResult(Actor&)> a_callback);
40 void ForEachHighActor(std::function<BSContainer::ForEachResult(Actor&)> a_callback);
45 std::int16_t RequestHighestDetectionLevelAgainstActor(Actor* a_actor, std::uint32_t& a_LOSCount);
47 void StopCombatAndAlarmOnActor(Actor* a_actor, bool a_notAlarm);
48
49 // members
50 bool runDetection; // 001
51 bool showDetectionStats; // 002
52 std::uint8_t pad003; // 003
54 bool processHigh; // 008
55 bool processLow; // 009
56 bool processMHigh; // 00A
57 bool processMLow; // 00B
58 bool runEditorSchedules; // 00C
60 std::uint8_t unk00E; // 00E
61 std::uint8_t pad00F; // 00F
62 std::int32_t numberHighActors; // 010
63 float unk014; // 014
64 std::uint32_t unk018; // 018
67 std::uint32_t unk028; // 028
68 std::uint32_t pad02C; // 02C
74 BSSimpleList<Crime*>* globalCrimes[PackageNS::CRIME_TYPES::kTotal]; // 0B0
81 std::uint64_t unk148; // 148
82 std::uint64_t unk150; // 150
91 std::uint32_t currentLowActor; // 1D8
92 std::uint32_t currentMiddleHighActor; // 1DC
93 std::uint32_t currentMiddleLowActor; // 1E0
94 bool runSchedules; // 1E4
95 bool runMovement; // 1E5
96 bool runAnimations; // 1E6
98 std::uint64_t unk1E8; // 1E8
99 };
100 static_assert(sizeof(ProcessLists) == 0x1F0);
101}
Definition: Actor.h:127
Definition: BSAtomic.h:41
Definition: BSTList.h:10
Definition: BSAtomic.h:49
Definition: BSTArray.h:377
Definition: BSTempEffect.h:29
Definition: ModelReferenceEffect.h:20
Definition: ProcessLists.h:25
virtual bool IsValid(Actor *a_actor)=0
static constexpr auto RTTI
Definition: ProcessLists.h:27
Definition: ProcessLists.h:22
float removeExcessDeadTimer
Definition: ProcessLists.h:65
bool updateActorsInPlayerCell
Definition: ProcessLists.h:97
std::uint32_t unk028
Definition: ProcessLists.h:67
BSTArray< ObjectRefHandle > tempShouldMoves
Definition: ProcessLists.h:83
bool processMHigh
Definition: ProcessLists.h:56
BSTArray< ActorHandle > initPackageLocationsQueue
Definition: ProcessLists.h:85
bool runAnimations
Definition: ProcessLists.h:96
std::uint32_t unk018
Definition: ProcessLists.h:64
BSTArray< ActorHandle > * allProcesses[4]
Definition: ProcessLists.h:73
ActorHandle statdetect
Definition: ProcessLists.h:53
std::uint32_t pad02C
Definition: ProcessLists.h:68
BSTArray< NiPointer< BSTempEffect > > interfaceEffects
Definition: ProcessLists.h:79
std::uint64_t unk150
Definition: ProcessLists.h:82
void ForEachHighActor(std::function< BSContainer::ForEachResult(Actor &)> a_callback)
std::uint64_t unk148
Definition: ProcessLists.h:81
std::int16_t RequestHighestDetectionLevelAgainstActor(Actor *a_actor, std::uint32_t &a_LOSCount)
std::int32_t numberHighActors
Definition: ProcessLists.h:62
BSSpinLock globalEffectsLock
Definition: ProcessLists.h:76
BSSpinLock magicEffectsLock
Definition: ProcessLists.h:78
std::uint64_t unk1E8
Definition: ProcessLists.h:98
std::uint8_t unk00E
Definition: ProcessLists.h:60
void StopAllMagicEffects(TESObjectREFR &a_ref)
bool showDetectionStats
Definition: ProcessLists.h:51
std::uint32_t currentMiddleLowActor
Definition: ProcessLists.h:93
std::uint32_t currentMiddleHighActor
Definition: ProcessLists.h:92
float GetSystemTimeClock()
float playerKnockObjectCommentTimer
Definition: ProcessLists.h:90
bool runDetection
Definition: ProcessLists.h:50
void ForEachShaderEffect(std::function< BSContainer::ForEachResult(ShaderReferenceEffect &)> a_callback)
bool runMovement
Definition: ProcessLists.h:95
BSTArray< BSTSmartPointer< SyncQueueObj > > syncPositionQueue
Definition: ProcessLists.h:88
BSSimpleList< ActorHandle > aliveActorList
Definition: ProcessLists.h:84
void ForEachModelEffect(std::function< BSContainer::ForEachResult(ModelReferenceEffect &)> a_callback)
BSSpinLock interfaceEffectsLock
Definition: ProcessLists.h:80
float playerActionCommentTimer
Definition: ProcessLists.h:89
BSTArray< ActorHandle > lowActorHandles
Definition: ProcessLists.h:70
BSTArray< ActorHandle > initAnimPositionQueue
Definition: ProcessLists.h:87
void ClearCachedFactionFightReactions() const
bool processHigh
Definition: ProcessLists.h:54
BSTArray< NiPointer< BSTempEffect > > magicEffects
Definition: ProcessLists.h:77
BSSemaphore movementSyncSema
Definition: ProcessLists.h:66
float unk014
Definition: ProcessLists.h:63
bool runSchedules
Definition: ProcessLists.h:94
bool runEditorSchedules
Definition: ProcessLists.h:58
void ForAllActors(std::function< BSContainer::ForEachResult(Actor &)> a_callback)
static ProcessLists * GetSingleton()
bool processMLow
Definition: ProcessLists.h:57
BSTArray< ActorHandle > middleHighActorHandles
Definition: ProcessLists.h:71
BSTArray< ActorHandle > highActorHandles
Definition: ProcessLists.h:69
BSSimpleList< Crime * > * globalCrimes[PackageNS::CRIME_TYPES::kTotal]
Definition: ProcessLists.h:74
void ForEachMagicTempEffect(std::function< BSContainer::ForEachResult(BSTempEffect &)> a_callback)
BSSpinLock packageLocationsQueueLock
Definition: ProcessLists.h:86
std::uint8_t pad00F
Definition: ProcessLists.h:61
std::uint32_t currentLowActor
Definition: ProcessLists.h:91
bool showDialogueSubtitles
Definition: ProcessLists.h:59
void StopCombatAndAlarmOnActor(Actor *a_actor, bool a_notAlarm)
BSTArray< ActorHandle > middleLowActorHandles
Definition: ProcessLists.h:72
std::uint8_t pad003
Definition: ProcessLists.h:52
bool processLow
Definition: ProcessLists.h:55
BSTArray< NiPointer< BSTempEffect > > globalTempEffects
Definition: ProcessLists.h:75
Definition: ShaderReferenceEffect.h:20
Definition: TESObjectREFR.h:110
ForEachResult
Definition: BSContainer.h:6
Definition: AbsorbEffect.h:6
constexpr REL::ID RTTI_ProcessLists__GetActorsFilter(static_cast< std::uint64_t >(686514))
Definition: BSTSingleton.h:50