1 /* 2 * Copyright(c) 2019 Intel Corporation 3 * 4 * This source code is subject to the terms of the BSD 2 Clause License and 5 * the Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License 6 * was not distributed with this source code in the LICENSE file, you can 7 * obtain it at https://www.aomedia.org/license/software-license. If the Alliance for Open 8 * Media Patent License 1.0 was not distributed with this source code in the 9 * PATENTS file, you can obtain it at https://www.aomedia.org/license/patent-license. 10 */ 11 12 #ifndef EbPictureResults_h 13 #define EbPictureResults_h 14 15 #include "EbSystemResourceManager.h" 16 #include "EbObject.h" 17 18 /************************************** 19 * Enums 20 **************************************/ 21 typedef enum EbPicType { 22 EB_PIC_INVALID = 0, 23 EB_PIC_INPUT = 1, 24 EB_PIC_REFERENCE = 2, 25 EB_PIC_FEEDBACK = 3 26 } EbPicType; 27 28 /************************************** 29 * Picture Demux Results 30 **************************************/ 31 typedef struct PictureDemuxResults { 32 EbDctor dctor; 33 EbPicType picture_type; 34 35 // Only valid for input pictures 36 EbObjectWrapper *pcs_wrapper_ptr; 37 38 // Only valid for reference pictures 39 EbObjectWrapper *reference_picture_wrapper_ptr; 40 EbObjectWrapper *scs_wrapper_ptr; 41 uint64_t picture_number; 42 uint64_t decode_order; 43 } PictureDemuxResults; 44 45 typedef struct PictureResultInitData { 46 int32_t junk; 47 } PictureResultInitData; 48 49 /************************************** 50 * Extern Function Declarations 51 **************************************/ 52 extern EbErrorType picture_results_creator(EbPtr *object_dbl_ptr, EbPtr object_init_data_ptr); 53 54 typedef struct PictureManagerResults { 55 EbDctor dctor; 56 EbObjectWrapper *pcs_wrapper_ptr; 57 uint32_t segment_index; 58 uint8_t task_type; 59 uint8_t tpl_ref_list0_count; 60 uint8_t tpl_ref_list1_count; 61 uint8_t temporal_layer_index; 62 EbBool is_used_as_reference_flag; 63 } PictureManagerResults; 64 65 typedef struct PictureManagerResultInitData { 66 int32_t junk; 67 } PictureManagerResultInitData; 68 #endif //EbPictureResults_h 69