Skip to content

Commit

Permalink
libavc: Remove duplicate code and improve readability
Browse files Browse the repository at this point in the history
This commit does not introduce any new functionality w.r.t previous
commit. But it fixes few things. They are listed below
1. Guard Bands in header files are fixed
2. Header files contains function definition comments. These are same
as in source file. Maintaining same comment at two locations is
unnecessary. These are removed.
3. Maintain Indentation consistency across the code.
4. Remove unused code
  • Loading branch information
ram-mohan committed Oct 6, 2023
1 parent 583887f commit 7a80c78
Show file tree
Hide file tree
Showing 45 changed files with 13,964 additions and 14,244 deletions.
288 changes: 132 additions & 156 deletions common/ih264_buf_mgr.c

Large diffs are not rendered by default.

58 changes: 27 additions & 31 deletions common/ih264_buf_mgr.h
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@
*****************************************************************************
* Originally developed and contributed by Ittiam Systems Pvt. Ltd, Bangalore
*/

/**
*******************************************************************************
* @file
Expand All @@ -25,14 +26,21 @@
* @brief
* Function declarations used for buffer management
*
* @author
* ittiam
*
* @remarks
* None
* none
*
*******************************************************************************
*/

#ifndef _IH264_BUF_MGR_H_
#define _IH264_BUF_MGR_H_

/*****************************************************************************/
/* Constant Macros */
/*****************************************************************************/
#define BUF_MGR_MAX_CNT 64

/** Flag for current encoding decoder */
Expand All @@ -44,6 +52,9 @@
/** Flag for I/O - Display/output in case of decoder, capture/input in case of encoder */
#define BUF_MGR_IO (1 << 3)

/*****************************************************************************/
/* Structure Definitions */
/*****************************************************************************/
typedef struct
{
/**
Expand All @@ -61,65 +72,50 @@ typedef struct
*/
WORD32 i4_active_buf_cnt;

/**
* au4_status[BUF_MGR_MAX_CNT]
*/
UWORD32 au4_status[BUF_MGR_MAX_CNT];

/* The last three bit of status are: */

/* Bit 0 - IN USE */
/* Bit 1 - CODEC */
/* Bit 2 - REF */
/* Bit 3 - DISP/IO/RECON */
void *apv_ptr[BUF_MGR_MAX_CNT];
UWORD32 au4_status[BUF_MGR_MAX_CNT];

/**
* pointer to buffer
*/
void *apv_ptr[BUF_MGR_MAX_CNT];

}buf_mgr_t;

// Returns size of the buffer manager context
/*****************************************************************************/
/* Function Declarations */
/*****************************************************************************/
WORD32 ih264_buf_mgr_size(void);

//Free buffer manager
IH264_ERROR_T ih264_buf_mgr_free(buf_mgr_t *ps_buf_mgr);

// Reset the buffer manager
void ih264_buf_mgr_reset(void *pv_buf_mgr);

// Initializes the buffer API structure
void *ih264_buf_mgr_init(void *pv_buf);

// Add buffer to buffer manager. 0: success, -1: fail (u4_active_buf_cnt has reached u4_max_buf_cnt)
IH264_ERROR_T ih264_buf_mgr_add(buf_mgr_t *ps_buf_mgr,
void *pv_ptr,
void ih264_buf_mgr_reset(void *pv_buf_mgr);

IH264_ERROR_T ih264_buf_mgr_add(buf_mgr_t *ps_buf_mgr, void *pv_ptr,
WORD32 buf_id);

// this function will set the buffer status to DEC
void* ih264_buf_mgr_get_next_free(buf_mgr_t *ps_buf_mgr, WORD32 *pi4_id);

// this function will check if there are any free buffers
IH264_ERROR_T ih264_buf_mgr_check_free(buf_mgr_t *ps_buf_mgr);

// mask will have who released it: DISP:REF:DEC
IH264_ERROR_T ih264_buf_mgr_release(buf_mgr_t *ps_buf_mgr,
WORD32 id,
IH264_ERROR_T ih264_buf_mgr_release(buf_mgr_t *ps_buf_mgr, WORD32 id,
UWORD32 mask);

// sets the status to one or all of DISP:REF:DEC
IH264_ERROR_T ih264_buf_mgr_set_status(buf_mgr_t *ps_buf_mgr,
WORD32 id,
IH264_ERROR_T ih264_buf_mgr_set_status(buf_mgr_t *ps_buf_mgr, WORD32 id,
UWORD32 mask);

// Gets status of the buffer
WORD32 ih264_buf_mgr_get_status(buf_mgr_t *ps_buf_mgr, WORD32 id);

// pass the ID - buffer will be returned
void* ih264_buf_mgr_get_buf(buf_mgr_t *ps_buf_mgr, WORD32 id);
//Pass buffer to get ID

WORD32 ih264_buf_mgr_get_bufid(buf_mgr_t *ps_buf_mgr, void *pv_buf);

// will return number of active buffers
UWORD32 ih264_buf_mgr_get_num_active_buf(buf_mgr_t *ps_buf_mgr);



#endif /* _IH264_BUF_MGR_H_ */
Loading

0 comments on commit 7a80c78

Please sign in to comment.