LeviLamina
Loading...
Searching...
No Matches
ActorAnimationControllerGroup.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/string/HashedString.h"
7#include "mc/deps/core/utility/EnableNonOwnerReferences.h"
8#include "mc/deps/core/utility/NonOwnerPointer.h"
9#include "mc/platform/threading/Mutex.h"
10#include "mc/server/commands/CurrentCmdVersion.h"
11#include "mc/util/json_util/JsonSchemaObjectNode.h"
12
13// auto generated forward declare list
14// clang-format off
20class SemVersion;
22namespace Core { class Path; }
23namespace Json { class Value; }
24namespace JsonUtil { class EmptyClass; }
25// clang-format on
26
27class ActorAnimationControllerGroup : public ::Bedrock::EnableNonOwnerReferences {
28public:
29 // member variables
30 // NOLINTBEGIN
31 ::ll::TypedStorage<8, 8, int64 const> mResourceLoadTimeStamp;
32 ::ll::TypedStorage<8, 80, ::Bedrock::Threading::Mutex> mActorAnimationControllerLock;
33 ::ll::TypedStorage<8, 64, ::std::unordered_map<::HashedString, ::std::shared_ptr<::ActorAnimationControllerInfo>>>
34 mAnimationControllers;
35 ::ll::TypedStorage<8, 24, ::Bedrock::NonOwnerPointer<::ResourceLoadManager>> mResourceLoadManager;
36 // NOLINTEND
37
38public:
39 // virtual functions
40 // NOLINTBEGIN
41 virtual ~ActorAnimationControllerGroup() /*override*/;
42 // NOLINTEND
43
44public:
45 // member functions
46 // NOLINTBEGIN
47 MCAPI ActorAnimationControllerGroup();
48
49 MCAPI void _loadActorAnimationController(
50 ::std::string const& fileData,
51 ::Core::Path const& filenameWithExtension,
52 ::MinEngineVersion const& minEngineVersion,
53 ::CurrentCmdVersion packCommandVersion
54 );
55
56 MCAPI ::ActorAnimationControllerPtr getActorAnimationController(::HashedString const& name);
57
58 MCAPI ::std::shared_ptr<::ActorAnimationControllerInfo> getActorAnimationControllerInfo(::HashedString const& name);
59
60#ifdef LL_PLAT_C
61 MCAPI void loadActorAnimationControllersAsync(
62 ::ResourcePackManager& resourcePackManager,
63 ::Bedrock::NotNullNonOwnerPtr<::ResourceLoadManager> resourceLoadManager
64 );
65#endif
66
67 MCAPI void loadActorAnimationControllersSync(::ResourcePackManager& resourcePackManager);
68 // NOLINTEND
69
70public:
71 // static functions
72 // NOLINTBEGIN
73 MCAPI static ::std::shared_ptr<
75 _buildAnimationControllerFileSchema_v1_10_Or_Later(::SemVersion const& version);
76
77 MCAPI static ::std::shared_ptr<::JsonUtil::JsonSchemaObjectNode<::JsonUtil::EmptyClass, bool>>
78 _buildAnimationControllerFileSchema_v1_8();
79
80 MCAPI static bool loadFormatVersion(::Json::Value const& root, ::SemVersion& version);
81
82 MCAPI static bool upgrade_v1_8_to_v1_10(::Json::Value& root, ::MinEngineVersion const& minEngineVersion);
83 // NOLINTEND
84
85public:
86 // constructor thunks
87 // NOLINTBEGIN
88 MCAPI void* $ctor();
89 // NOLINTEND
90
91public:
92 // destructor thunk
93 // NOLINTBEGIN
94 MCAPI void $dtor();
95 // NOLINTEND
96
97public:
98 // vftables
99 // NOLINTBEGIN
100 MCNAPI static void** $vftable();
101 // NOLINTEND
102};
static MCAPI void ** $vftable()
Definition ActorAnimationControllerInfo.h:13
Definition ActorAnimationControllerPtr.h:12
Definition EnableNonOwnerReferences.h:7
Definition Path.h:12
Definition HashedString.h:5
Definition EmptyClass.h:7
Definition JsonSchemaObjectNode.h:8
Definition Value.h:16
Definition MinEngineVersion.h:15
Definition ResourceLoadManager.h:19
Definition ResourcePackManager.h:35
Definition SemVersion.h:15
Definition ActorAnimationControllerGroupParseMetaData.h:13