1/******************************************************************************
2 *
3 * Copyright (C) 2015 The Android Open Source Project
4 *
5 * Licensed under the Apache License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at:
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 *
17 *****************************************************************************
18 * Originally developed and contributed by Ittiam Systems Pvt. Ltd, Bangalore
19*/
20/**
21*******************************************************************************
22* @file
23*  ih264_disp_mgr.h
24*
25* @brief
26*  Function declarations used for display management
27*
28* @author
29*  Srinivas T
30*
31*
32* @remarks
33*  None
34*
35*******************************************************************************
36*/
37#ifndef _DISP_MGR_H_
38#define _DISP_MGR_H_
39
40#define DISP_MGR_MAX_CNT 64
41#define DEFAULT_POC 0x7FFFFFFF
42
43typedef struct
44{
45    /**
46     * last_abs_poc
47     */
48    UWORD32 u4_last_abs_poc;
49
50    /**
51     * au4_abs_poc[DISP_MGR_MAX_CNT]
52     */
53    WORD32 ai4_abs_poc[DISP_MGR_MAX_CNT];
54
55    /**
56     * apv_ptr[DISP_MGR_MAX_CNT]
57     */
58    void    *apv_ptr[DISP_MGR_MAX_CNT];
59}disp_mgr_t;
60
61void ih264_disp_mgr_init(disp_mgr_t *ps_disp_mgr);
62
63WORD32 ih264_disp_mgr_add(disp_mgr_t *ps_disp_mgr,
64                          WORD32 id,
65                          WORD32 abs_poc,
66                          void *pv_ptr);
67
68void* ih264_disp_mgr_get(disp_mgr_t *ps_disp_mgr, WORD32 *pi4_buf_id);
69
70#endif  //_DISP_MGR_H_
71