3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/common/editor/EditorStructureDBManagerServiceProvider.h"
7#include "mc/common/editor/IStructureDataProvider.h"
8#include "mc/deps/scripting/runtime/Result_deprecated.h"
9#include "mc/editor/services/IEditorService.h"
15namespace Core {
class Path; }
16namespace Editor {
class EditorStructureSourceDataItem; }
17namespace Editor {
class EditorStructureTemplate; }
18namespace Editor {
class ServiceProviderCollection; }
19namespace Editor {
struct EditorStructureDBMetadata; }
20namespace Editor {
struct EditorStructureMetadataDeleteEditResult; }
21namespace Editor {
struct EditorStructureMetadataEditParams; }
22namespace Editor {
struct EditorStructureMetadataQueryParams; }
23namespace mce {
class UUID; }
26namespace Editor::Services {
59 virtual ::Scripting::Result_deprecated<void> init() ;
62 virtual ::Scripting::Result_deprecated<void> quit() ;
65 virtual ::Scripting::Result_deprecated<void> ready() ;
68 virtual ::std::string_view getServiceName()
const ;
71 virtual ::std::optional<::std::string> createNewEditorProjectStructure(
73 ::std::string
const&
id,
74 ::std::optional<::std::string>
const& fullName,
75 ::std::optional<::std::string>
const& displayName
79 virtual bool replaceMCStructureFromTemplate(
86 virtual ::std::optional<::Editor::EditorStructureTemplate> load(
::mce::UUID const& guid)
const ;
89 virtual ::std::vector<::HashedString>
const getEditorStructureGuids()
const ;
92 virtual ::std::vector<::Editor::EditorStructureDBMetadata>
const
96 virtual ::Editor::EditorStructureMetadataDeleteEditResult
const
97 deleteEditorStructureDBMetadataByGuid(
::mce::UUID const& guid,
bool isHost) ;
100 virtual ::Editor::EditorStructureMetadataDeleteEditResult
const
104 virtual ::std::optional<::Editor::EditorStructureDBMetadata>
const
105 getEditorStructureMetadataByGuid(
::mce::UUID const& guid)
const ;
108 virtual void processLevelStructures() ;
111 virtual bool hasStructureData(
::mce::UUID const&
id)
const ;
114 virtual ::Scripting::Result_deprecated<::std::variant<
117 ::std::shared_ptr<::StructureTemplate const>,
118 ::std::shared_ptr<::Editor::EditorStructureTemplate const>>>
134 ::std::optional<::std::string>
const&
id,
135 ::std::optional<::std::string>
const& displayName
154 MCNAPI ::std::optional<::Editor::EditorStructureSourceDataItem>
const
197 MCNAPI ::Scripting::Result_deprecated<void>
$init();
199 MCNAPI ::Scripting::Result_deprecated<void>
$quit();
201 MCNAPI ::Scripting::Result_deprecated<void>
$ready();
207 ::std::string
const&
id,
208 ::std::optional<::std::string>
const& fullName,
209 ::std::optional<::std::string>
const& displayName
218 MCNAPI ::std::optional<::Editor::EditorStructureTemplate>
$load(
::mce::UUID const& guid)
const;
222 MCNAPI ::std::vector<::Editor::EditorStructureDBMetadata>
const
225 MCNAPI ::Editor::EditorStructureMetadataDeleteEditResult
const
228 MCNAPI ::Editor::EditorStructureMetadataDeleteEditResult
const
231 MCNAPI ::std::optional<::Editor::EditorStructureDBMetadata>
const
238 MCNAPI ::Scripting::Result_deprecated<::std::variant<
241 ::std::shared_ptr<::StructureTemplate const>,
242 ::std::shared_ptr<::Editor::EditorStructureTemplate const>>>
Definition EditorStructureSourceDataItem.h:20
Definition EditorStructureTemplate.h:26
Definition ServiceProviderCollection.h:7
Definition EditorStructureDBManagerServiceProvider.h:18
Definition EditorStructureDBManagerService.h:30
MCAPI ::std::pair<::std::optional<::mce::UUID >, ::std::optional<::std::string > > _addToEditorStructureDB(::Editor::EditorStructureSourceDataItem const &mcStructureData, ::std::optional<::std::string > const &id, ::std::optional<::std::string > const &displayName)
MCAPI void * $ctor(::Editor::ServiceProviderCollection &providers)
MCAPI void $processLevelStructures()
MCAPI ::Scripting::Result_deprecated< void > $init()
MCAPI ::std::optional<::Editor::EditorStructureDBMetadata > const $getEditorStructureMetadataByGuid(::mce::UUID const &guid) const
MCAPI ::Scripting::Result_deprecated< void > $ready()
MCAPI void _addToMetadataEntries(::mce::UUID const &guid, ::Editor::EditorStructureSourceDataItem const &mcStructureData, ::Editor::EditorStructureDBMetadata &metaData)
static MCAPI ::std::string const & EDITOR_PROJECT_STRUCTUREDB_FOLDER()
MCAPI ::std::optional<::std::string > $createNewEditorProjectStructure(::Editor::EditorStructureTemplate const &templateData, ::std::string const &id, ::std::optional<::std::string > const &fullName, ::std::optional<::std::string > const &displayName)
MCAPI::std::string_view $getServiceName() const
MCAPI ::Scripting::Result_deprecated<::std::variant< ::StructureTemplate const *, ::Editor::EditorStructureTemplate const *, ::std::shared_ptr<::StructureTemplate const >, ::std::shared_ptr<::Editor::EditorStructureTemplate const > > > $getStructureData(::mce::UUID const &id) const
MCAPI bool $replaceMCStructureFromTemplate(::mce::UUID const &guid, ::Editor::EditorStructureTemplate const &structureTemplate, bool isHost)
MCAPI ::std::optional<::Editor::EditorStructureTemplate > $load(::mce::UUID const &guid) const
MCAPI ::std::optional<::mce::UUID > _addToEditorStructureDB(::Editor::EditorStructureDBMetadata &metaData, ::Editor::EditorStructureSourceDataItem &mcStructureData)
MCAPI::std::string _getNamespaceFromStructurePath(::Core::Path const &path) const
MCAPI void buildManifests()
static MCAPI ::std::string const & LEVELDB_STRUCTURE_TAG_PREFIX()
static MCAPI ::std::string const & STRUCTURE_EXT()
MCAPI EditorStructureDBManagerService(::Editor::ServiceProviderCollection &providers)
MCAPI::std::string _handleDupeName(::std::string_view name)
static MCAPI ::std::string const & DEFAULT_EDITOR_NAMESPACE()
static MCAPI void ** $vftableForIStructureDataProvider()
MCAPI::std::string const _getJsonStringFromMetadata(::Editor::EditorStructureDBMetadata const &metaData) const
MCAPI::std::string _getNameFromStructurePath(::Core::Path const &path) const
static MCAPI void ** $vftableForIEditorService()
static MCAPI void ** $vftableForEditorStructureDBManagerServiceProvider()
MCAPI ::std::vector<::HashedString > const $getEditorStructureGuids() const
MCAPI bool _writeMetaData(::Core::Path const &path, ::Editor::EditorStructureDBMetadata &metaData) const
MCAPI void _processInProjectStructures()
MCAPI::Editor::EditorStructureMetadataDeleteEditResult const $editEditorStructureDBMetadata(::Editor::EditorStructureMetadataEditParams const ¶ms, bool isHost)
MCAPI ::std::vector<::Editor::EditorStructureDBMetadata > const $queryEditorStructureDBMetadata(::Editor::EditorStructureMetadataQueryParams const ¶ms) const
static MCAPI ::std::string const & STRUCTURE_FOLDER()
MCAPI ::Scripting::Result_deprecated< void > $quit()
MCAPI void _processPersistentEditorStructures()
MCAPI void _processBPStructures()
MCAPI::std::string _handleDupeDisplayName(::std::string_view displayName)
MCAPI ::std::optional<::Editor::EditorStructureSourceDataItem > const _parseJsonToMetadata(::std::string &jsonString, ::Editor::EditorStructureDBMetadata &metaData)
MCAPI::Editor::EditorStructureMetadataDeleteEditResult const $deleteEditorStructureDBMetadataByGuid(::mce::UUID const &guid, bool isHost)
MCAPI bool $hasStructureData(::mce::UUID const &id) const
Definition IEditorService.h:11
Definition IStructureDataProvider.h:17
Definition HashedString.h:5
Definition StructureTemplate.h:33