LeviLamina
Loading...
Searching...
No Matches
AnimationComponent.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/world/actor/RenderParams.h"
8#include "mc/world/actor/SkeletalHierarchyIndex.h"
9#include "mc/world/actor/animation/AnimationComponentGroupType.h"
10#include "mc/world/actor/animation/AnimationComponentID.h"
11
12// auto generated forward declare list
13// clang-format off
14class Actor;
18class BoneOrientation;
20class DataDrivenModel;
21class ExpressionNode;
24// clang-format on
25
27public:
28 // AnimationComponent inner types declare
29 // clang-format off
31 // clang-format on
32
33 // AnimationComponent inner types define
35 public:
36 // member variables
37 // NOLINTBEGIN
41 // NOLINTEND
42
43 public:
44 // prevent constructor by default
48 };
49
50public:
51 // member variables
52 // NOLINTBEGIN
53 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::ActorAnimationControllerStatePlayer>>
54 mCurrentAnimationControllerStatePlayer;
55 ::ll::TypedStorage<8, 24, ::std::vector<::std::shared_ptr<::ActorAnimationPlayer>>> mComponentAnimationPlayers;
56 ::ll::TypedStorage<8, 24, ::std::vector<::std::shared_ptr<::ActorAnimationControllerInfo>>>
57 mOwnedAnimationControllers;
58 ::ll::TypedStorage<8, 64, ::std::unordered_map<::HashedString, ::ModelPartLocator>> mModelPartLocators;
59 ::ll::TypedStorage<8, 496, ::RenderParams> mRenderParams;
60 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::ActorAnimationPlayer>> mPlaySingleAnimation;
61 ::ll::TypedStorage<8, 8, void*> mModelRenderControllerCacheWasBuiltFrom;
62 ::ll::TypedStorage<8, 16, ::std::weak_ptr<::CommonResourceDefinitionMap>> mCommonResourceDefinitionMap;
63 ::ll::TypedStorage<8, 8, ::std::unordered_map<::HashedString, ::HashedString> const*> mParticleEffectMap;
64 ::ll::TypedStorage<8, 64, ::std::function<void(::ActorAnimationPlayer&)>> mAnimationComponentInitFunction;
65 ::ll::TypedStorage<8, 24, ::std::vector<::AnimationComponent::ChildAnimationComponentInfo>>
66 mChildAnimationComponents;
67 ::ll::TypedStorage<8, 64, ::std::unordered_map<::SkeletalHierarchyIndex, ::std::vector<::BoneOrientation>>>
68 mBoneOrientations;
69 ::ll::TypedStorage<1, 1, bool> mAnimationComponentInitialized;
70 ::ll::TypedStorage<4, 4, ::AnimationComponentGroupType> mAnimationComponentGroupType;
71 ::ll::TypedStorage<8, 8, ::AnimationComponentID> mOwnerUUID;
72 ::ll::TypedStorage<8, 8, int64> mLastUpdateFrame;
73 ::ll::TypedStorage<8, 8, uint64> mLastReloadInitTimeStampClient;
74 ::ll::TypedStorage<8, 16, ::std::weak_ptr<::DataDrivenModel const>> mLastModelInitializedWith;
75 ::ll::TypedStorage<1, 1, bool> mApplyAnimations;
76 ::ll::TypedStorage<1, 1, bool> mNeedToUpdateQueryableBoneOrientations;
77 // NOLINTEND
78
79public:
80 // prevent constructor by default
82
83public:
84 // member functions
85 // NOLINTBEGIN
86 MCNAPI
87 AnimationComponent(::AnimationComponentGroupType animationComponentGroup, ::AnimationComponentID const& ownerUUID);
88
89 MCNAPI void applyAnimations(bool setDefaultPose);
90
91 MCNAPI ::std::shared_ptr<::ActorAnimationPlayer> createAnimationPlayer(
92 ::HashedString const& friendlyName,
93 ::ExpressionNode const& blendExpression,
94 ::std::set<::HashedString, ::std::hash<::HashedString>>& animationControllerNameStack
95 );
96
97 MCNAPI ::std::vector<::BoneOrientation>*
98 getBoneOrientations(::SkeletalHierarchyIndex skeletalHierarchyIndex, bool missingIsOkay);
99
101
103 ::Actor& actor,
104 ::std::shared_ptr<::CommonResourceDefinitionMap> animationResourceDefinition,
105 ::std::function<void(::ActorAnimationPlayer&)> animationComponentInitFunction
106 );
107
108 MCNAPI void serverUpdate(::Actor& actor);
109
110 MCNAPI void setDirty();
111
113 // NOLINTEND
114
115public:
116 // static variables
117 // NOLINTBEGIN
118 MCNAPI static ::std::atomic<int64>& mClientFrameIndex();
119
120 MCNAPI static ::std::atomic<int64>& mReloadTimeStampClient();
121
122 MCNAPI static ::std::atomic<int64>& mServerFrameIndex();
123 // NOLINTEND
124
125public:
126 // constructor thunks
127 // NOLINTBEGIN
128 MCNAPI void* $ctor(::AnimationComponentGroupType animationComponentGroup, ::AnimationComponentID const& ownerUUID);
129 // NOLINTEND
130
131public:
132 // destructor thunk
133 // NOLINTBEGIN
134 MCNAPI void $dtor();
135 // NOLINTEND
136};
Definition ActorAnimationControllerInfo.h:5
Definition ActorAnimationControllerStatePlayer.h:21
Definition ActorAnimationPlayer.h:18
Definition Actor.h:103
Definition AnimationComponentID.h:5
Definition AnimationComponent.h:26
MCAPI void initializeServerAnimationComponent(::Actor &actor, ::std::shared_ptr<::CommonResourceDefinitionMap > animationResourceDefinition, ::std::function< void(::ActorAnimationPlayer &)> animationComponentInitFunction)
MCAPI AnimationComponent(::AnimationComponentGroupType animationComponentGroup, ::AnimationComponentID const &ownerUUID)
MCAPI void initInstanceSpecificAnimationData(::MolangVariableMap *variableMap)
static MCAPI ::std::atomic< int64 > & mServerFrameIndex()
MCAPI void $dtor()
static MCAPI ::std::atomic< int64 > & mClientFrameIndex()
MCAPI void serverUpdate(::Actor &actor)
MCAPI void * $ctor(::AnimationComponentGroupType animationComponentGroup, ::AnimationComponentID const &ownerUUID)
static MCAPI ::std::atomic< int64 > & mReloadTimeStampClient()
MCAPI ~AnimationComponent()
MCAPI void applyAnimations(bool setDefaultPose)
MCAPI ::std::shared_ptr<::ActorAnimationPlayer > createAnimationPlayer(::HashedString const &friendlyName, ::ExpressionNode const &blendExpression, ::std::set<::HashedString, ::std::hash<::HashedString > > &animationControllerNameStack)
MCAPI ::std::vector<::BoneOrientation > * getBoneOrientations(::SkeletalHierarchyIndex skeletalHierarchyIndex, bool missingIsOkay)
MCAPI void setDirty()
Definition BoneOrientation.h:5
Definition CommonResourceDefinitionMap.h:13
Definition DataDrivenModel.h:5
Definition ExpressionNode.h:27
Definition HashedString.h:5
Definition ModelPartLocator.h:5
Definition MolangVariableMap.h:15
Definition AnimationComponent.h:34
Definition Alias.h:14