CommonLibSSE NG
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:131
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:112
ForEachResult
Definition BSContainer.h:6
Definition AbsorbEffect.h:6
constexpr REL::VariantID RTTI_ProcessLists__GetActorsFilter(686514, 394349, 0x1eff198)
Definition BSTSingleton.h:50