ADTF
Loading...
Searching...
No Matches
hashedvaluemap_intf.h
Go to the documentation of this file.
1
7#pragma once
8#include "rawmemory_intf.h"
9#include "property_intf.h"
10
11namespace adtf
12{
13namespace base
14{
15namespace ant
16{
21{
22 protected:
25
26 public:
29 enum tType : uint8_t
30 {
32 HVT_Invalid = adtf::util::tVariantType::VT_Empty,
34 HVT_Bool = adtf::util::tVariantType::VT_Bool,
36 HVT_Int8 = adtf::util::tVariantType::VT_Int8,
38 HVT_UInt8 = adtf::util::tVariantType::VT_UInt8,
40 HVT_Int16 = adtf::util::tVariantType::VT_Int16,
42 HVT_UInt16 = adtf::util::tVariantType::VT_UInt16,
44 HVT_Int32 = adtf::util::tVariantType::VT_Int32,
46 HVT_UInt32 = adtf::util::tVariantType::VT_UInt32,
48 HVT_Float32 = adtf::util::tVariantType::VT_Float32,
50 HVT_Float64 = adtf::util::tVariantType::VT_Float64,
52 HVT_Int64 = adtf::util::tVariantType::VT_Int64,
54 HVT_UInt64 = adtf::util::tVariantType::VT_UInt64
55 };
56
61 virtual tType GetType() const = 0;
69 virtual tResult Set(const IHashValueMapValue& oValue) = 0;
70};
71
80{
81 protected:
83 virtual ~IHashValueMap() = default;
84
85 public:
87 using tHashKey = adtf::util::cStringUtil::tHashKey32;
88
89 public:
96 virtual bool Exists(const tHashKey& oKey) const = 0;
105 virtual tResult Get(IHashValueMap& oHashMap) const = 0;
117 virtual tResult GetValue(const tHashKey& oHashKey, IHashValueMapValue& oValue) const = 0;
128 virtual tResult SetValue(const tHashKey& oHashKey, const IHashValueMapValue& oValue) = 0;
129
135 virtual bool IsEmpty() const = 0;
136
140 virtual void Reset() = 0;
141
146 virtual uint8_t GetRawMemoryLayoutVersion() const = 0;
147
148};
149
150
151} //namespace ant
152using IHashValueMap = ant::IHashValueMap;
153} //namespace base
154} // namespace adtf
A_UTILS_NS::cResult tResult
For backwards compatibility and to bring latest version into scope.
Definition result.h:736
Definition hashedvaluemap_intf.h:21
~IHashValueMapValue()=default
protected DTOR
tType
Definition hashedvaluemap_intf.h:30
@ HVT_UInt8
uint8 type - uint8_t
Definition hashedvaluemap_intf.h:38
@ HVT_UInt32
uint32 type - uint32_t
Definition hashedvaluemap_intf.h:46
@ HVT_Float32
float type - float
Definition hashedvaluemap_intf.h:48
@ HVT_Float64
double type - double
Definition hashedvaluemap_intf.h:50
@ HVT_Bool
bool type - bool
Definition hashedvaluemap_intf.h:34
@ HVT_Invalid
Invalid type.
Definition hashedvaluemap_intf.h:32
@ HVT_Int64
int64 type - int64_t (tTimeStamp)
Definition hashedvaluemap_intf.h:52
@ HVT_UInt64
uint64 type - uint64_t
Definition hashedvaluemap_intf.h:54
@ HVT_Int32
int32 type - int32_t
Definition hashedvaluemap_intf.h:44
@ HVT_Int8
int8 type - int8_t
Definition hashedvaluemap_intf.h:36
@ HVT_Int16
int16 type - int16_t
Definition hashedvaluemap_intf.h:40
@ HVT_UInt16
uint16 type - uint16_t
Definition hashedvaluemap_intf.h:42
virtual tType GetType() const =0
virtual tResult Set(const IHashValueMapValue &oValue)=0
Definition hashedvaluemap_intf.h:80
virtual bool Exists(const tHashKey &oKey) const =0
virtual tResult GetValue(const tHashKey &oHashKey, IHashValueMapValue &oValue) const =0
virtual uint8_t GetRawMemoryLayoutVersion() const =0
virtual tResult Get(IHashValueMap &oHashMap) const =0
adtf::util::cStringUtil::tHashKey32 tHashKey
Type for the HashKey of the Value.
Definition hashedvaluemap_intf.h:87
virtual tResult SetValue(const tHashKey &oHashKey, const IHashValueMapValue &oValue)=0
virtual ~IHashValueMap()=default
protected DTOR
virtual bool IsEmpty() const =0
Definition property_intf.h:26
Namespace for all functionality of the ADTF Base SDK provided since v3.0.
Definition adtf_class_version.h:16
Namespace for the ADTF Base SDK.
Definition adtf_base_type_traits.h:13
Namespace for all functionality provided by ADTF and its SDKs.
Definition adtf_client_connector.h:14