iprescale.h

来自「TI公司的算法标准 Framework5的源代码」· C头文件 代码 · 共 99 行

H
99
字号
/*
 *  Copyright 2002 by Texas Instruments Incorporated.
 *  All rights reserved. Property of Texas Instruments Incorporated.
 *  Restricted rights to use, duplicate or disclose this code are
 *  granted through contract.
 *  
 */
/* "@(#) RF5_IEK 2.00.02 12-11-02 (swat-c19)" */
/*
 *  ======== iprescale.h ========
 *  IPrescale Interface Header
 */
#ifndef IPRESCALE_
#define IPRESCALE_

#include <ialg.h>
#include <xdas.h>

#ifdef __cplusplus
extern "C" {
#endif

/*
 *  ======== IPrescale_Handle ========
 *  This handle is used to reference all Prescale instance objects
 */
typedef struct IPrescale_Obj *IPrescale_Handle;

/*
 *  ======== IPrescale_Obj ========
 *  This structure must be the first field of all Prescale instance objects
 */
typedef struct IPrescale_Obj {
    struct IPrescale_Fxns *fxns;
} IPrescale_Obj;

/*
 *  ======== IPrescale_Status ========
 *  Status structure defines the parameters that can be changed or read
 *  during real-time operation of the alogrithm.
 */
typedef struct IPrescale_Status {
    Int size;           // must be first field of all status structures
    Int width;          // prescaled frame width
    Int height;         // prescaled frame height         
    Int pitch;          // prescaled frame pitch 
    Int decimation;     // downsampling factor
    Int input_pitch;    // input frame pitch

} IPrescale_Status;
/*
 *  ======== IPrescale_Cmd ========
 *  The Cmd enumeration defines the control commands for the Prescale
 *  control method.
 */
typedef enum IPrescale_Cmd {
        IPrescale_GETSTATUS,
        IPrescale_SETSTATUS
} IPrescale_Cmd;

/*
 *  ======== IPrescale_Params ========
 *  This structure defines the creation parameters for all Prescale objects
 */
typedef struct IPrescale_Params {
    Int size;           // must be first field of all params structures 
    Int width;          // prescaled frame width
    Int height;         // prescaled frame height     
    Int pitch;          // prescaled frame pitch
    Int decimation;     // downsampling factor 
    Int input_pitch;    // input frame pitch

} IPrescale_Params;

/*
 *  ======== IPrescale_PARAMS ========
 *  Default parameter values for Prescale instance objects
 */
extern IPrescale_Params IPrescale_PARAMS;

/*
 *  ======== IPrescale_Fxns ========
 *  This structure defines all of the operations on Prescale objects
 */
typedef struct IPrescale_Fxns {
    IALG_Fxns   ialg;    // IPrescale extends IALG 
    XDAS_Bool    (*control)(IPrescale_Handle handle, IPrescale_Cmd cmd, 
        IPrescale_Status *status);
    XDAS_Int32   (*apply)(IPrescale_Handle handle,  XDAS_Int8** in, 
        XDAS_Int8** out);
} IPrescale_Fxns;

#ifdef __cplusplus
}
#endif // extern "C" 

#endif // IPRESCALE_ 

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?