Blender  V3.3
ExtraTags.h
Go to the documentation of this file.
1 /* SPDX-License-Identifier: GPL-2.0-or-later */
2 
7 #pragma once
8 
9 #include <map>
10 #include <string>
11 #include <vector>
12 
15 class ExtraTags {
16  public:
18  ExtraTags(const std::string profile);
19 
21  virtual ~ExtraTags();
22 
24  bool addTag(std::string tag, std::string data);
25 
27  bool setData(std::string tag, short *data);
28 
30  bool setData(std::string tag, int *data);
31 
33  bool setData(std::string tag, float *data);
34 
36  bool setData(std::string tag, char *data);
37  std::string setData(std::string tag, std::string &data);
38 
40  bool isProfile(std::string profile);
41 
42  private:
44  ExtraTags(const ExtraTags &pre);
46  const ExtraTags &operator=(const ExtraTags &pre);
47 
49  std::string profile;
50 
52  std::map<std::string, std::string> tags;
53 
55  int asInt(std::string tag, bool *ok);
57  float asFloat(std::string tag, bool *ok);
59  std::string asString(std::string tag, bool *ok);
60 };
Class for saving <extra> tags for a specific UniqueId.
Definition: ExtraTags.h:15
ExtraTags(const std::string profile)
Definition: ExtraTags.cpp:15
virtual ~ExtraTags()
bool isProfile(std::string profile)
Definition: ExtraTags.cpp:23
bool setData(std::string tag, short *data)
Definition: ExtraTags.cpp:65
bool addTag(std::string tag, std::string data)
Definition: ExtraTags.cpp:28