LeviLamina
Loading...
Searching...
No Matches
TagRegistry.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4#include "mc/deps/core/string/HashedString.h"
5#include "mc/util/IDType.h"
6#include "mc/util/IndexSet.h"
7
8template <typename TagID, typename TagSetID>
10public:
11 std::unordered_map<HashedString, uint64> mTagIndexMap;
12 std::vector<std::string> mTags;
13 std::vector<IndexSet> mSets;
14 TagSetID mEmptyTagSet;
15
16 MCAPI TagID tryGetTagID(const std::string&) const;
17 MCAPI std::vector<std::string> const getTagsInSet(TagSetID);
18 MCAPI TagSetID removeTagFromSet(const TagID, TagSetID&);
19 MCAPI TagSetID addTagToSet(const TagID, TagSetID&);
20 MCAPI TagID acquireTag(const std::string&);
21 MCAPI TagSetID getTagSetID(const IndexSet&);
22 MCAPI TagSetID getTagSetID(const std::vector<TagID>&);
23};
Definition IndexSet.h:5
Definition TagRegistry.h:9