Kactus2
Kactus2 reference guide
Loading...
Searching...
No Matches
TagManager.h
Go to the documentation of this file.
1//-----------------------------------------------------------------------------
2// File: TagManager.h
3//-----------------------------------------------------------------------------
4// Project: Kactus 2
5// Author: Mikko Teuho
6// Date: 27.08.2019
7//
8// Description:
9// Manager for loaded tags.
10//-----------------------------------------------------------------------------
11
12#ifndef TAGMANAGER_H
13#define TAGMANAGER_H
14
15#include <IPXACTmodels/common/TagData.h>
16
17#include <KactusAPI/KactusAPIGlobal.h>
18
19#include <QVector>
20
21//-----------------------------------------------------------------------------
23//-----------------------------------------------------------------------------
24class KACTUS2_API TagManager
25{
26public:
27
31 ~TagManager() = default;
32
38 void addNewTags(QVector<TagData> newTags);
39
45 void setTags(QVector<TagData> newTags);
46
52 QVector<TagData> getTags() const;
53
57 void clearTags();
58
64 static TagManager& getInstance();
65
66private:
67 // Disable copying.
68 TagManager(TagManager const& rhs);
69 TagManager& operator=(TagManager const& rhs);
70
74 TagManager();
75
83 bool tagExists(TagData const& tag) const;
84
85 //-----------------------------------------------------------------------------
86 // Data.
87 //-----------------------------------------------------------------------------
88
90 QVector<TagData> tags_;
91};
92
93//-----------------------------------------------------------------------------
94
95#endif // TAGMANAGER_H
void setTags(QVector< TagData > newTags)
void addNewTags(QVector< TagData > newTags)
void clearTags()
static TagManager & getInstance()
QVector< TagData > getTags() const
~TagManager()=default