Skip to content
LeviMC
English
AutoLightDark
LeviLamina
Loading...
Searching...
No Matches
IPersonaPieceProvider.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/shared_types/persona/PieceType.h"
7
8// auto generated forward declare list
9// clang-format off
10class PersonaPiece;
11struct PersonaCharacter;
12namespace persona { class PieceHandle; }
13namespace persona { struct PersonaCharacterHandle; }
14// clang-format on
15
17public:
18 // virtual functions
19 // NOLINTBEGIN
20 virtual ~IPersonaPieceProvider() = default;
21
22 virtual ::PersonaPiece const& getPersonaPieceFromRepo(::std::string const& pieceId) const = 0;
23
24 virtual bool isPersonaPieceInRepo(::std::string const& pieceId) const = 0;
25
26 virtual ::PersonaCharacter& getCharacter(::std::string const& characterName) = 0;
27
28 virtual ::PersonaCharacter& getCharacter(::persona::PersonaCharacterHandle const& handle) = 0;
29
30 virtual ::PersonaPiece const&
31 getPieceFromClassicSkin(::std::string const& skinSerializedName, bool const reportFailure) const = 0;
32
33 virtual ::persona::PieceHandle getPieceHandle(::std::string const& pieceId) const = 0;
34
35 virtual ::std::vector<::std::string> const& getPieceIdsByType(::SharedTypes::persona::PieceType type) const = 0;
36 // NOLINTEND
37};
Definition IPersonaPieceProvider.h:5
Definition PersonaPiece.h:22
Definition PieceHandle.h:7
Definition PersonaCharacter.h:5
Definition PersonaCharacterHandle.h:10