LiteLoaderBDS-1.16.40/LiteLoader/Header/MC/ChunkSource.hpp
2022-09-21 19:47:03 +08:00

72 lines
4.5 KiB
C++

// This Header is auto generated by BDSLiteLoader Toolchain
#pragma once
#define AUTO_GENERATED
#include "../Global.h"
#define BEFORE_EXTRA
#undef BEFORE_EXTRA
class ChunkSource {
#define AFTER_EXTRA
#undef AFTER_EXTRA
#ifndef DISABLE_CONSTRUCTOR_PREVENTION_CHUNKSOURCE
public:
class ChunkSource& operator=(class ChunkSource const &) = delete;
ChunkSource(class ChunkSource const &) = delete;
ChunkSource() = delete;
#endif
public:
/*0*/ virtual ~ChunkSource();
/*1*/ virtual void shutdown();
/*2*/ virtual bool isShutdownDone();
/*3*/ virtual class std::shared_ptr<class LevelChunk> getExistingChunk(class ChunkPos const &);
/*4*/ virtual class std::shared_ptr<class LevelChunk> getRandomChunk(class Random &);
/*5*/ virtual class std::shared_ptr<class LevelChunk> createNewChunk(class ChunkPos const &, enum ChunkSource::LoadMode);
/*6*/ virtual class std::shared_ptr<class LevelChunk> getOrLoadChunk(class ChunkPos const &, enum ChunkSource::LoadMode);
/*7*/ virtual bool postProcess(class ChunkViewSource &);
/*8*/ virtual void checkAndReplaceChunk(class ChunkViewSource &, class LevelChunk &);
/*9*/ virtual void loadChunk(class LevelChunk &, bool);
/*10*/ virtual void postProcessMobsAt(class BlockSource &, int, int, class Random &);
/*11*/ virtual bool saveLiveChunk(class LevelChunk &);
/*12*/ virtual void hintDiscardBatchBegin();
/*13*/ virtual void hintDiscardBatchEnd();
/*14*/ virtual void acquireDiscarded(class std::unique_ptr<class LevelChunk, struct LevelChunkFinalDeleter>);
/*15*/ virtual void compact();
/*16*/ virtual void flushPendingWrites();
/*17*/ virtual bool isWithinWorldLimit(class ChunkPos const &) const;
/*18*/ virtual class std::unordered_map<class ChunkPos, class std::weak_ptr<class LevelChunk>, struct std::hash<class ChunkPos>, struct std::equal_to<class ChunkPos>, class std::allocator<struct std::pair<class ChunkPos const, class std::weak_ptr<class LevelChunk>>>> const * getChunkMap();
/*19*/ virtual class std::unordered_map<class ChunkPos, class std::weak_ptr<class LevelChunk>, struct std::hash<class ChunkPos>, struct std::equal_to<class ChunkPos>, class std::allocator<struct std::pair<class ChunkPos const, class std::weak_ptr<class LevelChunk>>>> const & getStorage() const;
/*20*/ virtual void clearDeletedEntities();
/*21*/ virtual bool canCreateViews() const;
#ifdef ENABLE_VIRTUAL_FAKESYMBOL_CHUNKSOURCE
#endif
MCAPI ChunkSource(std::unique_ptr<class ChunkSource>);
MCAPI void checkAndLaunchChunkGenerationTasks(bool);
MCAPI class GridArea<class std::shared_ptr<class LevelChunk>> createEmptyView(enum ChunkSource::LoadMode, bool, class std::function<void (class buffer_span_mut<class std::shared_ptr<class LevelChunk>>, class buffer_span<unsigned int>)>);
MCAPI class std::shared_ptr<class LevelChunk> getAvailableChunk(class ChunkPos const &);
MCAPI class std::shared_ptr<class LevelChunk> getGeneratedChunk(class ChunkPos const &);
//protected:
MCAPI bool _checkAndDispatchTaskForLevelChunk(struct std::pair<class ChunkPos, enum ChunkState> const &, bool);
MCAPI bool _checkForReplacementDataTask(class LevelChunk &, class ChunkViewSource &);
MCAPI void _checkForUnblockingChunks(class LevelChunk const &);
MCAPI void _checkLevelChunkForNextStage(class LevelChunk const &, class LevelChunkGridAreaElement<class std::weak_ptr<class LevelChunk>> &, enum ChunkState);
MCAPI void _checkLevelChunkForPostProcessing(class LevelChunk const &, class LevelChunkGridAreaElement<class std::weak_ptr<class LevelChunk>> &);
MCAPI bool _chunkAtStage(class std::weak_ptr<class LevelChunk>, enum ChunkState);
MCAPI void _freeChunkGenerationGridMap(class ChunkPos const &);
MCAPI void _launchGenerationTask(class std::shared_ptr<class LevelChunk> const &, bool);
MCAPI void _launchLightingTask(class std::shared_ptr<class LevelChunk> const &, class std::shared_ptr<class ChunkViewSource> const &, bool);
MCAPI void _launchPostProcessingTask(class std::shared_ptr<class LevelChunk> const &, class std::shared_ptr<class ChunkViewSource> const &, bool);
MCAPI void _launchReplacementDataTask(class std::shared_ptr<class LevelChunk> const &, class std::shared_ptr<class ChunkViewSource> const &, bool);
MCAPI bool _lightingTask(class std::shared_ptr<class LevelChunk> const &, class ChunkViewSource &);
MCAPI bool _loadChunkTask(class LevelChunk &);
MCAPI bool _postProcessingTask(class LevelChunk &, class ChunkViewSource &);
MCAPI void _spawnChunkGenerationTasks(int, bool);
protected:
};