3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/common/editor/JigsawJsonType.h"
7#include "mc/deps/core/file/PathBuffer.h"
8#include "mc/deps/core/utility/NonOwnerPointer.h"
9#include "mc/deps/scripting/runtime/Result_deprecated.h"
10#include "mc/editor/serviceproviders/EditorJigsawServiceProvider.h"
11#include "mc/editor/services/IEditorService.h"
30namespace Editor::Services {
41 struct TemplatePoolData {
52 TemplatePoolData& operator=(TemplatePoolData
const&);
53 TemplatePoolData(TemplatePoolData
const&);
60 MCNAPI TemplatePoolData(
61 ::std::string
const& templateId,
62 ::std::set<::std::string>
const& structNames,
63 ::std::map<::std::string, ::std::set<::std::string>>
const& structTargetNames
75 ::std::string
const& templateId,
76 ::std::set<::std::string>
const& structNames,
77 ::std::map<::std::string, ::std::set<::std::string>>
const& structTargetNames
104 EditorJigsawService& operator=(EditorJigsawService
const&);
105 EditorJigsawService(EditorJigsawService
const&);
106 EditorJigsawService();
111 virtual ~EditorJigsawService() ;
113 virtual ::Scripting::Result_deprecated<void> init() ;
115 virtual ::Scripting::Result_deprecated<void> quit() ;
117 virtual ::Scripting::Result_deprecated<void> ready() ;
119 virtual ::std::string_view getServiceName() const ;
121 virtual ::
std::
string getJigsawExportDirectory() ;
123 virtual ::
std::map<::Editor::Services::JigsawJsonType, ::
std::
string> getEmptyJigsawFiles() ;
125 virtual ::
std::vector<::
std::
string> getJigsawRegistryList() ;
130 getJigsawRegistryJson(::
std::
string const& registryName) ;
132 virtual
void setJigsawRegistry(
133 ::
std::
string const& registryName,
138 virtual
void deleteJigsawRegistry(::
std::
string const& registryName) ;
140 virtual
void generateJigsawPreview(
141 ::
std::
string const& registryName,
142 ::
std::
string const& startPool,
143 ::
std::
string const& startTarget,
146 int const maxHorizontalDistanceFromCenter,
147 bool const validateRegistry,
148 ::Editor::ScriptModule::ScriptClipboardItem const& clipboardItem,
157 virtual ::Bedrock::PubSub::Subscription
158 listenForSetJigsawRegistry(::
std::function<
void(::
std::vector<::
std::
string>)> callback) ;
160 virtual ::Bedrock::PubSub::Subscription listenForGenerateJigsawPreview(
180 ::Core::PathBuffer<::
std::
string> jigsawPath,
181 ::Editor::Services::JigsawJsonType fileType,
182 ::
std::vector<::
std::
string>& outErrors
212 MCNAPI ::Scripting::Result_deprecated<
void>
$init();
214 MCNAPI ::Scripting::Result_deprecated<
void>
$quit();
216 MCNAPI ::Scripting::Result_deprecated<
void>
$ready();
232 ::
std::
string const& registryName,
240 ::
std::
string const& registryName,
241 ::
std::
string const& startPool,
242 ::
std::
string const& startTarget,
245 int const maxHorizontalDistanceFromCenter,
246 bool const validateRegistry,
247 ::Editor::ScriptModule::ScriptClipboardItem const& clipboardItem,
255 MCNAPI ::Bedrock::PubSub::Subscription
Definition Subscription.h:10
Definition IEditorPlayer.h:16
Definition ScriptClipboardItem.h:25
Definition ServiceProviderCollection.h:7
Definition EditorJigsawServiceProvider.h:22
MCAPI void _loadBehaviorPackJigsawRegistries(::ResourcePackManager &packManager)
static MCAPI ::std::string_view const & SERVICE_NAME()
MCAPI void _bootstrapJigsawRegistry(::Bedrock::NotNullNonOwnerPtr<::IStructureTemplateManager > structureManager, ::FeatureRegistry &featureRegistry, ::JigsawStructureRegistry &jigsawStructureRegistry)
MCAPI ::Scripting::Result_deprecated< void > $ready()
MCAPI void _saveFile(::Editor::Services::EditorRegistryFile ®File, ::Core::PathBuffer<::std::string > jigsawPath, ::Editor::Services::JigsawJsonType fileType, ::std::vector<::std::string > &outErrors)
MCAPI::Bedrock::PubSub::Subscription $listenForSetJigsawRegistry(::std::function< void(::std::vector<::std::string >)> callback)
MCAPI::JigsawStructureRegistry * $getJigsawRegistry(::std::string const ®istryName)
MCAPI void $deleteJigsawRegistry(::std::string const ®istryName)
MCAPI::Bedrock::PubSub::Subscription $listenForGenerateJigsawPreview(::std::function< void(::std::vector<::Editor::Services::EditorJigsawSection >)> callback)
MCAPI::std::string_view $getServiceName() const
static MCAPI void ** $vftableForEditorJigsawServiceProvider()
MCAPI ::std::map<::Editor::Services::JigsawJsonType, ::std::vector<::Editor::Services::EditorRegistryFile > > $getJigsawRegistryJson(::std::string const ®istryName)
MCAPI ::std::map<::Editor::Services::JigsawJsonType, ::std::string > $getEmptyJigsawFiles()
MCAPI void $generateJigsawPreview(::std::string const ®istryName, ::std::string const &startPool, ::std::string const &startTarget, ::BlockPos const &seed, int const depth, int const maxHorizontalDistanceFromCenter, bool const validateRegistry, ::Editor::ScriptModule::ScriptClipboardItem const &clipboardItem, ::WeakEntityRef playerRef)
MCAPI void $setJigsawBlockData(::BlockPos &pos, ::WeakEntityRef playerRef, ::JigsawEditorData jigsawData)
MCAPI bool _validateRegistry(::std::string registryName, ::Bedrock::NonOwnerPointer<::Editor::IEditorPlayer > editorPlayer)
MCAPI void _saveJigsawRegistryFiles(::std::string const ®istryName)
static MCAPI void ** $vftableForIEditorService()
MCAPI void $setJigsawRegistry(::std::string const ®istryName, ::std::map<::Editor::Services::JigsawJsonType, ::std::vector<::Editor::Services::EditorRegistryFile > > data, bool shouldSaveFiles)
MCAPI::std::string $getJigsawExportDirectory()
MCAPI void * $ctor(::Editor::ServiceProviderCollection &providers)
MCAPI ::Scripting::Result_deprecated< void > $quit()
MCAPI ::std::vector<::std::string > $getJigsawRegistryList()
MCAPI::JigsawEditorData const $getJigsawBlockData(::BlockPos &pos, ::WeakEntityRef playerRef)
MCAPI ::Scripting::Result_deprecated< void > $init()
Definition IEditorService.h:11
Definition FeatureRegistry.h:19
Definition IStructureTemplateManager.h:16
Definition JigsawEditorData.h:14
Definition JigsawStructureRegistry.h:22
Definition ResourcePackManager.h:30
Definition WeakEntityRef.h:14
Definition EditorJigsawSection.h:7
Definition EditorJigsawService.h:41
MCAPI ~TemplatePoolData()
Definition EditorRegistryFile.h:7