A device detection library that is used natively or by 51Degrees products

EntityMetaData.hpp

1/* *********************************************************************
2 * This Original Work is copyright of 51 Degrees Mobile Experts Limited.
3 * Copyright 2026 51 Degrees Mobile Experts Limited, Davidson House,
4 * Forbury Square, Reading, Berkshire, United Kingdom RG1 3EU.
5 *
6 * This Original Work is licensed under the European Union Public Licence
7 * (EUPL) v.1.2 and is subject to its terms as set out below.
8 *
9 * If a copy of the EUPL was not distributed with this file, You can obtain
10 * one at https://opensource.org/licenses/EUPL-1.2.
11 *
12 * The 'Compatible Licences' set out in the Appendix to the EUPL (as may be
13 * amended by the European Commission) shall be deemed incompatible for
14 * the purposes of the Work and the provisions of the compatibility
15 * clause in Article 5 of the EUPL shall not apply.
16 *
17 * If using the Work as, or as part of, a network application, by
18 * including the attribution notice(s) required under Article 5 of the EUPL
19 * in the end user terms of the application under an appropriate heading,
20 * such notice(s) shall fulfill the requirements of that article.
21 * ********************************************************************* */
22
23#ifndef FIFTYONE_DEGREES_ENTITY_META_DATA_HPP
24#define FIFTYONE_DEGREES_ENTITY_META_DATA_HPP
25
26#include <string>
27#include <vector>
28#include "data.h"
29
30using std::vector;
31using std::string;
32
33namespace FiftyoneDegrees {
34 namespace Common {
35 FIFTYONE_DEGREES_COMMON_CXX_BEGIN
47 template <class K> class EntityMetaData {
48 public:
53
58 EntityMetaData(K key) { this->key = key; }
59
65
70 K getKey() const { return key; }
71
77
83 const bool operator== (const EntityMetaData<K> other) const {
84 return other.key == key;
85 }
86
93 const bool operator!= (const EntityMetaData<K> other) const {
94 return !(other.key == key);
95 }
96
100 private:
102 K key;
103 };
104 FIFTYONE_DEGREES_COMMON_CXX_END
105 }
106}
107
108#endif
const bool operator!=(const EntityMetaData< K > other) const
Returns true is the two entities do not share the same unique key.
Definition EntityMetaData.hpp:93
const bool operator==(const EntityMetaData< K > other) const
Returns true is the two entities share the same unique key.
Definition EntityMetaData.hpp:83
K getKey() const
Get the unique key for this entity instance.
Definition EntityMetaData.hpp:70
EntityMetaData(K key)
Construct a new instance with the key provided.
Definition EntityMetaData.hpp:58
Shared classes.
Definition Collection.hpp:31
A C++ wrapper class for transform.h conversion routines.
Definition ComponentMetaDataBuilderHash.hpp:33