LeviLamina
Loading...
Searching...
No Matches
StructureManager Class Reference
+ Inheritance diagram for StructureManager:

Public Member Functions

MCAPI StructureManager (::ResourcePackManager &packManager)
 
MCAPI::StructureTemplate * _createAndLoadStructure (::std::string const &structureName, ::ResourcePackManager const *packManager, ::LevelStorage *levelStorage)
 
MCAPI::std::string _createLevelStorageId (::std::string const &dimensionPrefix, ::std::string const &saveId)
 
MCAPI bool _findResource (::Core::PathBuffer<::Core::BasicStackString< char, 1024 > > const &structurePath, ::PackInstance const &pack, ::std::string &resourceStream)
 
MCAPI::SharedTypes::v1_21_80::JigsawStructureMetadataRegistry & _getMetadataRegistry () const
 
MCAPI bool _placeSegment (::StructureAnimationData &structureAnimationData)
 
MCAPI bool _placeSegment (::Dimension &dimension, ::StructureAnimationData &structureAnimationData, ::ChunkLoadActionList &chunkLoadActionList, ::BoundingBox const &boundingBox, ::std::function<::ChunksLoadedStatus(::Tick)> const &areChunksLoaded)
 
MCAPI::LegacyStructureTemplate * _readLegacyStructure (::std::string const &name)
 
MCAPI void _removePlacementQueueItem (::std::string const &dimensionPrefix, ::StructureAnimationData &structureAnimationData)
 
MCAPI void _savePlacementQueueItem (::std::string const &dimensionPrefix, ::StructureAnimationData &structureAnimationData)
 
MCAPI::StructureTemplate & cloneStructure (::StructureTemplate const &structureTemplate, ::std::string const &structureName)
 
MCAPI::StructureDeleteResult deleteStructure (::std::string const &structureName, ::LevelStorage &levelStorage)
 
MCAPI::StructureTemplate & getOrCreate (::std::string const &structureName)
 
MCAPI::LegacyStructureTemplate & getOrCreateLegacy (::std::string const &structureName)
 
MCAPI::StructureTemplate * getStructure (::std::string const &structureName) const
 
MCAPI ::std::vector<::std::string > getStructureNames (::LevelStorage &levelStorage, bool includeUnremovable) const
 
MCAPI void importStructureFromTemplate (::std::string name, ::StructureTemplate const &temp)
 
MCAPI bool load (::StructureTemplate &structureTemplate, ::ResourcePackManager const *packManager, ::LevelStorage *levelStorage)
 
MCAPI bool loadLegacy (::LegacyStructureTemplate &structure, ::std::string &data)
 
MCAPI void loadMetadataRegistries (::ResourcePackManager &packManager)
 
MCAPI void loadPlacementQueue (::LevelStorage &storage, ::Level &level, ::Dimension &dimension)
 
MCAPI void loadPlacementQueueItem (::std::string const &key, ::CompoundTag const &tag, ::Level &level, ::Dimension &dimension)
 
MCAPI void queueLoad (::std::unique_ptr<::StructureAnimationData > structureAnimationData)
 
MCAPI bool readStructure (::StructureTemplate &structureTemplate)
 
MCAPI void saveToLevel (::StructureTemplate const &structureTemplate, ::LevelStorage &levelStorage)
 
MCAPI void setUnknownBlockRegistry (::Bedrock::NonOwnerPointer<::IUnknownBlockTypeRegistry > unknownBlockRegistry)
 
MCAPI void tick (::Dimension const &dimension)
 
MCAPI::QueueRequestResult tryPlaceStructureInWorld (::std::unique_ptr<::CommandArea > cmdArea, ::ServerLevel &level, ::Dimension &dimension, ::BoundingBox const &bounds, ::BlockPos const &loadPosition, ::StructureSettings const &settings, ::StructureTemplate const &structureTemplate, ::std::unique_ptr<::StructureAnimationData > structureAnimationData)
 
MCAPI void * $ctor (::ResourcePackManager &packManager)
 
MCAPI void $dtor ()
 

Static Public Member Functions

static MCAPI ::std::unique_ptr<::SharedTypes::v1_21_80::JigsawStructureMetadataRegistry_loadMetadataRegistries (::cereal::ReflectionCtx const &ctx, ::ResourcePackManager &packManager, bool excludeLatest)
 
static MCAPI void _metadataPackForEachCallback (::SharedTypes::v1_21_80::JigsawStructureMetadataRegistry &registry, ::Puv::Loader<::SharedTypes::v1_21_80::JigsawStructureMetadataFile > &loader, ::PackInstance const &pack, ::std::string &fileData, ::Core::Path const &filenameWithExtension)
 
static MCAPI ::Core::PathBuffer<::Core::BasicStackString< char, 1024 > > getStructurePath (::std::string const &structureFullName)
 
static MCAPI ::Core::PathBuffer<::Core::BasicStackString< char, 1024 > > getStructurePath (::std::string const &structureNamespace, ::std::string const &structureName)
 
static MCAPI char const *& BEHAVIOR_PACK_STRUCTURES_FOLDER ()
 
static MCAPI char const *& LEVEL_STORAGE_STRUCTURE_TEMPLATE_PREFIX ()
 
static MCAPI void ** $vftable ()
 

Public Attributes

::ll::TypedStorage< 8, 8, ::std::shared_mutex > mRepositoryMutex
 
::ll::TypedStorage< 8, 64, ::std::unordered_map<::std::string, ::std::unique_ptr<::LegacyStructureTemplate > > > mLegacyStructureRepository
 
::ll::TypedStorage< 8, 64, ::std::unordered_map<::std::string, ::std::unique_ptr<::StructureTemplate > > > mStructureRepository
 
::ll::TypedStorage< 8, 24, ::std::vector<::std::unique_ptr<::StructureAnimationData > > > mStructurePlacementQueue
 
::ll::TypedStorage< 4, 4, uint > mStructurePlacementSaveCounter
 
::ll::TypedStorage< 8, 24, ::Bedrock::NonOwnerPointer<::IUnknownBlockTypeRegistry > > mUnknownBlockRegistry
 
::ll::TypedStorage< 8, 24, ::Bedrock::NonOwnerPointer<::ResourcePackManager > const > mPackManager
 
::ll::TypedStorage< 8, 8, ::std::unique_ptr<::SharedTypes::v1_21_80::JigsawStructureMetadataRegistry > > mMetadataRegistry
 
::ll::TypedStorage< 8, 8, ::std::unique_ptr<::cereal::ReflectionCtx > > mCerealContext
 
::std::shared_ptr<::Bedrock::EnableNonOwnerReferences::ControlBlockmControlBlock
 

Constructor & Destructor Documentation

◆ StructureManager()

MCAPI StructureManager::StructureManager ( ::ResourcePackManager & packManager)
explicit
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

Member Function Documentation

◆ _createAndLoadStructure()

MCAPI::StructureTemplate * StructureManager::_createAndLoadStructure ( ::std::string const & structureName,
::ResourcePackManager const * packManager,
::LevelStorage * levelStorage )
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ _createLevelStorageId()

MCAPI::std::string StructureManager::_createLevelStorageId ( ::std::string const & dimensionPrefix,
::std::string const & saveId )
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ _findResource()

MCAPI bool StructureManager::_findResource ( ::Core::PathBuffer<::Core::BasicStackString< char, 1024 > > const & structurePath,
::PackInstance const & pack,
::std::string & resourceStream )
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ _getMetadataRegistry()

MCAPI::SharedTypes::v1_21_80::JigsawStructureMetadataRegistry & StructureManager::_getMetadataRegistry ( ) const
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ _placeSegment() [1/2]

MCAPI bool StructureManager::_placeSegment ( ::StructureAnimationData & structureAnimationData)
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ _placeSegment() [2/2]

MCAPI bool StructureManager::_placeSegment ( ::Dimension & dimension,
::StructureAnimationData & structureAnimationData,
::ChunkLoadActionList & chunkLoadActionList,
::BoundingBox const & boundingBox,
::std::function<::ChunksLoadedStatus(::Tick)> const & areChunksLoaded )
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ _readLegacyStructure()

MCAPI::LegacyStructureTemplate * StructureManager::_readLegacyStructure ( ::std::string const & name)
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ _removePlacementQueueItem()

MCAPI void StructureManager::_removePlacementQueueItem ( ::std::string const & dimensionPrefix,
::StructureAnimationData & structureAnimationData )
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ _savePlacementQueueItem()

MCAPI void StructureManager::_savePlacementQueueItem ( ::std::string const & dimensionPrefix,
::StructureAnimationData & structureAnimationData )
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ cloneStructure()

MCAPI::StructureTemplate & StructureManager::cloneStructure ( ::StructureTemplate const & structureTemplate,
::std::string const & structureName )
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ deleteStructure()

MCAPI::StructureDeleteResult StructureManager::deleteStructure ( ::std::string const & structureName,
::LevelStorage & levelStorage )
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ getOrCreate()

MCAPI::StructureTemplate & StructureManager::getOrCreate ( ::std::string const & structureName)
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ getOrCreateLegacy()

MCAPI::LegacyStructureTemplate & StructureManager::getOrCreateLegacy ( ::std::string const & structureName)
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ getStructure()

MCAPI::StructureTemplate * StructureManager::getStructure ( ::std::string const & structureName) const
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ getStructureNames()

MCAPI ::std::vector<::std::string > StructureManager::getStructureNames ( ::LevelStorage & levelStorage,
bool includeUnremovable ) const
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ importStructureFromTemplate()

MCAPI void StructureManager::importStructureFromTemplate ( ::std::string name,
::StructureTemplate const & temp )
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ load()

MCAPI bool StructureManager::load ( ::StructureTemplate & structureTemplate,
::ResourcePackManager const * packManager,
::LevelStorage * levelStorage )
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ loadLegacy()

MCAPI bool StructureManager::loadLegacy ( ::LegacyStructureTemplate & structure,
::std::string & data )
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ loadMetadataRegistries()

MCAPI void StructureManager::loadMetadataRegistries ( ::ResourcePackManager & packManager)
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ loadPlacementQueue()

MCAPI void StructureManager::loadPlacementQueue ( ::LevelStorage & storage,
::Level & level,
::Dimension & dimension )
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ loadPlacementQueueItem()

MCAPI void StructureManager::loadPlacementQueueItem ( ::std::string const & key,
::CompoundTag const & tag,
::Level & level,
::Dimension & dimension )
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ queueLoad()

MCAPI void StructureManager::queueLoad ( ::std::unique_ptr<::StructureAnimationData > structureAnimationData)
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ readStructure()

MCAPI bool StructureManager::readStructure ( ::StructureTemplate & structureTemplate)
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ saveToLevel()

MCAPI void StructureManager::saveToLevel ( ::StructureTemplate const & structureTemplate,
::LevelStorage & levelStorage )
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ setUnknownBlockRegistry()

MCAPI void StructureManager::setUnknownBlockRegistry ( ::Bedrock::NonOwnerPointer<::IUnknownBlockTypeRegistry > unknownBlockRegistry)
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ tick()

MCAPI void StructureManager::tick ( ::Dimension const & dimension)
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ tryPlaceStructureInWorld()

MCAPI::QueueRequestResult StructureManager::tryPlaceStructureInWorld ( ::std::unique_ptr<::CommandArea > cmdArea,
::ServerLevel & level,
::Dimension & dimension,
::BoundingBox const & bounds,
::BlockPos const & loadPosition,
::StructureSettings const & settings,
::StructureTemplate const & structureTemplate,
::std::unique_ptr<::StructureAnimationData > structureAnimationData )
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ _loadMetadataRegistries()

static MCAPI ::std::unique_ptr<::SharedTypes::v1_21_80::JigsawStructureMetadataRegistry > StructureManager::_loadMetadataRegistries ( ::cereal::ReflectionCtx const & ctx,
::ResourcePackManager & packManager,
bool excludeLatest )
static
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ _metadataPackForEachCallback()

static MCAPI void StructureManager::_metadataPackForEachCallback ( ::SharedTypes::v1_21_80::JigsawStructureMetadataRegistry & registry,
::Puv::Loader<::SharedTypes::v1_21_80::JigsawStructureMetadataFile > & loader,
::PackInstance const & pack,
::std::string & fileData,
::Core::Path const & filenameWithExtension )
static
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ getStructurePath() [1/2]

static MCAPI ::Core::PathBuffer<::Core::BasicStackString< char, 1024 > > StructureManager::getStructurePath ( ::std::string const & structureFullName)
static
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ getStructurePath() [2/2]

static MCAPI ::Core::PathBuffer<::Core::BasicStackString< char, 1024 > > StructureManager::getStructurePath ( ::std::string const & structureNamespace,
::std::string const & structureName )
static
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ BEHAVIOR_PACK_STRUCTURES_FOLDER()

static MCAPI char const *& StructureManager::BEHAVIOR_PACK_STRUCTURES_FOLDER ( )
static
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ LEVEL_STORAGE_STRUCTURE_TEMPLATE_PREFIX()

static MCAPI char const *& StructureManager::LEVEL_STORAGE_STRUCTURE_TEMPLATE_PREFIX ( )
static
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ $ctor()

MCAPI void * StructureManager::$ctor ( ::ResourcePackManager & packManager)
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ $dtor()

MCAPI void StructureManager::$dtor ( )
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ $vftable()

static MCAPI void ** StructureManager::$vftable ( )
static
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

The documentation for this class was generated from the following file: