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

ComponentMetaData.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_COMPONENT_META_DATA_HPP
24#define FIFTYONE_DEGREES_COMPONENT_META_DATA_HPP
25
26#include <string>
27#include "EntityMetaData.hpp"
28
29
30namespace FiftyoneDegrees {
31 namespace Common {
32 FIFTYONE_DEGREES_COMMON_CXX_BEGIN
37 class ComponentMetaData : public EntityMetaData<byte> {
38 public:
43
49
57
67 byte componentId,
68 string name,
69 uint32_t defaultProfileId);
70
76
82
87 byte getComponentId() const;
88
93 string getName() const;
94
99 uint32_t getDefaultProfileId() const;
100
104 private:
106 string name;
107
109 uint32_t defaultProfileId;
110 };
111 FIFTYONE_DEGREES_COMMON_CXX_END
112 }
113}
114
115#endif
uint32_t getDefaultProfileId() const
Get the unique id for the default profile for this component.
ComponentMetaData(ComponentMetaData *component)
Construct a new instance of ComponentMetaData from an existing instance.
string getName() const
Get the name of the component.
int getComponentIdAsInt() const
Get the unique if of the component as an integer.
ComponentMetaData(byte componentId, string name, uint32_t defaultProfileId)
Construct a new instance of ComponentMetaData.
byte getComponentId() const
Get the unique id of the component.
ComponentMetaData()
Default constructor, should not be used externally as it produces an invalid instance.
EntityMetaData(byte key)
Definition EntityMetaData.hpp:58
Shared classes.
Definition Collection.hpp:31
A C++ wrapper class for transform.h conversion routines.
Definition ComponentMetaDataBuilderHash.hpp:33