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&);
91 EditorJigsawService& operator=(EditorJigsawService
const&);
92 EditorJigsawService(EditorJigsawService
const&);
93 EditorJigsawService();
98 virtual ~EditorJigsawService() ;
100 virtual ::Scripting::Result_deprecated<void> init() ;
102 virtual ::Scripting::Result_deprecated<void> quit() ;
104 virtual ::Scripting::Result_deprecated<void> ready() ;
106 virtual ::std::string_view getServiceName() const ;
108 virtual ::
std::
string getJigsawExportDirectory() ;
110 virtual ::
std::map<::Editor::Services::JigsawJsonType, ::
std::
string> getEmptyJigsawFiles() ;
112 virtual ::
std::vector<::
std::
string> getJigsawRegistryList() ;
117 getJigsawRegistryJson(::
std::
string const& registryName) ;
119 virtual
void setJigsawRegistry(
120 ::
std::
string const& registryName,
125 virtual
void deleteJigsawRegistry(::
std::
string const& registryName) ;
127 virtual
void generateJigsawPreview(
128 ::
std::
string const& registryName,
129 ::
std::
string const& startPool,
130 ::
std::
string const& startTarget,
133 int const maxHorizontalDistanceFromCenter,
134 bool const validateRegistry,
135 ::Editor::ScriptModule::ScriptClipboardItem const& clipboardItem,
144 virtual ::Bedrock::PubSub::Subscription
145 listenForSetJigsawRegistry(::
std::function<
void(::
std::vector<::
std::
string>)> callback) ;
147 virtual ::Bedrock::PubSub::Subscription listenForGenerateJigsawPreview(
169 ::Core::PathBuffer<::
std::
string> jigsawPath,
170 ::Editor::Services::JigsawJsonType fileType,
171 ::
std::vector<::
std::
string>& outErrors
195 MCNAPI ::Scripting::Result_deprecated<
void>
$init();
197 MCNAPI ::Scripting::Result_deprecated<
void>
$quit();
199 MCNAPI ::Scripting::Result_deprecated<
void>
$ready();
215 ::
std::
string const& registryName,
223 ::
std::
string const& registryName,
224 ::
std::
string const& startPool,
225 ::
std::
string const& startTarget,
228 int const maxHorizontalDistanceFromCenter,
229 bool const validateRegistry,
230 ::Editor::ScriptModule::ScriptClipboardItem const& clipboardItem,
238 MCNAPI ::Bedrock::PubSub::Subscription
Definition Subscription.h:10
Definition IEditorPlayer.h:16
Definition ScriptClipboardItem.h:26
Definition ServiceProviderCollection.h:7
Definition EditorJigsawServiceProvider.h:22
MCAPI void _loadBehaviorPackJigsawRegistries(::ResourcePackManager &packManager)
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 void _loadWorldJigsawRegistries()
MCAPI ::Scripting::Result_deprecated< void > $init()
Definition IEditorService.h:11
Definition FeatureRegistry.h:22
Definition IStructureTemplateManager.h:16
Definition JigsawEditorData.h:14
Definition JigsawStructureRegistry.h:22
Definition ResourcePackManager.h:35
Definition WeakEntityRef.h:14
Definition EditorJigsawSection.h:7
Definition EditorJigsawService.h:41
MCAPI void * $ctor(::Editor::Services::EditorJigsawService::TemplatePoolData const &)
MCAPI ~TemplatePoolData()
MCAPI TemplatePoolData(::Editor::Services::EditorJigsawService::TemplatePoolData const &)
Definition EditorRegistryFile.h:7