LeviLamina
Loading...
Searching...
No Matches
ScriptActorComponents.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/game_refs/WeakRef.h"
7
8// auto generated forward declare list
9// clang-format off
10class EntityContext;
11namespace ScriptModuleMinecraft { class IScriptActorComponentFactory; }
12namespace ScriptModuleMinecraft { class ScriptComponentTypeEnumBuilder; }
13namespace Scripting { class ModuleBindingBuilder; }
14namespace Scripting { struct Version; }
15// clang-format on
16
17namespace ScriptModuleMinecraft {
18
19class ScriptActorComponents {
20public:
21 // member variables
22 // NOLINTBEGIN
23 ::ll::TypedStorage<
24 8,
25 64,
26 ::std::
27 unordered_map<::std::string_view, ::std::shared_ptr<::ScriptModuleMinecraft::IScriptActorComponentFactory>>>
28 mNativeFactories;
29 // NOLINTEND
30
31public:
32 // member functions
33 // NOLINTBEGIN
34 MCAPI ScriptActorComponents();
35
36 MCAPI ::std::unordered_map<
37 ::std::string_view,
38 ::std::shared_ptr<::ScriptModuleMinecraft::IScriptActorComponentFactory>> const&
39 _getOrCreateActorComponentFactories() const;
40
41 MCAPI ::std::vector<::std::string_view> getSupportedComponentIds(::WeakRef<::EntityContext> entityRef) const;
42
43 MCAPI ::std::shared_ptr<::ScriptModuleMinecraft::IScriptActorComponentFactory> const&
44 tryGetFactory(::std::string const& componentName);
45 // NOLINTEND
46
47public:
48 // static functions
49 // NOLINTBEGIN
50 MCAPI static void bind(
52 ::Scripting::Version const& scriptingVersion,
54 ::std::shared_ptr<::ScriptModuleMinecraft::ScriptActorComponents> const& actorComponents
55 );
56 // NOLINTEND
57
58public:
59 // constructor thunks
60 // NOLINTBEGIN
61 MCAPI void* $ctor();
62 // NOLINTEND
63};
64
65} // namespace ScriptModuleMinecraft
Definition EntityContext.h:17
Definition IScriptActorComponentFactory.h:18
Definition ScriptComponentTypeEnumBuilder.h:18
Definition ModuleBindingBuilder.h:31
Definition WeakRef.h:8
Definition Version.h:7