/**
 * @file Hv_Drv_Osd.h
 * @brief Osd driver layer interface.
 * @verbatim
 * ==============================================================================
 *                        ##### How to use this driver #####
 * ==============================================================================
 * (+) Use Hv_Drv_OsdInit to init OSD.
 * @endverbatim
 *
 * @author HiView SoC Software Team
 * @version 0.0.1
 * @date 2022-08-22
 */

#ifndef _HV_DRV_OSD_H
#define _HV_DRV_OSD_H

#include "hv_comm_MemoryConfig.h"
#include "hv_comm_DataType.h"
#include "hv_comm_Assert.h"
#include "hv_comm_Event.h"
#include "hv_vos_Comm.h"

#include "hv_mw_OsdComm.h"
#include "hv_mw_OsdLog.h"

#include "hv_res_OsdMoeRes.h"
#include "hv_drv_OsdCommon.h"
#include "hv_drv_OsdTypes.h"
#include "hv_drv_OsdResource.h"
#include "hv_drv_OsdWindow.h"
#include "hv_drv_OsdDMA.h"
#include "hv_drv_OsdDataPath.h"
#include "hv_drv_OsdMemory.h"
#include "hv_drv_OsdBlend.h"
#include "hv_drv_OsdPalette.h"
#include "hv_drv_OsdIndex.h"
#include "hv_drv_OsdEffect.h"
#include "hv_drv_OsdFont.h"
#include "hv_drv_OsdFrame.h"
#include "hv_drv_OsdGraphic.h"
#include "hv_drv_OsdLogo.h"
#include "hv_drv_OsdRotate.h"
#include "hv_drv_OsdShift.h"
#include "hv_drv_OsdRadixTree.h"

/**
 * @brief Osd Driver Init entrance function
 * @param[in] None
 * @return VOID without return
 */
VOID Hv_Drv_OsdInit(VOID);

VOID Hv_Drv_OsdSetPanelHtotal(USHORT16 usHTotal);

VOID Hv_Drv_OsdTest(VOID);

#ifdef SDK_WITH_OSD_TEST
UINT32 Hv_Test_OsdTest(VOID);
#endif


#endif
