mirror of
https://github.com/openharmony/distributed_camera.git
synced 2026-07-20 19:57:22 -04:00
+1
-1
@@ -36,7 +36,7 @@ enum class HidumpFlag {
|
||||
struct CameraDumpInfo {
|
||||
std::string version;
|
||||
int32_t camNumber;
|
||||
std::string dhOpened;
|
||||
std::vector<std::string> camIds;
|
||||
};
|
||||
|
||||
class DcameraSinkHidumper {
|
||||
|
||||
+2
@@ -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<std::string, std::shared_ptr<DCameraSinkDev>> camerasMap_;
|
||||
static DistributedCameraSinkService* dcSinkService;
|
||||
};
|
||||
} // namespace DistributedHardware
|
||||
} // namespace OHOS
|
||||
|
||||
@@ -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_;
|
||||
|
||||
@@ -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<std::string> camIds = camDumpInfo_.camIds;
|
||||
for (int i = 0; i < camIds.size(); i++) {
|
||||
result.append(camIds[i]);
|
||||
result.append("\n");
|
||||
}
|
||||
return DCAMERA_OK;
|
||||
}
|
||||
|
||||
|
||||
+12
-1
@@ -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<DCameraSinkDev> 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<std::u16str
|
||||
return DCAMERA_OK;
|
||||
}
|
||||
|
||||
void DistributedCameraSinkService::GetCamIds()
|
||||
{
|
||||
std::vector<std::string> 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
|
||||
|
||||
@@ -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
|
||||
+2
-5
@@ -15,8 +15,6 @@
|
||||
|
||||
#include "dcamera_source_hidumper.h"
|
||||
|
||||
#include <iterator>
|
||||
|
||||
#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<std::string, int32_t> devState = camDumpInfo_.curState;
|
||||
std::string deviceId;
|
||||
int32_t camState;
|
||||
std::map<std::string, int32_t>::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");
|
||||
}
|
||||
|
||||
|
||||
+1
-6
@@ -15,8 +15,6 @@
|
||||
|
||||
#include "distributed_camera_source_service.h"
|
||||
|
||||
#include <iterator>
|
||||
|
||||
#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<std::u16s
|
||||
void DistributedCameraSourceService::GetDumpInfo(CameraDumpInfo& camDump)
|
||||
{
|
||||
camDump.regNumber = camerasMap_.size();
|
||||
DHLOGI("camDump 111111");
|
||||
std::map<std::string, int32_t> curState;
|
||||
std::map<DCameraIndex, std::shared_ptr<DCameraSourceDev>>::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<DCameraSourceDev> 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;
|
||||
|
||||
Reference in New Issue
Block a user