Skip to main content

Common Fluids Format 2024 R1

MetadataConst

Last update: 16.07.2025
1#ifndef CFFSDK_PROJECT_METADATACONST_H
2#define CFFSDK_PROJECT_METADATACONST_H
3
4// MetadataConst
5// proxy object for read-only distribution of the content of the
6// Metadata container.
7//
8// the object can also be appended to store the inherited metadata
9// properties of parent items.
10//
11#include "Project/LibraryType.hpp"
12#include "Project/Iterator.hpp"
13#include <string>
14#include <map>
15#include <set>
16#include <vector>
17
18namespace ansys {
19namespace Project {
20
21class Metadata;
22
23class ANSYS_PROJECT_DLL MetadataConst {
24public:
26 MetadataConst(const Metadata& pObj);
27
28 // Common functions
29 bool hasKey(const std::string) const;
30 bool removeKey(const std::string);
31 std::string getValue(const std::string) const;
32 std::vector<std::string> getValueVector(const std::string) const;
33 int getValueInt(const std::string) const;
34 double getValueDouble(const std::string) const;
35
36 std::vector<std::string> getKeys() const;
37
38 bool isInherited(const std::string) const;
39 void addInheritedValues(const Metadata& pObj);
40 void addHiddenPrefix(const std::string& pPrefix);
41 void addValue(const std::string& pVar, const std::string& pVal);
42
43private:
44
45 std::map<std::string,std::string> aIdxString;
46 std::map<std::string,int> aIdxInt;
47 std::map<std::string,double> aIdxDouble;
48
49 std::set<std::string> aInheritedKeys;
50 std::vector<std::string> aHiddenPrefixes;
51};
52
53}
54}
55
56#endif // CFFSDK_PROJECT_METADATACONST_H
Constant (read-only) value of Metadata.
Definition: MetadataConst.hpp:23
Dictionary of values associated with an Iterator.
Definition: Metadata.hpp:19
Definition: API.dox:1

Connect with Ansys