LeviLamina
Loading...
Searching...
No Matches
ISubChunkStoragePaletted< T > Class Template Referenceabstract
Inheritance diagram for ISubChunkStoragePaletted< T >:

Public Types

using VolumeView = ChunkVolume::VolumeOf<T>::SubViewType
using ConstVolumeView = ChunkVolume::VolumeOf<T>::ConstSubViewType

Public Member Functions

virtual gsl::span< unsigned int > getPackedElement ()=0
virtual gsl::span< unsigned int const > getPackedElement () const =0
virtual size_t getBitsPerElement () const =0
virtual gsl::span< T const *const > getPaletteSnapshot () const =0
virtual bool isUniform (T const &) const =0
virtual bool isPaletteUniform (T const &) const =0
virtual T const & getElement (uint16_t) const =0
virtual bool trySetElement (uint16_t, T const &)=0
virtual size_t getElementTypeCapacity () const =0
virtual bool hasAvailableElementTypeCapacity () const =0
virtual SubChunkStorageUnit::Type getType () const =0
virtual size_t getMemoryEstimate () const =0
virtual std::unique_ptr< SubChunkStorage< T > > makePrunedCopy (SubChunkStorageUnit::PruneType) const =0
virtual ISubChunkStoragePaletted< T > & asPalettedStorage ()=0
virtual ISubChunkStoragePaletted< T > const & asPalettedStorage () const =0
virtual void fetchElementInCylinder (BlockPos const &, BlockPos const &, uint32_t, uint32_t, brstd::function_ref< bool(T const &), bool(T const &)> const &, std::vector< BlockDataFetchResult< T > > &) const =0
virtual void fetchElementInBox (BlockPos const &, BoundingBox const &, brstd::function_ref< bool(T const &), bool(T const &)> const &, std::vector< BlockDataFetchResult< T > > &) const =0
virtual bool hasAnyElementMatchingFilterInPalette (std::function< bool(T const &)> const &) const =0
virtual void _serialize (IDataOutput &, RuntimeSerializationLookup< T > const &) const =0
virtual void _serialize (IDataOutput &, PersistentSerializationLookup< T > const &) const =0

Static Public Member Functions

static MCAPI SubChunkStorageUnit::Type chooseTypeForElementTypeCount (size_t elementCount)
static MCAPI std::unique_ptr< SubChunkStorage< T > > makeUniform (T const &element)
static MCAPI std::unique_ptr< SubChunkStorage< T > > makeFromVolume (SubChunkStorage< T >::ConstVolumeView const &view)

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