1 /* 2 * Copyright (c) 2022-2023 Huawei Device Co., Ltd. 3 * Licensed under the Apache License, Version 2.0 (the "License"); 4 * you may not use this file except in compliance with the License. 5 * You may obtain a copy of the License at 6 * 7 * http://www.apache.org/licenses/LICENSE-2.0 8 * 9 * Unless required by applicable law or agreed to in writing, software 10 * distributed under the License is distributed on an "AS IS" BASIS, 11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 * See the License for the specific language governing permissions and 13 * limitations under the License. 14 */ 15 #include "camera_service_client.h" 16 17 #include "media_log.h" 18 #include "camera_type.h" 19 #include "camera_manager.h" 20 #include "meta_data.h" 21 22 using namespace std; 23 namespace OHOS { 24 namespace Media { GetInstance()25CameraServiceClient *CameraServiceClient::GetInstance() 26 { 27 static CameraServiceClient client; 28 return &client; 29 } 30 CameraServiceClient()31CameraServiceClient::CameraServiceClient() 32 { 33 cameraService_ = CameraService::GetInstance(); 34 } 35 ~CameraServiceClient()36CameraServiceClient::~CameraServiceClient() {} 37 InitCameraServiceClient(CameraServiceCallback * callback)38void CameraServiceClient::InitCameraServiceClient(CameraServiceCallback *callback) 39 { 40 cameraServiceCb_ = callback; 41 cameraService_->Initialize(); 42 list<string> cameraList = cameraService_->GetCameraIdList(); 43 cameraServiceCb_->OnCameraServiceInitialized(cameraList); 44 } 45 GetCameraIdList()46list<string> CameraServiceClient::GetCameraIdList() 47 { 48 return cameraService_->GetCameraIdList(); 49 } 50 GetCameraModeNum()51uint8_t CameraServiceClient::GetCameraModeNum() 52 { 53 return cameraService_->GetCameraModeNum(); 54 } 55 GetCameraAbility(string & cameraId)56CameraAbility *CameraServiceClient::GetCameraAbility(string &cameraId) 57 { 58 return cameraService_->GetCameraAbility(cameraId); 59 } 60 GetCameraInfo(string & cameraId)61CameraInfo *CameraServiceClient::GetCameraInfo(string &cameraId) 62 { 63 return cameraService_->GetCameraInfo(cameraId); 64 } 65 SetCameraMode(uint8_t modeIndex)66int32_t CameraServiceClient::SetCameraMode(uint8_t modeIndex) 67 { 68 return cameraService_->SetCameraMode(modeIndex); 69 } 70 CreateCamera(string cameraId)71void CameraServiceClient::CreateCamera(string cameraId) 72 { 73 CameraServiceCallback::CameraStatus cameraStatus = 74 static_cast<CameraServiceCallback::CameraStatus>(cameraService_->CreateCamera(cameraId)); 75 cameraServiceCb_->OnCameraStatusChange(cameraId, cameraStatus); 76 } 77 } // namespace Media 78 } // namespace OHOS 79