From 476863f6f421b18351c8e6b76f828c9b294332a3 Mon Sep 17 00:00:00 2001 From: chen0088 Date: Mon, 16 May 2022 17:13:29 +0800 Subject: [PATCH 1/7] =?UTF-8?q?=E6=B7=BB=E5=8A=A0dump=E6=89=93=E5=8D=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: chen0088 --- services/cameraservice/sinkservice/BUILD.gn | 1 + .../distributedcamera/dcamera_sink_hidumper.h | 65 +++++++ .../distributed_camera_sink_service.h | 3 + .../dcamera_sink_hidumper.cpp | 142 +++++++++++++++ .../distributed_camera_sink_service.cpp | 32 ++++ services/cameraservice/sourceservice/BUILD.gn | 1 + .../dcamera_source_hidumper.h | 73 ++++++++ .../distributed_camera_source_service.h | 4 + .../distributedcameramgr/dcamera_source_dev.h | 2 + .../dcamera_source_state_machine.h | 1 + .../dcamera_source_hidumper.cpp | 172 ++++++++++++++++++ .../distributed_camera_source_service.cpp | 44 +++++ .../dcamera_source_dev.cpp | 11 ++ .../dcamera_source_state_machine.cpp | 6 + 14 files changed, 557 insertions(+) create mode 100644 services/cameraservice/sinkservice/include/distributedcamera/dcamera_sink_hidumper.h create mode 100644 services/cameraservice/sinkservice/src/distributedcamera/dcamera_sink_hidumper.cpp create mode 100644 services/cameraservice/sourceservice/include/distributedcamera/dcamera_source_hidumper.h create mode 100644 services/cameraservice/sourceservice/src/distributedcamera/dcamera_source_hidumper.cpp diff --git a/services/cameraservice/sinkservice/BUILD.gn b/services/cameraservice/sinkservice/BUILD.gn index ca6b9c48..c3a5fb7a 100644 --- a/services/cameraservice/sinkservice/BUILD.gn +++ b/services/cameraservice/sinkservice/BUILD.gn @@ -71,6 +71,7 @@ ohos_shared_library("distributed_camera_sink") { "${services_path}/cameraservice/base/src/dcamera_info_cmd.cpp", "${services_path}/cameraservice/base/src/dcamera_metadata_setting_cmd.cpp", "${services_path}/cameraservice/base/src/dcamera_open_info_cmd.cpp", + "src/distributedcamera/dcamera_sink_hidumper.cpp", "src/distributedcamera/distributed_camera_sink_service.cpp", "src/distributedcamera/distributed_camera_sink_stub.cpp", "src/distributedcameramgr/callback/dcamera_sink_controller_state_callback.cpp", diff --git a/services/cameraservice/sinkservice/include/distributedcamera/dcamera_sink_hidumper.h b/services/cameraservice/sinkservice/include/distributedcamera/dcamera_sink_hidumper.h new file mode 100644 index 00000000..85c2cf09 --- /dev/null +++ b/services/cameraservice/sinkservice/include/distributedcamera/dcamera_sink_hidumper.h @@ -0,0 +1,65 @@ +/* + * Copyright (c) 2021 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef OHOS_DISTRIBUTED_CAMERA_SINK_HIDUMPER_H +#define OHOS_DISTRIBUTED_CAMERA_SINK_HIDUMPER_H + +#include +#include +#include + +#include "single_instance.h" + +namespace OHOS { +namespace DistributedHardware { +class DCameraSourceDev; +enum class HidumpFlag { + UNKNOW = 0, + GET_HELP, + GET_CAMERA_INFO, + GET_OPENED_INFO, + GET_VERSION_INFO, +}; + +struct CameraDumpInfo { + std::string version; + int32_t camNumber; + std::string dhOpened; +}; + +class DcameraSinkHidumper { +DECLARE_SINGLE_INSTANCE_BASE(DcameraSinkHidumper); + +public: + bool Dump(const std::vector& args, std::string& result); + +private: + explicit DcameraSinkHidumper() = default; + ~DcameraSinkHidumper() = default; + void ShowHelp(std::string& result); + int32_t ShowIllegalInfomation(std::string& result); + int32_t ProcessDump(const std::string& args, std::string& result); + void SetSinkDumpInfo(CameraDumpInfo& camDumpInfo_); + + int32_t GetLocalCameraNumber(std::string& result); + int32_t GetOpenedCameraInfo(std::string& result); + int32_t GetVersionInfo(std::string& result); + +private: + CameraDumpInfo camDumpInfo_; +}; +} // namespace DistributedHardware +} // namespace OHOS +#endif // OHOS_DISTRIBUTED_CAMERA_SINK_HIDUMPER_H \ No newline at end of file diff --git a/services/cameraservice/sinkservice/include/distributedcamera/distributed_camera_sink_service.h b/services/cameraservice/sinkservice/include/distributedcamera/distributed_camera_sink_service.h index 48d13d92..4dab073b 100644 --- a/services/cameraservice/sinkservice/include/distributedcamera/distributed_camera_sink_service.h +++ b/services/cameraservice/sinkservice/include/distributedcamera/distributed_camera_sink_service.h @@ -20,6 +20,7 @@ #include "ipc_object_stub.h" #include "dcamera_sink_dev.h" +#include "dcamera_sink_hidumper.h" #include "distributed_camera_constants.h" #include "distributed_camera_sink_stub.h" @@ -41,6 +42,8 @@ public: int32_t GetCameraInfo(const std::string& dhId, std::string& cameraInfo) override; int32_t OpenChannel(const std::string& dhId, std::string& openInfo) override; int32_t CloseChannel(const std::string& dhId) override; + int Dump(int32_t fd, const std::vector& args) override; + static void GetCamDumpInfo(CameraDumpInfo& camDump); protected: void OnStart() override; diff --git a/services/cameraservice/sinkservice/src/distributedcamera/dcamera_sink_hidumper.cpp b/services/cameraservice/sinkservice/src/distributedcamera/dcamera_sink_hidumper.cpp new file mode 100644 index 00000000..16514061 --- /dev/null +++ b/services/cameraservice/sinkservice/src/distributedcamera/dcamera_sink_hidumper.cpp @@ -0,0 +1,142 @@ +/* + * Copyright (c) 2021 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#include "dcamera_sink_hidumper.h" + +#include + +#include "distributed_camera_errno.h" +#include "distributed_camera_sink_service.h" +#include "distributed_hardware_log.h" + +namespace OHOS { +namespace DistributedHardware { +IMPLEMENT_SINGLE_INSTANCE(DcameraSinkHidumper); + +namespace { +const std::string ARGS_HELP = "-h"; +const std::string ARGS_VERSION_INFO = "--version"; +const std::string ARGS_CAMERA_INFO = "--camNum"; +const std::string ARGS_OPENED_INFO = "--opened"; + +const std::map ARGS_MAP = { + { ARGS_HELP, HidumpFlag::GET_HELP }, + { ARGS_CAMERA_INFO, HidumpFlag::GET_CAMERA_INFO }, + { ARGS_OPENED_INFO, HidumpFlag::GET_OPENED_INFO }, + { ARGS_VERSION_INFO, HidumpFlag::GET_VERSION_INFO }, +}; +} + +void DcameraSinkHidumper::SetSinkDumpInfo(CameraDumpInfo& camDumpInfo_) +{ + DistributedCameraSinkService::GetCamDumpInfo(camDumpInfo_); +} + +bool DcameraSinkHidumper::Dump(const std::vector& args, std::string& result) +{ + DHLOGI("DcameraSinkHidumper Dump args.size():%d.", args.size()); + result.clear(); + int32_t argsSize = static_cast(args.size()); + for (int i = 0; i < argsSize; i++) { + DHLOGI("DcameraSinkHidumper Dump args[%d]: %s.", i, args.at(i).c_str()); + } + + int32_t ret = ProcessDump(args[0], result); + return ret; +} + +int32_t DcameraSinkHidumper::ProcessDump(const std::string& args, std::string& result) +{ + DHLOGI("ProcessDump Dump."); + HidumpFlag hf = HidumpFlag::UNKNOW; + auto operatorIter = ARGS_MAP.find(args); + if (operatorIter != ARGS_MAP.end()) { + hf = operatorIter->second; + } + + if (hf == HidumpFlag::GET_HELP) { + ShowHelp(result); + return DCAMERA_OK; + } + result.clear(); + SetSinkDumpInfo(camDumpInfo_); + int32_t ret = DCAMERA_BAD_VALUE; + switch (hf) { + case HidumpFlag::GET_CAMERA_INFO: { + ret = GetLocalCameraNumber(result); + break; + } + case HidumpFlag::GET_OPENED_INFO: { + ret = GetOpenedCameraInfo(result); + break; + } + case HidumpFlag::GET_VERSION_INFO: { + ret = GetVersionInfo(result); + break; + } + default: { + ret = ShowIllegalInfomation(result); + break; + } + } + + return ret; +} + +int32_t DcameraSinkHidumper::GetLocalCameraNumber(std::string& result) +{ + DHLOGI("GetLocalCameraNumber Dump."); + result.append("CameraNumber\n") + .append(std::to_string(camDumpInfo_.camNumber)); + return DCAMERA_OK; +} + +int32_t DcameraSinkHidumper::GetOpenedCameraInfo(std::string& result) +{ + DHLOGI("GetOpenedCameraInfo Dump."); + result.append("OpenedCamera\n") + .append(camDumpInfo_.dhOpened); + return DCAMERA_OK; +} + +int32_t DcameraSinkHidumper::GetVersionInfo(std::string& result) +{ + DHLOGI("GetVersionInfo Dump."); + result.append("CameraVersion\n") + .append(camDumpInfo_.version); + return DCAMERA_OK; +} + +void DcameraSinkHidumper::ShowHelp(std::string& result) +{ + DHLOGI("ShowHelp Dump."); + result.append("Usage:dump [options]\n") + .append("Description:\n") + .append("--version ") + .append("dump camera version in the system\n") + .append("--camNum ") + .append("dump local camera numbers in the system\n") + .append("--opened ") + .append("dump the opened camera in the system\n"); +} + +int32_t DcameraSinkHidumper::ShowIllegalInfomation(std::string& result) +{ + DHLOGI("ShowIllegalInfomation Dump."); + result.append("unkown command"); + return DCAMERA_OK; +} +} // namespace DistributedHardware +} // namespace OHOS \ No newline at end of file diff --git a/services/cameraservice/sinkservice/src/distributedcamera/distributed_camera_sink_service.cpp b/services/cameraservice/sinkservice/src/distributedcamera/distributed_camera_sink_service.cpp index 41ea35c4..274f101e 100644 --- a/services/cameraservice/sinkservice/src/distributedcamera/distributed_camera_sink_service.cpp +++ b/services/cameraservice/sinkservice/src/distributedcamera/distributed_camera_sink_service.cpp @@ -33,6 +33,7 @@ namespace OHOS { namespace DistributedHardware { REGISTER_SYSTEM_ABILITY_BY_ID(DistributedCameraSinkService, DISTRIBUTED_HARDWARE_CAMERA_SINK_SA_ID, true); +static CameraDumpInfo g_camDump; DistributedCameraSinkService::DistributedCameraSinkService(int32_t saId, bool runOnCreate) : SystemAbility(saId, runOnCreate) { @@ -82,6 +83,7 @@ int32_t DistributedCameraSinkService::InitSink(const std::string& params) { DHLOGI("DistributedCameraSinkService::InitSink"); sinkVer_ = params; + g_camDump.version = sinkVer_; int32_t ret = DCameraHandler::GetInstance().Initialize(); if (ret != DCAMERA_OK) { DHLOGE("DistributedCameraSinkService::InitSink handler initialize failed, ret: %d", ret); @@ -93,6 +95,7 @@ int32_t DistributedCameraSinkService::InitSink(const std::string& params) DHLOGE("DistributedCameraSinkService::InitSink no camera device"); return DCAMERA_BAD_VALUE; } + g_camDump.camNumber = cameras.size(); for (auto& dhId : cameras) { std::shared_ptr sinkDevice = std::make_shared(dhId); ret = sinkDevice->Init(); @@ -188,6 +191,7 @@ int32_t DistributedCameraSinkService::ChannelNeg(const std::string& dhId, std::s return DCAMERA_NOT_FOUND; } + g_camDump.dhOpened = GetAnonyString(dhId); std::shared_ptr sinkDevice = iter->second; int32_t ret = sinkDevice->ChannelNeg(channelInfo); if (ret != DCAMERA_OK) { @@ -254,5 +258,33 @@ int32_t DistributedCameraSinkService::CloseChannel(const std::string& dhId) DHLOGI("DistributedCameraSinkService::CloseChannel success"); return DCAMERA_OK; } + +int DistributedCameraSinkService::Dump(int32_t fd, const std::vector& args) +{ + DHLOGI("DistributedCameraSinkService Dump."); + std::string result; + std::vector argsStr; + for (auto item : args) { + argsStr.emplace_back(Str16ToStr8(item)); + } + + if (!DcameraSinkHidumper::GetInstance().Dump(argsStr, result)) { + DHLOGE("Hidump error"); + return DCAMERA_BAD_VALUE; + } + + int ret = dprintf(fd, "%s\n", result.c_str()); + if (ret < 0) { + DHLOGE("dprintf error"); + return DCAMERA_BAD_VALUE; + } + + return DCAMERA_OK; +} + +void DistributedCameraSinkService::GetCamDumpInfo(CameraDumpInfo& camDump) +{ + camDump = g_camDump; +} } // namespace DistributedHardware } // namespace OHOS \ No newline at end of file diff --git a/services/cameraservice/sourceservice/BUILD.gn b/services/cameraservice/sourceservice/BUILD.gn index 8f53c80d..444ae8fb 100644 --- a/services/cameraservice/sourceservice/BUILD.gn +++ b/services/cameraservice/sourceservice/BUILD.gn @@ -60,6 +60,7 @@ ohos_shared_library("distributed_camera_source") { "${services_path}/cameraservice/base/src/dcamera_info_cmd.cpp", "${services_path}/cameraservice/base/src/dcamera_metadata_setting_cmd.cpp", "${services_path}/cameraservice/base/src/dcamera_open_info_cmd.cpp", + "src/distributedcamera/dcamera_source_hidumper.cpp", "src/distributedcamera/dcamera_service_state_listener.cpp", "src/distributedcamera/dcamera_source_callback_proxy.cpp", "src/distributedcamera/distributed_camera_source_service.cpp", diff --git a/services/cameraservice/sourceservice/include/distributedcamera/dcamera_source_hidumper.h b/services/cameraservice/sourceservice/include/distributedcamera/dcamera_source_hidumper.h new file mode 100644 index 00000000..51c0b889 --- /dev/null +++ b/services/cameraservice/sourceservice/include/distributedcamera/dcamera_source_hidumper.h @@ -0,0 +1,73 @@ +/* + * Copyright (c) 2021 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef OHOS_DISTRIBUTED_CAMERA_SOURCE_HIDUMPER_H +#define OHOS_DISTRIBUTED_CAMERA_SOURCE_HIDUMPER_H + +#include +#include +#include + +#include "single_instance.h" + +namespace OHOS { +namespace DistributedHardware { +class DCameraSourceDev; +enum class HidumpFlag { + UNKNOW = 0, + GET_HELP, + GET_REGISTERED_INFO, + GET_CURRENTSTATE_INFO, + GET_VERSION_INFO, +}; + +typedef enum { + DCAMERA_STATE_INIT_DUMP = 0, + DCAMERA_STATE_REGIST_DUMP = 1, + DCAMERA_STATE_OPENED_DUMP = 2, + DCAMERA_STATE_CONFIG_STREAM_DUMP = 3, + DCAMERA_STATE_CAPTURE_DUMP = 4, +} DCameraState; + +struct CameraDumpInfo { + std::string version; + int32_t regNumber; + std::map curState; +}; + +class DcameraSourceHidumper { +DECLARE_SINGLE_INSTANCE_BASE(DcameraSourceHidumper); + +public: + bool Dump(const std::vector& args, std::string& result); + +private: + explicit DcameraSourceHidumper() = default; + ~DcameraSourceHidumper() = default; + void ShowHelp(std::string& result); + int32_t ShowIllegalInfomation(std::string& result); + int32_t ProcessDump(const std::string& args, std::string& result); + void SetSourceDumpInfo(CameraDumpInfo& camDumpInfo_); + + int32_t GetRegisteredInfo(std::string& result); + int32_t GetCurrentStateInfo(std::string& result); + int32_t GetVersionInfo(std::string& result); + +private: + CameraDumpInfo camDumpInfo_; +}; +} // namespace DistributedHardware +} // namespace OHOS +#endif // OHOS_DISTRIBUTED_CAMERA_SOURCE_HIDUMPER_H \ No newline at end of file diff --git a/services/cameraservice/sourceservice/include/distributedcamera/distributed_camera_source_service.h b/services/cameraservice/sourceservice/include/distributedcamera/distributed_camera_source_service.h index 11203067..52d6bba9 100644 --- a/services/cameraservice/sourceservice/include/distributedcamera/distributed_camera_source_service.h +++ b/services/cameraservice/sourceservice/include/distributedcamera/distributed_camera_source_service.h @@ -19,10 +19,12 @@ #include #include #include +#include #include "system_ability.h" #include "ipc_object_stub.h" +#include "dcamera_source_hidumper.h" #include "dcamera_index.h" #include "dcamera_service_state_listener.h" #include "dcamera_source_dev.h" @@ -45,6 +47,8 @@ public: int32_t UnregisterDistributedHardware(const std::string& devId, const std::string& dhId, const std::string& reqId) override; int32_t DCameraNotify(const std::string& devId, const std::string& dhId, std::string& events) override; + int Dump(int32_t fd, const std::vector& args) override; + static void GetDumpInfo(CameraDumpInfo& camDump); static std::map> camerasMap_; diff --git a/services/cameraservice/sourceservice/include/distributedcameramgr/dcamera_source_dev.h b/services/cameraservice/sourceservice/include/distributedcameramgr/dcamera_source_dev.h index cb5b41d9..363f7994 100644 --- a/services/cameraservice/sourceservice/include/distributedcameramgr/dcamera_source_dev.h +++ b/services/cameraservice/sourceservice/include/distributedcameramgr/dcamera_source_dev.h @@ -50,6 +50,8 @@ public: int32_t UpdateCameraSettings(const std::vector>& settings); void OnEvent(DCameraSourceEvent& event) override; + int32_t GetStateInfo(); + std::string GetVersion(); public: virtual int32_t ExecuteRegister(std::shared_ptr& param); diff --git a/services/cameraservice/sourceservice/include/distributedcameramgr/dcamerastate/dcamera_source_state_machine.h b/services/cameraservice/sourceservice/include/distributedcameramgr/dcamerastate/dcamera_source_state_machine.h index 8d5d3034..e7835e87 100644 --- a/services/cameraservice/sourceservice/include/distributedcameramgr/dcamerastate/dcamera_source_state_machine.h +++ b/services/cameraservice/sourceservice/include/distributedcameramgr/dcamerastate/dcamera_source_state_machine.h @@ -27,6 +27,7 @@ public: ~DCameraSourceStateMachine(); int32_t Execute(DCAMERA_EVENT eventType, DCameraSourceEvent& event); void UpdateState(DCameraStateType stateType); + int32_t GetCameraState(); private: std::shared_ptr currentState_; diff --git a/services/cameraservice/sourceservice/src/distributedcamera/dcamera_source_hidumper.cpp b/services/cameraservice/sourceservice/src/distributedcamera/dcamera_source_hidumper.cpp new file mode 100644 index 00000000..4ef19a6b --- /dev/null +++ b/services/cameraservice/sourceservice/src/distributedcamera/dcamera_source_hidumper.cpp @@ -0,0 +1,172 @@ +/* + * Copyright (c) 2021 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#include "dcamera_source_hidumper.h" + +#include + +#include "distributed_camera_errno.h" +#include "distributed_camera_source_service.h" +#include "distributed_hardware_log.h" + +namespace OHOS { +namespace DistributedHardware { +IMPLEMENT_SINGLE_INSTANCE(DcameraSourceHidumper); + +namespace { +const std::string ARGS_HELP = "-h"; +const std::string ARGS_VERSION_INFO = "--version"; +const std::string ARGS_REGISTERED_INFO = "--registered"; +const std::string ARGS_CURRENTSTATE_INFO = "--curState"; +const std::string STATE_INT = "Init"; +const std::string STATE_REGISTERED = "Registered"; +const std::string STATE_OPENED = "Opened"; +const std::string STATE_CONFIG_STREAM = "ConfigStream"; +const std::string STATE_CAPTURE = "Capture"; + +const std::map ARGS_MAP = { + { ARGS_HELP, HidumpFlag::GET_HELP }, + { ARGS_REGISTERED_INFO, HidumpFlag::GET_REGISTERED_INFO }, + { ARGS_CURRENTSTATE_INFO, HidumpFlag::GET_CURRENTSTATE_INFO }, + { ARGS_VERSION_INFO, HidumpFlag::GET_VERSION_INFO }, +}; + +const std::map STATE_MAP = { + { DCAMERA_STATE_INIT_DUMP, STATE_INT }, + { DCAMERA_STATE_REGIST_DUMP, STATE_REGISTERED }, + { DCAMERA_STATE_OPENED_DUMP, STATE_OPENED }, + { DCAMERA_STATE_CONFIG_STREAM_DUMP, STATE_CONFIG_STREAM }, + { DCAMERA_STATE_CAPTURE_DUMP, STATE_CAPTURE }, +}; +} + +void DcameraSourceHidumper::SetSourceDumpInfo(CameraDumpInfo& camDumpInfo_) +{ + DistributedCameraSourceService::GetDumpInfo(camDumpInfo_); +} + +bool DcameraSourceHidumper::Dump(const std::vector& args, std::string& result) +{ + DHLOGI("DcameraSourceHidumper Dump args.size():%d.", args.size()); + result.clear(); + int32_t argsSize = static_cast(args.size()); + for (int i = 0; i < argsSize; i++) { + DHLOGI("DcameraSourceHidumper Dump args[%d]: %s.", i, args.at(i).c_str()); + } + + int32_t ret = ProcessDump(args[0], result); + return ret; +} + +int32_t DcameraSourceHidumper::ProcessDump(const std::string& args, std::string& result) +{ + DHLOGI("ProcessDump Dump."); + HidumpFlag hf = HidumpFlag::UNKNOW; + auto operatorIter = ARGS_MAP.find(args); + if (operatorIter != ARGS_MAP.end()) { + hf = operatorIter->second; + } + + if (hf == HidumpFlag::GET_HELP) { + ShowHelp(result); + return DCAMERA_OK; + } + result.clear(); + SetSourceDumpInfo(camDumpInfo_); + int32_t ret = DCAMERA_BAD_VALUE; + switch (hf) { + case HidumpFlag::GET_REGISTERED_INFO: { + ret = GetRegisteredInfo(result); + break; + } + case HidumpFlag::GET_CURRENTSTATE_INFO: { + ret = GetCurrentStateInfo(result); + break; + } + case HidumpFlag::GET_VERSION_INFO: { + ret = GetVersionInfo(result); + break; + } + default: { + ret = ShowIllegalInfomation(result); + break; + } + } + + return ret; +} + +int32_t DcameraSourceHidumper::GetRegisteredInfo(std::string& result) +{ + DHLOGI("GetRegisteredInfo Dump."); + result.append("CameraNumber\n") + .append(std::to_string(camDumpInfo_.regNumber)); + return DCAMERA_OK; +} + +int32_t DcameraSourceHidumper::GetCurrentStateInfo(std::string& result) +{ + DHLOGI("GetCurrentStateInfo Dump."); + std::map devState = camDumpInfo_.curState; + std::string deviceId; + int32_t camState; + std::map::iterator it; + for (it = devState.begin(); it != devState.end(); it++) { + deviceId = it->first; + camState = it->second; + } + DHLOGI("GetCurrentStateInfo camState is %d.", camState); + auto state = STATE_MAP.find(camState); + std::string curState; + if (state != STATE_MAP.end()) { + curState = state->second; + } + result.append("CameraId ") + .append("State\n") + .append(deviceId) + .append(" ") + .append(curState); + return DCAMERA_OK; +} + +int32_t DcameraSourceHidumper::GetVersionInfo(std::string& result) +{ + DHLOGI("GetVersionInfo Dump."); + result.append("CameraVersion\n") + .append(camDumpInfo_.version); + return DCAMERA_OK; +} + +void DcameraSourceHidumper::ShowHelp(std::string& result) +{ + DHLOGI("ShowHelp Dump."); + result.append("Usage:dump [options]\n") + .append("Description:\n") + .append("--version ") + .append("dump camera version in the system\n") + .append("--registered ") + .append("dump number of registered cameras in the system\n") + .append("--currentState ") + .append("dump current state of the camera in the system\n"); +} + +int32_t DcameraSourceHidumper::ShowIllegalInfomation(std::string& result) +{ + DHLOGI("ShowIllegalInfomation Dump."); + result.append("unkown command"); + return DCAMERA_OK; +} +} // namespace DistributedHardware +} // namespace OHOS \ No newline at end of file diff --git a/services/cameraservice/sourceservice/src/distributedcamera/distributed_camera_source_service.cpp b/services/cameraservice/sourceservice/src/distributedcamera/distributed_camera_source_service.cpp index 2aceb739..b9e96578 100644 --- a/services/cameraservice/sourceservice/src/distributedcamera/distributed_camera_source_service.cpp +++ b/services/cameraservice/sourceservice/src/distributedcamera/distributed_camera_source_service.cpp @@ -15,6 +15,8 @@ #include "distributed_camera_source_service.h" +#include + #include "if_system_ability_manager.h" #include "ipc_skeleton.h" #include "ipc_types.h" @@ -197,5 +199,47 @@ int32_t DistributedCameraSourceService::UnLoadCameraHDF() { return DCAMERA_OK; } + +int DistributedCameraSourceService::Dump(int32_t fd, const std::vector& args) +{ + DHLOGI("DistributedCameraSourceService Dump."); + std::string result; + std::vector argsStr; + for (auto item : args) { + argsStr.emplace_back(Str16ToStr8(item)); + } + + if (!DcameraSourceHidumper::GetInstance().Dump(argsStr, result)) { + DHLOGE("Hidump error"); + return DCAMERA_BAD_VALUE; + } + + int ret = dprintf(fd, "%s\n", result.c_str()); + if (ret < 0) { + DHLOGE("dprintf error"); + return DCAMERA_BAD_VALUE; + } + + return DCAMERA_OK; +} + +void DistributedCameraSourceService::GetDumpInfo(CameraDumpInfo& camDump) +{ + camDump.regNumber = camerasMap_.size(); + DHLOGI("camDump 111111"); + std::map curState; + std::map>::iterator it; + for (it = camerasMap_.begin(); it != camerasMap_.end(); it++) { + DCameraIndex cam = it->first; + std::shared_ptr camSourceDev = it->second; + camDump.version = camSourceDev->GetVersion(); + std::string deviceId = GetAnonyString(cam.devId_); + deviceId.append(cam.dhId_); + int32_t devState = camSourceDev->GetStateInfo(); + DHLOGI("camDump 111111 devState %d", devState); + curState[deviceId] = devState; + } + camDump.curState = curState; +} } // namespace DistributedHardware } // namespace OHOS diff --git a/services/cameraservice/sourceservice/src/distributedcameramgr/dcamera_source_dev.cpp b/services/cameraservice/sourceservice/src/distributedcameramgr/dcamera_source_dev.cpp index 80dd2552..369bc99c 100644 --- a/services/cameraservice/sourceservice/src/distributedcameramgr/dcamera_source_dev.cpp +++ b/services/cameraservice/sourceservice/src/distributedcameramgr/dcamera_source_dev.cpp @@ -549,5 +549,16 @@ void DCameraSourceDev::NotifyHalResult(DCAMERA_EVENT eventType, DCameraSourceEve ExecuteCameraEventNotify(events); return; } + +int32_t DCameraSourceDev::GetStateInfo() +{ + DHLOGE("GetStateInfo In state %d", stateMachine_->GetCameraState()); + return stateMachine_->GetCameraState(); +} + +std::string DCameraSourceDev::GetVersion() +{ + return version_; +} } // namespace DistributedHardware } // namespace OHOS diff --git a/services/cameraservice/sourceservice/src/distributedcameramgr/dcamerastate/dcamera_source_state_machine.cpp b/services/cameraservice/sourceservice/src/distributedcameramgr/dcamerastate/dcamera_source_state_machine.cpp index cb7b8a49..31c85104 100644 --- a/services/cameraservice/sourceservice/src/distributedcameramgr/dcamerastate/dcamera_source_state_machine.cpp +++ b/services/cameraservice/sourceservice/src/distributedcameramgr/dcamerastate/dcamera_source_state_machine.cpp @@ -59,5 +59,11 @@ void DCameraSourceStateMachine::UpdateState(DCameraStateType stateType) auto stateMachine = std::shared_ptr(shared_from_this()); currentState_ = DCameraSourceStateFactory::GetInstance().CreateState(stateType, stateMachine); } + +int32_t DCameraSourceStateMachine::GetCameraState() +{ + DHLOGI("GetCameraState In state %d", currentState_->GetStateType()); + return currentState_->GetStateType(); +} } // namespace DistributedHardware } // namespace OHOS -- Gitee From b41f658a1d6bd715cfee4031e74fb49ff9458624 Mon Sep 17 00:00:00 2001 From: chen0088 Date: Mon, 16 May 2022 17:29:59 +0800 Subject: [PATCH 2/7] =?UTF-8?q?=E6=B7=BB=E5=8A=A0dump?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: chen0088 --- .../sinkservice/src/distributedcamera/dcamera_sink_hidumper.cpp | 2 -- services/cameraservice/sourceservice/BUILD.gn | 2 +- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/services/cameraservice/sinkservice/src/distributedcamera/dcamera_sink_hidumper.cpp b/services/cameraservice/sinkservice/src/distributedcamera/dcamera_sink_hidumper.cpp index 16514061..04db0dfe 100644 --- a/services/cameraservice/sinkservice/src/distributedcamera/dcamera_sink_hidumper.cpp +++ b/services/cameraservice/sinkservice/src/distributedcamera/dcamera_sink_hidumper.cpp @@ -15,8 +15,6 @@ #include "dcamera_sink_hidumper.h" -#include - #include "distributed_camera_errno.h" #include "distributed_camera_sink_service.h" #include "distributed_hardware_log.h" diff --git a/services/cameraservice/sourceservice/BUILD.gn b/services/cameraservice/sourceservice/BUILD.gn index 444ae8fb..0558db77 100644 --- a/services/cameraservice/sourceservice/BUILD.gn +++ b/services/cameraservice/sourceservice/BUILD.gn @@ -60,9 +60,9 @@ ohos_shared_library("distributed_camera_source") { "${services_path}/cameraservice/base/src/dcamera_info_cmd.cpp", "${services_path}/cameraservice/base/src/dcamera_metadata_setting_cmd.cpp", "${services_path}/cameraservice/base/src/dcamera_open_info_cmd.cpp", - "src/distributedcamera/dcamera_source_hidumper.cpp", "src/distributedcamera/dcamera_service_state_listener.cpp", "src/distributedcamera/dcamera_source_callback_proxy.cpp", + "src/distributedcamera/dcamera_source_hidumper.cpp", "src/distributedcamera/distributed_camera_source_service.cpp", "src/distributedcamera/distributed_camera_source_stub.cpp", "src/distributedcameramgr/dcamera_source_dev.cpp", -- Gitee From da58e7c51717bdfe6448251c36de968f3141c9a4 Mon Sep 17 00:00:00 2001 From: chen0088 Date: Mon, 16 May 2022 19:10:57 +0800 Subject: [PATCH 3/7] =?UTF-8?q?=E6=B7=BB=E5=8A=A0dump?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: chen0088 --- .../src/distributedcamera/dcamera_sink_hidumper.cpp | 6 ++++-- .../src/distributedcamera/dcamera_source_hidumper.cpp | 6 ++++-- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/services/cameraservice/sinkservice/src/distributedcamera/dcamera_sink_hidumper.cpp b/services/cameraservice/sinkservice/src/distributedcamera/dcamera_sink_hidumper.cpp index 04db0dfe..9c9cf4a9 100644 --- a/services/cameraservice/sinkservice/src/distributedcamera/dcamera_sink_hidumper.cpp +++ b/services/cameraservice/sinkservice/src/distributedcamera/dcamera_sink_hidumper.cpp @@ -51,8 +51,10 @@ bool DcameraSinkHidumper::Dump(const std::vector& args, std::string DHLOGI("DcameraSinkHidumper Dump args[%d]: %s.", i, args.at(i).c_str()); } - int32_t ret = ProcessDump(args[0], result); - return ret; + if (ProcessDump(args[0], result) != DCAMERA_OK) { + return false; + } + return true; } int32_t DcameraSinkHidumper::ProcessDump(const std::string& args, std::string& result) diff --git a/services/cameraservice/sourceservice/src/distributedcamera/dcamera_source_hidumper.cpp b/services/cameraservice/sourceservice/src/distributedcamera/dcamera_source_hidumper.cpp index 4ef19a6b..7c10c0a9 100644 --- a/services/cameraservice/sourceservice/src/distributedcamera/dcamera_source_hidumper.cpp +++ b/services/cameraservice/sourceservice/src/distributedcamera/dcamera_source_hidumper.cpp @@ -66,8 +66,10 @@ bool DcameraSourceHidumper::Dump(const std::vector& args, std::stri DHLOGI("DcameraSourceHidumper Dump args[%d]: %s.", i, args.at(i).c_str()); } - int32_t ret = ProcessDump(args[0], result); - return ret; + if (ProcessDump(args[0], result) != DCAMERA_OK) { + return false; + } + return true; } int32_t DcameraSourceHidumper::ProcessDump(const std::string& args, std::string& result) -- Gitee From dd8986ab237ed7686a0fbd0270521b7f0af495df Mon Sep 17 00:00:00 2001 From: chen0088 Date: Tue, 17 May 2022 11:41:49 +0800 Subject: [PATCH 4/7] =?UTF-8?q?=E6=B7=BB=E5=8A=A0dump?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: chen0088 --- .../distributedcamera/dcamera_sink_hidumper.h | 2 +- .../distributed_camera_sink_service.h | 2 ++ .../include/distributedcameramgr/dcamera_sink_dev.h | 1 + .../src/distributedcamera/dcamera_sink_hidumper.cpp | 8 ++++++-- .../distributed_camera_sink_service.cpp | 13 ++++++++++++- .../src/distributedcameramgr/dcamera_sink_dev.cpp | 5 +++++ .../distributedcamera/dcamera_source_hidumper.cpp | 7 ++----- .../distributed_camera_source_service.cpp | 7 +------ 8 files changed, 30 insertions(+), 15 deletions(-) diff --git a/services/cameraservice/sinkservice/include/distributedcamera/dcamera_sink_hidumper.h b/services/cameraservice/sinkservice/include/distributedcamera/dcamera_sink_hidumper.h index 85c2cf09..0e05968b 100644 --- a/services/cameraservice/sinkservice/include/distributedcamera/dcamera_sink_hidumper.h +++ b/services/cameraservice/sinkservice/include/distributedcamera/dcamera_sink_hidumper.h @@ -36,7 +36,7 @@ enum class HidumpFlag { struct CameraDumpInfo { std::string version; int32_t camNumber; - std::string dhOpened; + std::vector camIds; }; class DcameraSinkHidumper { diff --git a/services/cameraservice/sinkservice/include/distributedcamera/distributed_camera_sink_service.h b/services/cameraservice/sinkservice/include/distributedcamera/distributed_camera_sink_service.h index 4dab073b..40f5d4db 100644 --- a/services/cameraservice/sinkservice/include/distributedcamera/distributed_camera_sink_service.h +++ b/services/cameraservice/sinkservice/include/distributedcamera/distributed_camera_sink_service.h @@ -52,11 +52,13 @@ protected: private: bool Init(); + void GetCamIds(); bool registerToService_ = false; DCameraServiceState state_ = DCameraServiceState::DCAMERA_SRV_STATE_NOT_START; std::string sinkVer_; std::map> camerasMap_; + static DistributedCameraSinkService* dcSinkService; }; } // namespace DistributedHardware } // namespace OHOS diff --git a/services/cameraservice/sinkservice/include/distributedcameramgr/dcamera_sink_dev.h b/services/cameraservice/sinkservice/include/distributedcameramgr/dcamera_sink_dev.h index 295e562e..79721f53 100644 --- a/services/cameraservice/sinkservice/include/distributedcameramgr/dcamera_sink_dev.h +++ b/services/cameraservice/sinkservice/include/distributedcameramgr/dcamera_sink_dev.h @@ -39,6 +39,7 @@ public: int32_t GetCameraInfo(std::string& cameraInfo); int32_t OpenChannel(std::string& openInfo); int32_t CloseChannel(); + std::string GetDhid(); private: bool isInit_; diff --git a/services/cameraservice/sinkservice/src/distributedcamera/dcamera_sink_hidumper.cpp b/services/cameraservice/sinkservice/src/distributedcamera/dcamera_sink_hidumper.cpp index 9c9cf4a9..d56a4e36 100644 --- a/services/cameraservice/sinkservice/src/distributedcamera/dcamera_sink_hidumper.cpp +++ b/services/cameraservice/sinkservice/src/distributedcamera/dcamera_sink_hidumper.cpp @@ -106,8 +106,12 @@ int32_t DcameraSinkHidumper::GetLocalCameraNumber(std::string& result) int32_t DcameraSinkHidumper::GetOpenedCameraInfo(std::string& result) { DHLOGI("GetOpenedCameraInfo Dump."); - result.append("OpenedCamera\n") - .append(camDumpInfo_.dhOpened); + result.append("OpenedCamera\n"); + std::vector camIds = camDumpInfo_.camIds; + for (int i = 0; i < camIds.size(); i++) { + result.append(camIds[i]); + result.append("\n"); + } return DCAMERA_OK; } diff --git a/services/cameraservice/sinkservice/src/distributedcamera/distributed_camera_sink_service.cpp b/services/cameraservice/sinkservice/src/distributedcamera/distributed_camera_sink_service.cpp index 274f101e..158bb04a 100644 --- a/services/cameraservice/sinkservice/src/distributedcamera/distributed_camera_sink_service.cpp +++ b/services/cameraservice/sinkservice/src/distributedcamera/distributed_camera_sink_service.cpp @@ -34,9 +34,11 @@ namespace DistributedHardware { REGISTER_SYSTEM_ABILITY_BY_ID(DistributedCameraSinkService, DISTRIBUTED_HARDWARE_CAMERA_SINK_SA_ID, true); static CameraDumpInfo g_camDump; +DistributedCameraSinkService* DistributedCameraSinkService::dcSinkService; DistributedCameraSinkService::DistributedCameraSinkService(int32_t saId, bool runOnCreate) : SystemAbility(saId, runOnCreate) { + dcSinkService = this; } void DistributedCameraSinkService::OnStart() @@ -191,7 +193,6 @@ int32_t DistributedCameraSinkService::ChannelNeg(const std::string& dhId, std::s return DCAMERA_NOT_FOUND; } - g_camDump.dhOpened = GetAnonyString(dhId); std::shared_ptr sinkDevice = iter->second; int32_t ret = sinkDevice->ChannelNeg(channelInfo); if (ret != DCAMERA_OK) { @@ -282,8 +283,18 @@ int DistributedCameraSinkService::Dump(int32_t fd, const std::vector camIds; + for (auto it = camerasMap_.begin(); it != camerasMap_.end(); it++) { + camIds.push_back(it->second->GetDhid()); + } + g_camDump.camIds = camIds; +} + void DistributedCameraSinkService::GetCamDumpInfo(CameraDumpInfo& camDump) { + dcSinkService->GetCamIds(); camDump = g_camDump; } } // namespace DistributedHardware diff --git a/services/cameraservice/sinkservice/src/distributedcameramgr/dcamera_sink_dev.cpp b/services/cameraservice/sinkservice/src/distributedcameramgr/dcamera_sink_dev.cpp index e9db8f9f..02e5a676 100644 --- a/services/cameraservice/sinkservice/src/distributedcameramgr/dcamera_sink_dev.cpp +++ b/services/cameraservice/sinkservice/src/distributedcameramgr/dcamera_sink_dev.cpp @@ -156,5 +156,10 @@ int32_t DCameraSinkDev::CloseChannel() DHLOGI("DCameraSinkDev::CloseChannel dhId: %s", GetAnonyString(dhId_).c_str()); return controller_->CloseChannel(); } + +std::string DCameraSinkDev::GetDhid() +{ + return GetAnonyString(dhId_); +} } // namespace DistributedHardware } // namespace OHOS \ No newline at end of file diff --git a/services/cameraservice/sourceservice/src/distributedcamera/dcamera_source_hidumper.cpp b/services/cameraservice/sourceservice/src/distributedcamera/dcamera_source_hidumper.cpp index 7c10c0a9..5fdb7639 100644 --- a/services/cameraservice/sourceservice/src/distributedcamera/dcamera_source_hidumper.cpp +++ b/services/cameraservice/sourceservice/src/distributedcamera/dcamera_source_hidumper.cpp @@ -15,8 +15,6 @@ #include "dcamera_source_hidumper.h" -#include - #include "distributed_camera_errno.h" #include "distributed_camera_source_service.h" #include "distributed_hardware_log.h" @@ -124,8 +122,7 @@ int32_t DcameraSourceHidumper::GetCurrentStateInfo(std::string& result) std::map devState = camDumpInfo_.curState; std::string deviceId; int32_t camState; - std::map::iterator it; - for (it = devState.begin(); it != devState.end(); it++) { + for (auto it = devState.begin(); it != devState.end(); it++) { deviceId = it->first; camState = it->second; } @@ -160,7 +157,7 @@ void DcameraSourceHidumper::ShowHelp(std::string& result) .append("dump camera version in the system\n") .append("--registered ") .append("dump number of registered cameras in the system\n") - .append("--currentState ") + .append("--curState ") .append("dump current state of the camera in the system\n"); } diff --git a/services/cameraservice/sourceservice/src/distributedcamera/distributed_camera_source_service.cpp b/services/cameraservice/sourceservice/src/distributedcamera/distributed_camera_source_service.cpp index b9e96578..93f1be29 100644 --- a/services/cameraservice/sourceservice/src/distributedcamera/distributed_camera_source_service.cpp +++ b/services/cameraservice/sourceservice/src/distributedcamera/distributed_camera_source_service.cpp @@ -15,8 +15,6 @@ #include "distributed_camera_source_service.h" -#include - #include "if_system_ability_manager.h" #include "ipc_skeleton.h" #include "ipc_types.h" @@ -226,17 +224,14 @@ int DistributedCameraSourceService::Dump(int32_t fd, const std::vector curState; - std::map>::iterator it; - for (it = camerasMap_.begin(); it != camerasMap_.end(); it++) { + for (auto it = camerasMap_.begin(); it != camerasMap_.end(); it++) { DCameraIndex cam = it->first; std::shared_ptr camSourceDev = it->second; camDump.version = camSourceDev->GetVersion(); std::string deviceId = GetAnonyString(cam.devId_); deviceId.append(cam.dhId_); int32_t devState = camSourceDev->GetStateInfo(); - DHLOGI("camDump 111111 devState %d", devState); curState[deviceId] = devState; } camDump.curState = curState; -- Gitee From 179419045363f41e17d3e977df9e0c26440cd754 Mon Sep 17 00:00:00 2001 From: chen0088 Date: Tue, 17 May 2022 14:43:38 +0800 Subject: [PATCH 5/7] =?UTF-8?q?=E6=B7=BB=E5=8A=A0dump?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: chen0088 --- .../src/distributedcamera/dcamera_sink_hidumper.cpp | 4 ++-- .../src/distributedcamera/dcamera_source_hidumper.cpp | 2 +- .../src/distributedcameramgr/dcamera_source_dev.cpp | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/services/cameraservice/sinkservice/src/distributedcamera/dcamera_sink_hidumper.cpp b/services/cameraservice/sinkservice/src/distributedcamera/dcamera_sink_hidumper.cpp index d56a4e36..3f61f31f 100644 --- a/services/cameraservice/sinkservice/src/distributedcamera/dcamera_sink_hidumper.cpp +++ b/services/cameraservice/sinkservice/src/distributedcamera/dcamera_sink_hidumper.cpp @@ -130,9 +130,9 @@ void DcameraSinkHidumper::ShowHelp(std::string& result) .append("Description:\n") .append("--version ") .append("dump camera version in the system\n") - .append("--camNum ") + .append("--camNum ") .append("dump local camera numbers in the system\n") - .append("--opened ") + .append("--opened ") .append("dump the opened camera in the system\n"); } diff --git a/services/cameraservice/sourceservice/src/distributedcamera/dcamera_source_hidumper.cpp b/services/cameraservice/sourceservice/src/distributedcamera/dcamera_source_hidumper.cpp index 5fdb7639..62b27c9c 100644 --- a/services/cameraservice/sourceservice/src/distributedcamera/dcamera_source_hidumper.cpp +++ b/services/cameraservice/sourceservice/src/distributedcamera/dcamera_source_hidumper.cpp @@ -157,7 +157,7 @@ void DcameraSourceHidumper::ShowHelp(std::string& result) .append("dump camera version in the system\n") .append("--registered ") .append("dump number of registered cameras in the system\n") - .append("--curState ") + .append("--curState ") .append("dump current state of the camera in the system\n"); } diff --git a/services/cameraservice/sourceservice/src/distributedcameramgr/dcamera_source_dev.cpp b/services/cameraservice/sourceservice/src/distributedcameramgr/dcamera_source_dev.cpp index 369bc99c..e9871137 100644 --- a/services/cameraservice/sourceservice/src/distributedcameramgr/dcamera_source_dev.cpp +++ b/services/cameraservice/sourceservice/src/distributedcameramgr/dcamera_source_dev.cpp @@ -552,7 +552,7 @@ void DCameraSourceDev::NotifyHalResult(DCAMERA_EVENT eventType, DCameraSourceEve int32_t DCameraSourceDev::GetStateInfo() { - DHLOGE("GetStateInfo In state %d", stateMachine_->GetCameraState()); + DHLOGI("GetStateInfo In state %d", stateMachine_->GetCameraState()); return stateMachine_->GetCameraState(); } -- Gitee From 925b8e27880acf50446b6457c0745663c5079792 Mon Sep 17 00:00:00 2001 From: chen0088 Date: Wed, 18 May 2022 16:05:18 +0800 Subject: [PATCH 6/7] =?UTF-8?q?=E6=B7=BB=E5=8A=A0dump?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: chen0088 --- .../src/distributedcamera/dcamera_sink_hidumper.cpp | 4 ++-- .../src/distributedcamera/dcamera_source_hidumper.cpp | 8 ++++---- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/services/cameraservice/sinkservice/src/distributedcamera/dcamera_sink_hidumper.cpp b/services/cameraservice/sinkservice/src/distributedcamera/dcamera_sink_hidumper.cpp index 3f61f31f..92bcddcd 100644 --- a/services/cameraservice/sinkservice/src/distributedcamera/dcamera_sink_hidumper.cpp +++ b/services/cameraservice/sinkservice/src/distributedcamera/dcamera_sink_hidumper.cpp @@ -47,7 +47,7 @@ bool DcameraSinkHidumper::Dump(const std::vector& args, std::string DHLOGI("DcameraSinkHidumper Dump args.size():%d.", args.size()); result.clear(); int32_t argsSize = static_cast(args.size()); - for (int i = 0; i < argsSize; i++) { + for (int32_t i = 0; i < argsSize; i++) { DHLOGI("DcameraSinkHidumper Dump args[%d]: %s.", i, args.at(i).c_str()); } @@ -108,7 +108,7 @@ int32_t DcameraSinkHidumper::GetOpenedCameraInfo(std::string& result) DHLOGI("GetOpenedCameraInfo Dump."); result.append("OpenedCamera\n"); std::vector camIds = camDumpInfo_.camIds; - for (int i = 0; i < camIds.size(); i++) { + for (size_t i = 0; i < camIds.size(); i++) { result.append(camIds[i]); result.append("\n"); } diff --git a/services/cameraservice/sourceservice/src/distributedcamera/dcamera_source_hidumper.cpp b/services/cameraservice/sourceservice/src/distributedcamera/dcamera_source_hidumper.cpp index 62b27c9c..c8de04ea 100644 --- a/services/cameraservice/sourceservice/src/distributedcamera/dcamera_source_hidumper.cpp +++ b/services/cameraservice/sourceservice/src/distributedcamera/dcamera_source_hidumper.cpp @@ -60,7 +60,7 @@ bool DcameraSourceHidumper::Dump(const std::vector& args, std::stri DHLOGI("DcameraSourceHidumper Dump args.size():%d.", args.size()); result.clear(); int32_t argsSize = static_cast(args.size()); - for (int i = 0; i < argsSize; i++) { + for (int32_t i = 0; i < argsSize; i++) { DHLOGI("DcameraSourceHidumper Dump args[%d]: %s.", i, args.at(i).c_str()); } @@ -120,15 +120,15 @@ int32_t DcameraSourceHidumper::GetCurrentStateInfo(std::string& result) { DHLOGI("GetCurrentStateInfo Dump."); std::map devState = camDumpInfo_.curState; - std::string deviceId; - int32_t camState; + std::string deviceId(""); + int32_t camState = 0; for (auto it = devState.begin(); it != devState.end(); it++) { deviceId = it->first; camState = it->second; } DHLOGI("GetCurrentStateInfo camState is %d.", camState); auto state = STATE_MAP.find(camState); - std::string curState; + std::string curState(""); if (state != STATE_MAP.end()) { curState = state->second; } -- Gitee From 0f4ebabc669109768029c717e96d08e4fb70e798 Mon Sep 17 00:00:00 2001 From: chen0088 Date: Wed, 18 May 2022 16:21:42 +0800 Subject: [PATCH 7/7] =?UTF-8?q?=E6=B7=BB=E5=8A=A0dump?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: chen0088 --- .../include/distributedcamera/dcamera_sink_hidumper.h | 2 +- .../src/distributedcamera/dcamera_sink_hidumper.cpp | 4 ++-- .../include/distributedcamera/dcamera_source_hidumper.h | 2 +- .../src/distributedcamera/dcamera_source_hidumper.cpp | 4 ++-- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/services/cameraservice/sinkservice/include/distributedcamera/dcamera_sink_hidumper.h b/services/cameraservice/sinkservice/include/distributedcamera/dcamera_sink_hidumper.h index 0e05968b..7622d9c9 100644 --- a/services/cameraservice/sinkservice/include/distributedcamera/dcamera_sink_hidumper.h +++ b/services/cameraservice/sinkservice/include/distributedcamera/dcamera_sink_hidumper.h @@ -26,7 +26,7 @@ namespace OHOS { namespace DistributedHardware { class DCameraSourceDev; enum class HidumpFlag { - UNKNOW = 0, + UNKNOWN = 0, GET_HELP, GET_CAMERA_INFO, GET_OPENED_INFO, diff --git a/services/cameraservice/sinkservice/src/distributedcamera/dcamera_sink_hidumper.cpp b/services/cameraservice/sinkservice/src/distributedcamera/dcamera_sink_hidumper.cpp index 92bcddcd..12006789 100644 --- a/services/cameraservice/sinkservice/src/distributedcamera/dcamera_sink_hidumper.cpp +++ b/services/cameraservice/sinkservice/src/distributedcamera/dcamera_sink_hidumper.cpp @@ -60,7 +60,7 @@ bool DcameraSinkHidumper::Dump(const std::vector& args, std::string int32_t DcameraSinkHidumper::ProcessDump(const std::string& args, std::string& result) { DHLOGI("ProcessDump Dump."); - HidumpFlag hf = HidumpFlag::UNKNOW; + HidumpFlag hf = HidumpFlag::UNKNOWN; auto operatorIter = ARGS_MAP.find(args); if (operatorIter != ARGS_MAP.end()) { hf = operatorIter->second; @@ -139,7 +139,7 @@ void DcameraSinkHidumper::ShowHelp(std::string& result) int32_t DcameraSinkHidumper::ShowIllegalInfomation(std::string& result) { DHLOGI("ShowIllegalInfomation Dump."); - result.append("unkown command"); + result.append("unknown command"); return DCAMERA_OK; } } // namespace DistributedHardware diff --git a/services/cameraservice/sourceservice/include/distributedcamera/dcamera_source_hidumper.h b/services/cameraservice/sourceservice/include/distributedcamera/dcamera_source_hidumper.h index 51c0b889..99e97e0b 100644 --- a/services/cameraservice/sourceservice/include/distributedcamera/dcamera_source_hidumper.h +++ b/services/cameraservice/sourceservice/include/distributedcamera/dcamera_source_hidumper.h @@ -26,7 +26,7 @@ namespace OHOS { namespace DistributedHardware { class DCameraSourceDev; enum class HidumpFlag { - UNKNOW = 0, + UNKNOWN = 0, GET_HELP, GET_REGISTERED_INFO, GET_CURRENTSTATE_INFO, diff --git a/services/cameraservice/sourceservice/src/distributedcamera/dcamera_source_hidumper.cpp b/services/cameraservice/sourceservice/src/distributedcamera/dcamera_source_hidumper.cpp index c8de04ea..991fb84a 100644 --- a/services/cameraservice/sourceservice/src/distributedcamera/dcamera_source_hidumper.cpp +++ b/services/cameraservice/sourceservice/src/distributedcamera/dcamera_source_hidumper.cpp @@ -73,7 +73,7 @@ bool DcameraSourceHidumper::Dump(const std::vector& args, std::stri int32_t DcameraSourceHidumper::ProcessDump(const std::string& args, std::string& result) { DHLOGI("ProcessDump Dump."); - HidumpFlag hf = HidumpFlag::UNKNOW; + HidumpFlag hf = HidumpFlag::UNKNOWN; auto operatorIter = ARGS_MAP.find(args); if (operatorIter != ARGS_MAP.end()) { hf = operatorIter->second; @@ -164,7 +164,7 @@ void DcameraSourceHidumper::ShowHelp(std::string& result) int32_t DcameraSourceHidumper::ShowIllegalInfomation(std::string& result) { DHLOGI("ShowIllegalInfomation Dump."); - result.append("unkown command"); + result.append("unknown command"); return DCAMERA_OK; } } // namespace DistributedHardware -- Gitee