// Luanti // SPDX-License-Identifier: LGPL-2.1-or-later // Copyright (C) 2015 Nerzhul, Loic Blot #pragma once #include "irr_v3d.h" #include #include #include #include /* * This class permits caching getFacePosition call results. * This reduces CPU usage and vector calls. */ class FacePositionCache { public: static const std::vector &getFacePositions(u16 d); private: static const std::vector &generateFacePosition(u16 d); static std::unordered_map> cache; static std::mutex cache_mutex; };