#ifndef CAE4D712_1E71_4191_9693_2F31854D9087 #define CAE4D712_1E71_4191_9693_2F31854D9087 /* ******************************************************************************* * INCLUDE ******************************************************************************* */ #include "util/HandlesManager.h" /* ******************************************************************************* * CONSTANTS ******************************************************************************* */ #define NO_SIGNAL_YUV_PATH "/customer/no-signal-1080.yvu422sp" #define NO_SIGNAL_YUV_FORMAT HI_PIXEL_FORMAT_YVU_SEMIPLANAR_422 #define NO_SIGNAL_YUV_WIDTH 1920 #define NO_SIGNAL_YUV_HEIGHT 1080 #define NO_SIGNAL_JPEG_PATH "/customer/no-signal-1080.jpg" #define NO_SIGNAL_JPEG_WIDTH 1920 #define NO_SIGNAL_JPEG_HEIGHT 1080 namespace Video { namespace MPP5 { /* ******************************************************************************* * CLASS DECLARE ******************************************************************************* */ class ResourceManager { public: static uint32_t allocVPSSGroupID(); static void freeVPSSGroupID(uint32_t id); static uint32_t allocVENCChannelID(); static void freeVENCChannelID(uint32_t id); static uint32_t allocVDECChannelID(); static void freeVDECChannelID(uint32_t id); static uint32_t allocAENCChannelID(); static void freeAENCChannelID(uint32_t id); static uint32_t allocRGNHandle(); static void freeRGNHandle(uint32_t handle); private: static Util::HandlesManager _vpssGroupIDManager; static Util::HandlesManager _vencChannelIDManager; static Util::HandlesManager _vdecChannelIDManager; static Util::HandlesManager _aencChannelIDManager; static Util::HandlesManager _rgnHandleManager; }; } } #endif