/
renath
/
organicmaps
Обзор
Документация
Войти
/
renath
/
organicmaps
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
libs/base/shared_buffer_manager.hpp
30 строк
707 B
Alexander Borsuk
clang-format
24 июл 2025, 15:48
24 июл 2025, 15:48
15b66d5
Код
Авторство
О чём код?
#pragma once #include <list> #include <map> #include <memory> #include <mutex> #include <vector> class SharedBufferManager { public: typedef std::vector<uint8_t> shared_buffer_t; typedef std::shared_ptr<shared_buffer_t> shared_buffer_ptr_t; typedef std::list<shared_buffer_ptr_t> shared_buffer_ptr_list_t; typedef std::map<size_t, shared_buffer_ptr_list_t> shared_buffers_t; private: std::mutex m_mutex; shared_buffers_t m_sharedBuffers; public: static SharedBufferManager & instance(); void clearReserved(); shared_buffer_ptr_t reserveSharedBuffer(size_t s); void freeSharedBuffer(size_t s, shared_buffer_ptr_t buf); static uint8_t * GetRawPointer(shared_buffer_ptr_t ptr); };