From 5e4901e79950a94eae5084840c514ec61239e4b0 Mon Sep 17 00:00:00 2001 From: zhanglei Date: Wed, 12 Feb 2025 18:15:44 +0800 Subject: [PATCH] =?UTF-8?q?=E8=87=AA=E5=8A=A8=E4=BA=91=E5=A2=9E=E5=BC=BA?= =?UTF-8?q?=E5=8A=9F=E8=83=BD=E6=96=B0=E5=A2=9E=E6=94=AF=E6=8C=81=20uint32?= =?UTF-8?q?=5Ft=20=E7=B1=BB=E5=9E=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: zhanglei --- .../map_data/map_data_sequenceable.cpp | 21 +++++++++++++++++++ .../map_data/map_data_sequenceable.h | 3 +++ 2 files changed, 24 insertions(+) diff --git a/camera/sequenceable/map_data/map_data_sequenceable.cpp b/camera/sequenceable/map_data/map_data_sequenceable.cpp index 72ca9848..16b38713 100644 --- a/camera/sequenceable/map_data/map_data_sequenceable.cpp +++ b/camera/sequenceable/map_data/map_data_sequenceable.cpp @@ -73,6 +73,10 @@ sptr MapDataSequenceable::Unmarshalling(Parcel &parcel) ret = sequenceData->Set(key, type, parcel.ReadString()); break; } + case MapDataType::U32: { + ret = sequenceData->Set(key, type, parcel.ReadUint32()); + break; + } default: break; } @@ -122,6 +126,13 @@ bool MapDataSequenceable::Marshalling(Parcel &parcel) const dataParcel.WriteString(string); break; } + case MapDataType::U32: { + uint32_t u32 = 0; + auto pVal = std::any_cast(&data.val); + SET_DATA_FROM_POINTER(u32, pVal); + dataParcel.WriteUint32(u32); + break; + } default: break; } @@ -134,6 +145,11 @@ int32_t MapDataSequenceable::Get(const std::string &key, int32_t &value) const return Get(key, MapDataType::I32, value); } +int32_t MapDataSequenceable::Get(const std::string &key, uint32_t &value) const +{ + return Get(key, MapDataType::U32, value); +} + int32_t MapDataSequenceable::Get(const std::string &key, int64_t &value) const { return Get(key, MapDataType::I64, value); @@ -154,6 +170,11 @@ int32_t MapDataSequenceable::Set(const std::string &key, int32_t value) return Set(key, MapDataType::I32, value); } +int32_t MapDataSequenceable::Set(const std::string &key, uint32_t value) +{ + return Set(key, MapDataType::U32, value); +} + int32_t MapDataSequenceable::Set(const std::string &key, int64_t value) { return Set(key, MapDataType::I64, value); diff --git a/camera/sequenceable/map_data/map_data_sequenceable.h b/camera/sequenceable/map_data/map_data_sequenceable.h index 1f629678..2a4998a4 100644 --- a/camera/sequenceable/map_data/map_data_sequenceable.h +++ b/camera/sequenceable/map_data/map_data_sequenceable.h @@ -36,10 +36,12 @@ public: virtual ~MapDataSequenceable() = default; int32_t Get(const std::string &key, int32_t &value) const; + int32_t Get(const std::string &key, uint32_t &value) const; int32_t Get(const std::string &key, int64_t &value) const; int32_t Get(const std::string &key, double &value) const; int32_t Get(const std::string &key, std::string &value) const; int32_t Set(const std::string &key, int32_t value); + int32_t Set(const std::string &key, uint32_t value); int32_t Set(const std::string &key, int64_t value); int32_t Set(const std::string &key, double value); int32_t Set(const std::string &key, const std::string& value); @@ -54,6 +56,7 @@ private: I64, F64, STRING, + U32, }; template int32_t Get(const std::string &key, MapDataType type, T &value) const; -- Gitee