#ifndef B88D46AC_14A3_4C6F_ADE1_2AF8BB03F51A #define B88D46AC_14A3_4C6F_ADE1_2AF8BB03F51A /* ******************************************************************************* * INCLUDE ******************************************************************************* */ #include "util/HandlesManager.h" #include #include namespace Video { namespace Core { /* ******************************************************************************* * CLASS DECLARE ******************************************************************************* */ class CodecCapabilityManager { public: using Handle = int; static const int INVALID_HANDLE; public: CodecCapabilityManager(uint64_t total); public: Handle alloc(uint32_t width, uint32_t height, uint32_t frameRate); void free(Handle handle); private: uint64_t _total; Util::HandlesManager _handles; std::map _allocRecord; Poco::FastMutex _lock; }; } } #endif