1 /* 2 * Copyright (c) 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 16 #ifndef CAMERA_MANAGER_FUZZER_H 17 #define CAMERA_MANAGER_FUZZER_H 18 19 #include "input/camera_manager.h" 20 #include <memory> 21 22 namespace OHOS { 23 namespace CameraStandard { 24 class CameraManagerFuzzer { 25 public: 26 static void CameraManagerFuzzTest1(); 27 static void CameraManagerFuzzTest2(); 28 static void CameraManagerFuzzTest3(); 29 }; 30 31 class IDeferredPhotoProcSessionCallbackFuzz : public IDeferredPhotoProcSessionCallback { 32 public: OnProcessImageDone(const std::string & imageId,const uint8_t * addr,const long bytes,uint32_t isCloudImageEnhanceSupported)33 void OnProcessImageDone(const std::string& imageId, const uint8_t* addr, const long bytes, 34 uint32_t isCloudImageEnhanceSupported) override {} OnProcessImageDone(const std::string & imageId,std::shared_ptr<PictureIntf> picture,uint32_t cloudImageEnhanceFlag)35 void OnProcessImageDone(const std::string &imageId, std::shared_ptr<PictureIntf> picture, 36 uint32_t cloudImageEnhanceFlag) override {} OnDeliveryLowQualityImage(const std::string & imageId,std::shared_ptr<PictureIntf> picture)37 void OnDeliveryLowQualityImage(const std::string &imageId, std::shared_ptr<PictureIntf> picture) override {} OnError(const std::string & imageId,const DpsErrorCode errorCode)38 void OnError(const std::string& imageId, const DpsErrorCode errorCode) override {} OnStateChanged(const DpsStatusCode status)39 void OnStateChanged(const DpsStatusCode status) override {} 40 }; 41 42 class ITorchServiceCallbackFuzz : public ITorchServiceCallback { 43 public: OnTorchStatusChange(const TorchStatus status)44 int32_t OnTorchStatusChange(const TorchStatus status) override 45 { 46 return 0; 47 } AsObject()48 sptr<IRemoteObject> AsObject() override 49 { 50 return 0; 51 } 52 }; 53 54 class IFoldServiceCallbackFuzz : public IFoldServiceCallback { 55 public: OnFoldStatusChanged(const FoldStatus status)56 virtual int32_t OnFoldStatusChanged(const FoldStatus status) 57 { 58 return 0; 59 } AsObject()60 virtual sptr<IRemoteObject> AsObject() 61 { 62 return 0; 63 } 64 }; 65 66 class ICameraMuteServiceCallbackFuzz : public ICameraMuteServiceCallback { 67 public: OnCameraMute(bool muteMode)68 int32_t OnCameraMute(bool muteMode) override 69 { 70 return 0; 71 } AsObject()72 sptr<IRemoteObject> AsObject() override 73 { 74 return 0; 75 } 76 }; 77 78 class IDeferredVideoProcSessionCallbackFuzz : public IDeferredVideoProcSessionCallback { 79 public: OnProcessVideoDone(const std::string & videoId,const sptr<IPCFileDescriptor> ipcFd)80 void OnProcessVideoDone(const std::string& videoId, const sptr<IPCFileDescriptor> ipcFd) override {} OnError(const std::string & videoId,const DpsErrorCode errorCode)81 void OnError(const std::string& videoId, const DpsErrorCode errorCode) override {} OnStateChanged(const DpsStatusCode status)82 void OnStateChanged(const DpsStatusCode status) override {} 83 }; 84 85 class CameraManagerCallbackFuzz : public CameraManagerCallback { 86 public: OnCameraStatusChanged(const CameraStatusInfo & cameraStatusInfo)87 void OnCameraStatusChanged(const CameraStatusInfo &cameraStatusInfo) const override {} OnFlashlightStatusChanged(const std::string & cameraID,const FlashStatus flashStatus)88 void OnFlashlightStatusChanged(const std::string &cameraID, const FlashStatus flashStatus) const override {} 89 }; 90 91 class CameraMuteListenerFuzz : public CameraMuteListener { 92 public: OnCameraMute(bool muteMode)93 void OnCameraMute(bool muteMode) const override {} 94 }; 95 96 class FoldListenerFuzz : public FoldListener { 97 public: OnFoldStatusChanged(const FoldStatusInfo & foldStatusInfo)98 void OnFoldStatusChanged(const FoldStatusInfo &foldStatusInfo) const override {} 99 }; 100 101 class TorchListenerFuzz : public TorchListener { 102 public: OnTorchStatusChange(const TorchStatusInfo & torchStatusInfo)103 void OnTorchStatusChange(const TorchStatusInfo &torchStatusInfo) const override {} 104 }; 105 } //CameraStandard 106 } //OHOS 107 #endif //CAMERA_MANAGER_FUZZER_H