LeviLamina
Loading...
Searching...
No Matches
ActorManager.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/utility/NonOwnerPointer.h"
7#include "mc/deps/core/utility/pub_sub/Connector.h"
8#include "mc/deps/game_refs/OwnerPtr.h"
9#include "mc/world/actor/ActorInitializationMethod.h"
10#include "mc/world/level/IActorManagerConnector.h"
11
12// auto generated forward declare list
13// clang-format off
14class Actor;
16class Dimension;
17class EntityContext;
21class LevelChunk;
22class WeakEntityRef;
23// clang-format on
24
26public:
27 // member variables
28 // NOLINTBEGIN
37 // NOLINTEND
38
39public:
40 // prevent constructor by default
41 ActorManager& operator=(ActorManager const&);
44
45public:
46 // virtual functions
47 // NOLINTBEGIN
48 // vIndex: 3
49 virtual ~ActorManager();
50
51 // vIndex: 0
52 virtual ::Bedrock::PubSub::Connector<void(::Actor&)>& getRegisterEntityAddedConnector() /*override*/;
53
54 // vIndex: 1
55 virtual ::Bedrock::PubSub::Connector<void(::Actor&, ::ActorInitializationMethod)>&
56 getRegisterPostReloadActorConnector() /*override*/;
57
58 // vIndex: 2
59 virtual ::Bedrock::PubSub::Connector<void(::Actor&)>&
60 getRegisterOnRemoveActorEntityReferenceConnector() /*override*/;
61 // NOLINTEND
62
63public:
64 // member functions
65 // NOLINTBEGIN
67 ::std::unique_ptr<::IActorManagerProxy> actorManagerProxy,
68 ::Bedrock::NotNullNonOwnerPtr<::ActorGarbageCollector> actorGarbageCollector
69 );
70
71 MCNAPI void _onChunkDiscarded(::LevelChunk& levelChunk);
72
73 MCNAPI ::Actor* addActorEntity(::IAddActorEntityProxy& addActorEntityProxy, ::OwnerPtr<::EntityContext> entity);
74
76
78
79 MCNAPI ::OwnerPtr<::EntityContext> deleteActorEntityFromWorldAndTakeEntity(::WeakEntityRef entityRef);
80
82
83 MCNAPI void onChunkDiscarded(::LevelChunk const& levelChunk, ::WeakEntityRef entityRef);
84
85 MCNAPI void registerForLevelChunkEvents(::ILevelChunkEventManagerConnector& levelChunkEventManagerConnector);
86
87 MCNAPI ::OwnerPtr<::EntityContext> removeActorEntityAndTakeEntity(::WeakEntityRef entityRef);
88
90
91 MCNAPI ::OwnerPtr<::EntityContext> removeEntity(::WeakEntityRef entityRef);
92
93 MCNAPI ::OwnerPtr<::EntityContext> takeEntity(::WeakEntityRef entityRef, ::LevelChunk& levelChunk);
94 // NOLINTEND
95
96public:
97 // constructor thunks
98 // NOLINTBEGIN
99 MCNAPI void* $ctor(
100 ::std::unique_ptr<::IActorManagerProxy> actorManagerProxy,
101 ::Bedrock::NotNullNonOwnerPtr<::ActorGarbageCollector> actorGarbageCollector
102 );
103 // NOLINTEND
104
105public:
106 // destructor thunk
107 // NOLINTBEGIN
108 MCNAPI void $dtor();
109 // NOLINTEND
110
111public:
112 // virtual function thunks
113 // NOLINTBEGIN
114 MCNAPI ::Bedrock::PubSub::Connector<void(::Actor&)>& $getRegisterEntityAddedConnector();
115
116 MCNAPI ::Bedrock::PubSub::Connector<void(::Actor&, ::ActorInitializationMethod)>&
118
119 MCNAPI ::Bedrock::PubSub::Connector<void(::Actor&)>& $getRegisterOnRemoveActorEntityReferenceConnector();
120 // NOLINTEND
121
122public:
123 // vftables
124 // NOLINTBEGIN
125 MCNAPI static void** $vftable();
126 // NOLINTEND
127};
Definition ActorGarbageCollector.h:13
Definition ActorManager.h:25
MCAPI void onChunkDiscarded(::LevelChunk const &levelChunk, ::WeakEntityRef entityRef)
MCAPI void _onChunkDiscarded(::LevelChunk &levelChunk)
MCAPI::Actor * addActorEntity(::IAddActorEntityProxy &addActorEntityProxy, ::OwnerPtr<::EntityContext > entity)
MCAPI void forceRemoveActorFromWorld(::Actor &actor)
MCAPI::Actor * addGlobalActorEntity(::Dimension &dimension, ::OwnerPtr<::EntityContext > entity)
MCAPI void $dtor()
MCAPI ::OwnerPtr<::EntityContext > removeActorEntityAndTakeEntity(::WeakEntityRef entityRef)
MCAPI void registerForLevelChunkEvents(::ILevelChunkEventManagerConnector &levelChunkEventManagerConnector)
static MCAPI void ** $vftable()
MCAPI ::Bedrock::PubSub::Connector< void(::Actor &, ::ActorInitializationMethod)> & $getRegisterPostReloadActorConnector()
MCAPI void * $ctor(::std::unique_ptr<::IActorManagerProxy > actorManagerProxy, ::Bedrock::NotNullNonOwnerPtr<::ActorGarbageCollector > actorGarbageCollector)
MCAPI ::Bedrock::PubSub::Connector< void(::Actor &)> & $getRegisterOnRemoveActorEntityReferenceConnector()
MCAPI ActorManager(::std::unique_ptr<::IActorManagerProxy > actorManagerProxy, ::Bedrock::NotNullNonOwnerPtr<::ActorGarbageCollector > actorGarbageCollector)
MCAPI ::OwnerPtr<::EntityContext > takeEntity(::WeakEntityRef entityRef, ::LevelChunk &levelChunk)
MCAPI ::OwnerPtr<::EntityContext > removeEntity(::WeakEntityRef entityRef)
MCAPI void cleanupActorEntityReferencesGarbageCollect(::OwnerPtr<::EntityContext > entity)
MCAPI ::OwnerPtr<::EntityContext > deleteActorEntityFromWorldAndTakeEntity(::WeakEntityRef entityRef)
MCAPI void removeActorEntityReferencesForDeletion(::Actor &actor)
MCAPI ::Bedrock::PubSub::Connector< void(::Actor &)> & $getRegisterEntityAddedConnector()
Definition Actor.h:103
Definition Dimension.h:83
Definition EntityContext.h:16
Definition IActorManagerConnector.h:14
Definition IActorManagerProxy.h:10
Definition IAddActorEntityProxy.h:10
Definition ILevelChunkEventManagerConnector.h:14
Definition LevelChunk.h:74
Definition OwnerPtr.h:7
Definition WeakEntityRef.h:14
Definition Alias.h:14