diff options
Diffstat (limited to 'camera/QCamera2/HAL/QCamera2Factory.cpp')
| -rw-r--r-- | camera/QCamera2/HAL/QCamera2Factory.cpp | 208 |
1 files changed, 0 insertions, 208 deletions
diff --git a/camera/QCamera2/HAL/QCamera2Factory.cpp b/camera/QCamera2/HAL/QCamera2Factory.cpp deleted file mode 100644 index 11c6088..0000000 --- a/camera/QCamera2/HAL/QCamera2Factory.cpp +++ /dev/null @@ -1,208 +0,0 @@ -/* Copyright (c) 2012-2013, The Linux Foundataion. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above - * copyright notice, this list of conditions and the following - * disclaimer in the documentation and/or other materials provided - * with the distribution. - * * Neither the name of The Linux Foundation nor the names of its - * contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED - * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF - * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT - * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS - * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR - * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF - * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR - * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, - * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE - * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN - * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - * - */ - -#define LOG_NIDEBUG 0 -#define LOG_TAG "QCamera2Factory" - -#include <stdlib.h> -#include <utils/Errors.h> -#include <hardware/camera.h> - -#include "QCamera2Factory.h" - -namespace qcamera { - -QCamera2Factory gQCamera2Factory; - -/*=========================================================================== - * FUNCTION : QCamera2Factory - * - * DESCRIPTION: default constructor of QCamera2Factory - * - * PARAMETERS : none - * - * RETURN : None - *==========================================================================*/ -QCamera2Factory::QCamera2Factory() -{ - mNumOfCameras = get_num_of_cameras(); -} - -/*=========================================================================== - * FUNCTION : ~QCamera2Factory - * - * DESCRIPTION: deconstructor of QCamera2Factory - * - * PARAMETERS : none - * - * RETURN : None - *==========================================================================*/ -QCamera2Factory::~QCamera2Factory() -{ -} - -/*=========================================================================== - * FUNCTION : get_number_of_cameras - * - * DESCRIPTION: static function to query number of cameras detected - * - * PARAMETERS : none - * - * RETURN : number of cameras detected - *==========================================================================*/ -int QCamera2Factory::get_number_of_cameras() -{ - return gQCamera2Factory.getNumberOfCameras(); -} - -/*=========================================================================== - * FUNCTION : get_camera_info - * - * DESCRIPTION: static function to query camera information with its ID - * - * PARAMETERS : - * @camera_id : camera ID - * @info : ptr to camera info struct - * - * RETURN : int32_t type of status - * NO_ERROR -- success - * none-zero failure code - *==========================================================================*/ -int QCamera2Factory::get_camera_info(int camera_id, struct camera_info *info) -{ - return gQCamera2Factory.getCameraInfo(camera_id, info); -} - -/*=========================================================================== - * FUNCTION : getNumberOfCameras - * - * DESCRIPTION: query number of cameras detected - * - * PARAMETERS : none - * - * RETURN : number of cameras detected - *==========================================================================*/ -int QCamera2Factory::getNumberOfCameras() -{ - return mNumOfCameras; -} - -/*=========================================================================== - * FUNCTION : getCameraInfo - * - * DESCRIPTION: query camera information with its ID - * - * PARAMETERS : - * @camera_id : camera ID - * @info : ptr to camera info struct - * - * RETURN : int32_t type of status - * NO_ERROR -- success - * none-zero failure code - *==========================================================================*/ -int QCamera2Factory::getCameraInfo(int camera_id, struct camera_info *info) -{ - int rc; - ALOGV("%s: E, camera_id = %d", __func__, camera_id); - - if (!mNumOfCameras || camera_id >= mNumOfCameras || !info) { - return INVALID_OPERATION; - } - - rc = QCamera2HardwareInterface::getCapabilities((uint32_t)camera_id, info); - ALOGV("%s: X", __func__); - return rc; -} - -/*=========================================================================== - * FUNCTION : cameraDeviceOpen - * - * DESCRIPTION: open a camera device with its ID - * - * PARAMETERS : - * @camera_id : camera ID - * @hw_device : ptr to struct storing camera hardware device info - * - * RETURN : int32_t type of status - * NO_ERROR -- success - * none-zero failure code - *==========================================================================*/ -int QCamera2Factory::cameraDeviceOpen(int camera_id, - struct hw_device_t **hw_device) -{ - int rc = NO_ERROR; - if (camera_id < 0 || camera_id >= mNumOfCameras) - return BAD_VALUE; - - QCamera2HardwareInterface *hw = new QCamera2HardwareInterface((uint32_t)camera_id); - if (!hw) { - ALOGE("Allocation of hardware interface failed"); - return NO_MEMORY; - } - rc = hw->openCamera(hw_device); - if (rc != NO_ERROR) { - delete hw; - } - return rc; -} - -/*=========================================================================== - * FUNCTION : camera_device_open - * - * DESCRIPTION: static function to open a camera device by its ID - * - * PARAMETERS : - * @camera_id : camera ID - * @hw_device : ptr to struct storing camera hardware device info - * - * RETURN : int32_t type of status - * NO_ERROR -- success - * none-zero failure code - *==========================================================================*/ -int QCamera2Factory::camera_device_open( - const struct hw_module_t *module, const char *id, - struct hw_device_t **hw_device) -{ - if (module != &HAL_MODULE_INFO_SYM.common) { - ALOGE("Invalid module. Trying to open %p, expect %p", - module, &HAL_MODULE_INFO_SYM.common); - return INVALID_OPERATION; - } - if (!id) { - ALOGE("Invalid camera id"); - return BAD_VALUE; - } - return gQCamera2Factory.cameraDeviceOpen(atoi(id), hw_device); -} - -struct hw_module_methods_t QCamera2Factory::mModuleMethods = { - open: QCamera2Factory::camera_device_open, -}; - -}; // namespace qcamera |
