DUNE-DAQ
DUNE Trigger and Data Acquisition software
Loading...
Searching...
No Matches
treenode.hpp
Go to the documentation of this file.
1// DUNE DAQ modification notice:
2// This file has been modified from the original ATLAS dbe source for the DUNE DAQ project.
3// Fork baseline commit: dbe-02-12-17 (2022-05-12).
4// Renamed since fork: yes (from dbe/treenode.h to include/dbe/treenode.hpp).
5
6#ifndef NODE_H
7#define NODE_H
8
10
13#include "conffwk/Schema.hpp"
14#include "dbe/datahandler.hpp"
15
16namespace dbe {
17
19{
20public:
21 treenode(treenode* ParentNode = nullptr);
22 treenode(QString const& Datum, treenode* ParentNode = nullptr);
23 treenode(QStringList const& DataList, treenode* ParentNode = nullptr);
24
25 virtual ~treenode();
26
27 virtual QVariant GetData(const int Column, int role = Qt::DisplayRole) const;
28
29 virtual tref GetObject() const;
30
31 int GetRow() const;
32
33 virtual void AddChild(treenode* Child);
34
35 virtual void RemoveChild(treenode* Child);
36
37 treenode* GetChild(const int Row) const;
38
39 QList<treenode*> GetChildren() const;
40
41 treenode* GetParent() const;
42
43 int ChildCount() const;
44 int ColumnCount() const;
45
46 void SetHasStructure(bool Structure);
47 bool GetHasStructure() const;
48 void SetWasFetched(bool Fetched);
49 bool GetWasFetched() const;
50
51 void rename(QString const&);
52
53protected:
55 QList<treenode*> Children;
56 QList<QVariant> Data;
59};
60
61class ClassNode : public treenode
62{
63public:
64 ClassNode(const dunedaq::conffwk::class_t& Info, treenode* ParentNode);
65 ~ClassNode();
66 [[nodiscard]] virtual QVariant GetData(int Column, int role = Qt::DisplayRole) const;
67 [[nodiscard]] dunedaq::conffwk::class_t GetClassInfo() const;
68 [[nodiscard]] const QVariant& get_tooltip() const { return m_tooltip; };
69 void AddChild(treenode* Child) override;
70 void RemoveChild(treenode* Child) override;
71
72protected:
73 void updateData(bool addition);
74
75private:
77 unsigned int numObjects;
78 QVariant m_tooltip;
79};
80
81class ObjectNode : public treenode
82{
83public:
84 ObjectNode(dref ObjectData, bool IsCopy, treenode* ParentNode);
86 virtual QVariant GetData(const int Column, int role = Qt::DisplayRole) const;
87 tref GetObject() const;
88
89private:
91};
92
93class AttributeNode : public treenode
94{
95public:
96 AttributeNode(const dunedaq::conffwk::attribute_t& AttributeData, treenode* ParentNode);
98 virtual QVariant GetData(const int Column, int role = Qt::DisplayRole) const;
100
101private:
103};
104
106{
107public:
108 RelationshipNode(const dunedaq::conffwk::relationship_t& RelationshipData, treenode* ParentNode);
110 virtual QVariant GetData(const int Column, int role = Qt::DisplayRole) const;
112
113private:
115};
116
117} // namespace dbe
118#endif // NODE_H
virtual QVariant GetData(const int Column, int role=Qt::DisplayRole) const
Definition treenode.cpp:308
dunedaq::conffwk::attribute_t attribute_t() const
Definition treenode.cpp:326
AttributeNode(const dunedaq::conffwk::attribute_t &AttributeData, treenode *ParentNode)
Definition treenode.cpp:281
dunedaq::conffwk::attribute_t attribute_t_definition
Definition treenode.hpp:102
void AddChild(treenode *Child) override
Definition treenode.cpp:186
unsigned int numObjects
Definition treenode.hpp:77
dunedaq::conffwk::class_t GetClassInfo() const
Definition treenode.cpp:223
void updateData(bool addition)
Definition treenode.cpp:170
virtual QVariant GetData(int Column, int role=Qt::DisplayRole) const
Definition treenode.cpp:200
QVariant m_tooltip
Definition treenode.hpp:78
void RemoveChild(treenode *Child) override
Definition treenode.cpp:193
dunedaq::conffwk::class_t ClassInfo
Definition treenode.hpp:76
const QVariant & get_tooltip() const
Definition treenode.hpp:68
ClassNode(const dunedaq::conffwk::class_t &Info, treenode *ParentNode)
Definition treenode.cpp:157
ObjectNode(dref ObjectData, bool IsCopy, treenode *ParentNode)
Definition treenode.cpp:228
tref GetObject() const
Definition treenode.cpp:276
virtual QVariant GetData(const int Column, int role=Qt::DisplayRole) const
Definition treenode.cpp:257
virtual QVariant GetData(const int Column, int role=Qt::DisplayRole) const
Definition treenode.cpp:366
dunedaq::conffwk::relationship_t relation_t_definition
Definition treenode.hpp:114
dunedaq::conffwk::relationship_t relation_t() const
Definition treenode.cpp:384
RelationshipNode(const dunedaq::conffwk::relationship_t &RelationshipData, treenode *ParentNode)
Definition treenode.cpp:331
QList< treenode * > Children
Definition treenode.hpp:55
int ColumnCount() const
Definition treenode.cpp:128
treenode * GetParent() const
Definition treenode.cpp:116
virtual void RemoveChild(treenode *Child)
Definition treenode.cpp:98
void rename(QString const &)
Definition treenode.cpp:70
void SetHasStructure(bool Structure)
Definition treenode.cpp:134
bool GetHasStructure() const
Definition treenode.cpp:140
virtual tref GetObject() const
Definition treenode.cpp:76
treenode(treenode *ParentNode=nullptr)
Including QT Headers.
Definition treenode.cpp:29
QList< treenode * > GetChildren() const
Definition treenode.cpp:110
treenode * GetChild(const int Row) const
Definition treenode.cpp:104
int ChildCount() const
Definition treenode.cpp:122
virtual void AddChild(treenode *Child)
Definition treenode.cpp:92
treenode * Parent
Definition treenode.hpp:54
bool GetWasFetched() const
Definition treenode.cpp:152
virtual QVariant GetData(const int Column, int role=Qt::DisplayRole) const
Definition treenode.cpp:60
bool HasStructure
Definition treenode.hpp:57
void SetWasFetched(bool Fetched)
Definition treenode.cpp:146
int GetRow() const
Definition treenode.cpp:82
QList< QVariant > Data
Definition treenode.hpp:56
conffwk entry point
Include QT Headers.
inner::configobject::tref tref
Definition tref.hpp:36
config_object_description dref