1 /* 2 * Copyright (c) 2014 Intel Corporation 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 * 16 * Author: Wind Yuan <feng.yuan@intel.com> 17 */ 18 19 /* 20 * \file xcam_cpf_reader.h 21 * \brief xcam CPF reader 22 */ 23 24 #ifndef _XCAM_CPF_READER_H 25 #define _XCAM_CPF_READER_H 26 27 #include <base/xcam_common.h> 28 #include <stdint.h> 29 #include <string.h> 30 #include <stddef.h> 31 32 XCAM_BEGIN_DECLARE 33 34 35 typedef int boolean; 36 37 #ifndef TRUE 38 #define TRUE 1 39 #endif 40 41 #ifndef FALSE 42 #define FALSE 0 43 #endif 44 45 typedef struct _XCamCpfBlob XCamCpfBlob; 46 47 /*! \brief CPF blob 48 */ 49 struct _XCamCpfBlob { 50 uint8_t *data; /*!< pointer to buffer*/ 51 uint32_t size; /*!< buffer size*/ 52 }; 53 54 /*! \brief XCam CPF blob allocation. 55 * buffer is initialized to zero 56 * 57 * \return pointer to XCam CPF Blob 58 */ 59 XCamCpfBlob * xcam_cpf_blob_new (); 60 61 /*! \brief XCam CPF blob release. 62 * release the blob structure as well as the buffer inside it. 63 * 64 * \param[in,out] pointer to XCam CPF Blob 65 */ 66 void xcam_cpf_blob_free (XCamCpfBlob *blob); 67 68 /*! \brief XCam CPF blob release. 69 * release the blob structure as well as the buffer inside it. Called in xcam_3a_init(). 70 * 71 * \param[in] cpf_file CPF file name 72 * \param[out] aiq_cpf pointer to XCam CPF Blob which will hold AIQ records 73 * \param[out] hal_cpf pointer to XCam CPF HAL which will hold HAL records 74 */ 75 boolean xcam_cpf_read (const char *cpf_file, XCamCpfBlob *aiq_cpf, XCamCpfBlob *hal_cpf); 76 77 XCAM_END_DECLARE 78 79 #endif //_XCAM_CPF_READER_H 80