Skip to content
LeviMC
English
AutoLightDark
LeviLamina
Loading...
Searching...
No Matches
IPersonaClient.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/actor/player/persona/ProfileType.h"
7
8// auto generated forward declare list
9// clang-format off
12class SkinHandle;
13namespace persona { struct PersonaCharacterHandle; }
14// clang-format on
15
16class IPersonaClient {
17public:
18 // virtual functions
19 // NOLINTBEGIN
20 virtual ~IPersonaClient() = default;
21
22 virtual void createUpdatePersonaFromAppearance(
23 ::PersonaAppearance const&,
24 ::persona::ProfileType,
25 ::std::function<void(::SkinHandle)>,
26 ::persona::PersonaCharacterHandle const&,
27 bool,
28 bool
29 ) = 0;
30
31 virtual ::persona::PersonaCharacterHandle getCurrentCharacterHandle() const = 0;
32
33 virtual ::IPersonaRepository const& getPersonaRepository() const = 0;
34
35 virtual ::SkinHandle const& getSelectedSkinHandle() const = 0;
36
37 virtual bool isSelectedSkinPlatformLocked() const = 0;
38
39 virtual void savePersona(::persona::PersonaCharacterHandle const& characterHandle) = 0;
40
41 virtual void sendNewPlayerSkinPacket(
42 ::persona::ProfileType const profileType,
43 ::std::string const& oldSkinName,
44 bool isClassicSkin
45 ) = 0;
46
47 virtual void setPersonaLegacySlotSkin(::SkinHandle const& skin) const = 0;
48
49 virtual void
50 updateCharacterSkinData(::persona::PersonaCharacterHandle const& characterHandle, ::SkinHandle const& handle) = 0;
51 // NOLINTEND
52};
Definition IPersonaClient.h:5
Definition IPersonaRepository.h:5
Definition PersonaAppearance.h:5
Definition SkinHandle.h:5
Definition PersonaCharacterHandle.h:10