51 using MovementSystemCategory = ::entt::
52 type_list<::EntitySystems::UsedInServerPlayerMovement, ::EntitySystems::UsedInClientMovementCorrections>;
56 using SystemInvokeCallbackPair =
61 using TotalTickCallbackFunc = ::std::function<void()>;
63 using TotalTickCallbackPair = ::std::pair<::std::function<void()>, ::std::function<void()>>;
65 using TotalTickCallbackSig = void();
70 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::PlayerInteractionSystem>> mPlayerInteractionSystem;
71 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::IEntitySystemsCollection>> mSystems;
72 ::ll::TypedStorage<8, 16, ::OwnerPtr<::EcsEventDispatcher>> mDispatcher;
73 ::ll::TypedStorage<8, 32, ::std::string> mName;
74 ::ll::TypedStorage<1, 1, bool> mEnableTimingCapture;
75 ::ll::TypedStorage<8, 64, ::std::function<void()>> mPreTotalTick;
76 ::ll::TypedStorage<8, 64, ::std::function<void()>> mPostTotalTick;
77 ::ll::TypedStorage<8, 64, ::std::function<void(
::TickingSystemId)>> mPreSystemInvoke;
78 ::ll::TypedStorage<8, 64, ::std::function<void(
::TickingSystemId)>> mPostSystemInvoke;
79 ::ll::TypedStorage<8, 8, ::Bedrock::Profiler::details::PredeclaredAnnotation> mTickingAnnotation;
89 virtual ~EntitySystems() ;
95 virtual void registerTickingSystem(
97 ::std::unique_ptr<::ITickingSystem> system,
108 MCAPI
explicit EntitySystems(::std::string_view name);
110 MCAPI EntitySystems(::std::unique_ptr<::IEntitySystemsCollection> systems, ::std::string_view name);
114 MCAPI
void _singleTickCategory(
121 MCFOLD ::StackRefResult<::EcsEventDispatcher> getDispatcher();
124 MCFOLD ::PlayerInteractionSystem& getPlayerInteractionSystem();
126 MCAPI ::std::vector<::gsl::not_null<::SystemInfo const*>>
130 MCAPI ::SystemInfo
const* getSystemInfoForTickingSystemId(
::TickingSystemId id)
const;
132 MCAPI ::TickingSystemId getTickingSystemIdFromIndex(uint64 index)
const;
149 setSystemInvokeCallbacks(
154 MCAPI ::std::pair<::std::function<void()>, ::std::function<void()>>
155 setTotalTickCallbacks(::std::function<
void()>&& preTick, ::std::function<
void()>&& postTick);
168 MCAPI
void* $ctor(::std::string_view name);
170 MCAPI
void* $ctor(::std::unique_ptr<::IEntitySystemsCollection> systems, ::std::string_view name);
186 MCAPI
void $registerTickingSystem(
188 ::std::unique_ptr<::ITickingSystem> system,
Definition EntityContext.h:17
Definition StrictEntityContext.h:14