LeviLamina
Loading...
Searching...
No Matches
BlockTypeRegistry Class Reference

Classes

struct  BlockComplexAliasBlockState
 
class  BlockComplexAliasContent
 
struct  DirectAccessBlocks
 
struct  LookupByNameImplReturnType
 

Public Types

enum class  LookupByNameImplResolve : int { BlockLegacy = 0 , Block = 1 }
 
using BlockLookupMap = ::std::map<::HashedString, ::SharedPtr<::BlockLegacy>>
 
using BlockAliasLookupMap = ::std::unordered_map<::HashedString, ::HashedString>
 
using BlockComplexAliasCallback = ::std::function<::Block const*(int)>
 
using BlockComplexAliasLookupMap = ::entt::dense_map<::HashedString, ::BlockTypeRegistry::BlockComplexAliasContent>
 
using BlockComplexAliasPostSplitBlockNames = ::std::vector<::std::reference_wrapper<::HashedString const>>
 
using BlockComplexAliasPostSplitBlockNamesList
 
using BlockComplexAliasPostSplitBlockNamesLookupMap = ::entt::dense_map<uint64, uint64>
 
using BlockNameHashToHashedStringMap = ::entt::dense_map<uint64, ::HashedString>
 

Static Public Member Functions

static MCAPI ::BlockTypeRegistryReadLock _lockAgainstRegistryModifications ()
 
static MCAPI ::BlockTypeRegistryModificationsLock _lockForRegistryModifications ()
 
static MCAPI ::BlockTypeRegistry::LookupByNameImplReturnType _lookupByNameImpl (::HashedString const &name, int data, ::BlockTypeRegistry::LookupByNameImplResolve resolve, bool logNotFound=false)
 
static MCAPI void checkBlockPermutationCap ()
 
static MCAPI uint64 computeBlockTypeRegistryChecksum (::BaseGameVersion const &worldBaseGameVersion)
 
static MCAPI void finalizeBlockComponentStorage ()
 
static MCAPI void finalizeBlockCustomComponentEvents (::ServerScriptManager const &scriptManager)
 
static MCAPI void forEachBlock (::std::function< bool(::BlockLegacy const &)> callback)
 
static MCAPI ::HashedString const & getBlockNameFromNameHash (uint64 hash)
 
static MCAPI ::std::vector<::std::reference_wrapper<::HashedString const > > const & getComplexAliasPostSplitBlockNames (::HashedString const &oldName)
 
static MCAPI ::Block const & getDefaultBlockState (::HashedString const &name, bool logNotFound=false)
 
static MCAPI ::BlockTypeRegistry::DirectAccessBlocks const & getDirectAccessBlocks ()
 
static MCAPI void initHardCodedBlockComponents (::Experiments const &experiments)
 
static MCAPI bool isComplexAliasBlock (::HashedString const &blockName)
 
static MCAPI ::WeakPtr<::BlockLegacylookupByName (::HashedString const &name, bool logNotFound=false)
 
static MCAPI void prepareBlocks (uint latestUpdaterVersion)
 
static MCAPI void registerAlias (::HashedString const &alias, ::HashedString const &name)
 
static MCAPI void registerComplexAlias (::HashedString const &alias, ::std::function<::Block const *(int)> callback, ::std::vector<::std::reference_wrapper<::HashedString const > > const &postSplitBlockNames, ::BaseGameVersion const &minRequiredVersion, ::SemVersion const &blocksJsonFormatVersion, ::HashedString defaultNewBlockName, int startVariant)
 
static MCAPI void setupDirectAccessBlocks ()
 
static MCAPI void unregisterBlock (::HashedString const &name)
 
static MCAPI void unregisterBlocks ()
 
static MCAPI ::std::unordered_map<::HashedString, ::HashedString > & mBlockAliasLookupMap ()
 
static MCAPI ::entt::dense_map<::HashedString, ::BlockTypeRegistry::BlockComplexAliasContent > & mBlockComplexAliasLookupMap ()
 
static MCAPI ::std::vector<::std::vector<::std::reference_wrapper<::HashedString const > > > & mBlockComplexAliasPostSplitBlockNamesList ()
 
static MCAPI ::entt::dense_map< uint64, uint64 > & mBlockComplexAliasPostSplitBlockNamesLookupMap ()
 
static MCAPI ::std::map<::HashedString, ::HashedString > & mBlockComplexAliasPreSplitBlockNamesLookupMap ()
 
static MCAPI ::std::map<::HashedString, ::SharedPtr<::BlockLegacy > > & mBlockLookupMap ()
 
static MCAPI ::entt::dense_map< uint64, ::HashedString > & mBlockNameHashToStringMap ()
 
static MCAPI ::std::unique_ptr<::BlockTypeRegistry::DirectAccessBlocks > & mDirectAccessBlocks ()
 
static MCAPI ::std::set<::std::string > & mKnownNamespaces ()
 
static MCAPI ::std::shared_ptr<::BlockTypeRegistryRWLock > & mRWLock ()
 

Member Typedef Documentation

◆ BlockComplexAliasPostSplitBlockNamesList

using BlockTypeRegistry::BlockComplexAliasPostSplitBlockNamesList
Initial value:
::std::vector<::std::vector<::std::reference_wrapper<::HashedString const>>>

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