From f40be14f12f65b0ca30d7bfa2eb5fa9024f4d8e1 Mon Sep 17 00:00:00 2001 From: hui1975 Date: Wed, 23 Aug 2023 03:24:10 +0000 Subject: [PATCH] =?UTF-8?q?hidumnper=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: hui1975 Change-Id: Ibd71ff577856ac311afe6de231758ef601137115 --- interfaces/native/include/sensor_agent_type.h | 15 +++++++++++++++ services/sensor/src/sensor_dump.cpp | 11 +++++++++-- 2 files changed, 24 insertions(+), 2 deletions(-) diff --git a/interfaces/native/include/sensor_agent_type.h b/interfaces/native/include/sensor_agent_type.h index cb8113c2..18cb1ee2 100644 --- a/interfaces/native/include/sensor_agent_type.h +++ b/interfaces/native/include/sensor_agent_type.h @@ -405,6 +405,21 @@ typedef struct WearDetectionData { float value; } WearDetectionData; +/** + * @brief 定义颜色传感器数据结构。测量光强,单位勒克斯;色温,单位开尔文。 + */ +typedef struct ColorData { + float lightIntensity; + float colorTemperature; +} ColorData; + +/** + * @brief 定义比吸收率传感器数据结构。测量比吸收率,单位W/kg。 + */ +typedef struct SarData { + float absorptionRatio; +} SarData; + typedef struct SensorActiveInfo { int32_t pid = -1; /**< PID */ int32_t sensorId = -1; /**< Sensor ID */ diff --git a/services/sensor/src/sensor_dump.cpp b/services/sensor/src/sensor_dump.cpp index 4dbda6f8..51c26f10 100644 --- a/services/sensor/src/sensor_dump.cpp +++ b/services/sensor/src/sensor_dump.cpp @@ -37,10 +37,12 @@ constexpr uint32_t MS_NS = 1000000; enum { SOLITARIES_DIMENSION = 1, + TWO_DIMENSION = 2, COMMON_DIMENSION = 3, VECTOR_DIMENSION = 4, - POSE_6DOF_DIMENSION = 15, UNCALIBRATED_DIMENSION = 6, + SEVEN_DIMENSION = 7, + POSE_6DOF_DIMENSION = 15, DEFAULT_DIMENSION = 16, }; } // namespace @@ -73,6 +75,8 @@ std::unordered_map SensorDump::sensorMap_ = { { SENSOR_TYPE_ID_HALL, "HALL" }, { SENSOR_TYPE_ID_HEART_RATE, "HEART RATE" }, { SENSOR_TYPE_ID_WEAR_DETECTION, "WEAR DETECTION" }, + { SENSOR_TYPE_ID_COLOR, "COLOR" }, + { SENSOR_TYPE_ID_SAR, "SAR" }, }; void SensorDump::ParseCommand(int32_t fd, const std::vector &args, const std::vector &sensors, @@ -277,7 +281,10 @@ int32_t SensorDump::GetDataDimension(int32_t sensorId) case SENSOR_TYPE_ID_PEDOMETER: case SENSOR_TYPE_ID_HEART_RATE: case SENSOR_TYPE_ID_WEAR_DETECTION: + case SENSOR_TYPE_ID_SAR: return SOLITARIES_DIMENSION; + case SENSOR_TYPE_ID_COLOR: + return TWO_DIMENSION; case SENSOR_TYPE_ID_ROTATION_VECTOR: return VECTOR_DIMENSION; case SENSOR_TYPE_ID_MAGNETIC_FIELD_UNCALIBRATED: @@ -285,7 +292,7 @@ int32_t SensorDump::GetDataDimension(int32_t sensorId) case SENSOR_TYPE_ID_ACCELEROMETER_UNCALIBRATED: return UNCALIBRATED_DIMENSION; default: - SEN_HILOGW("sensorId:%{public}u, size:%{public}d", sensorId, COMMON_DIMENSION); + SEN_HILOGW("Unknown sensorId:%{public}d, size:%{public}d", sensorId, COMMON_DIMENSION); return COMMON_DIMENSION; } } -- Gitee