TreeDataVisitor.h
Go to the documentation of this file.
1#pragma once
2
3#include <sstream>
4#include <stack>
5
6#include <QLabel>
7#include <QTreeWidget>
8
11
13{
14
18 {
19 public:
21
22 void
24 {
25 const std::string key = n->getPath().getLastElement();
26 _visitEnter(key, "Dict", n->childrenSize());
27 }
28
29 void
31 {
32 _visitExit();
33 }
34
35 void
37 {
38 const std::string key = n->getPath().getLastElement();
39 _visitEnter(key, "List", n->childrenSize());
40 }
41
42 void
44 {
45 _visitExit();
46 }
47
48 void
50 {
52 const std::string key = b->getPath().getLastElement();
53 this->addValueRow(key, x, "Bool");
54 }
55
56 void
58 {
60 const std::string key = d->getPath().getLastElement();
61 this->addValueRow(key, x, "Double");
62 }
63
64 void
66 {
68 const std::string key = f->getPath().getLastElement();
69 this->addValueRow(key, x, "Float");
70 }
71
72 void
74 {
76 const std::string key = i->getPath().getLastElement();
77 this->addValueRow(key, x, "Int");
78 }
79
80 void
82 {
84 const std::string key = l->getPath().getLastElement();
85 this->addValueRow(key, x, "Long");
86 }
87
88 void
89 visitString(const aron::data::VariantPtr& string) override
90 {
91 const auto x = *aron::data::String::DynamicCastAndCheck(string);
92 const std::string key = string->getPath().getLastElement();
93 this->addValueRow(key, x, "String");
94 }
95
96 void
97 visitNDArray(const aron::data::VariantPtr& array) override
98 {
100 const std::string key = array->getPath().getLastElement();
101 this->addValueRow(key, x, "ND Array");
102 }
103 };
104
105
106} // namespace armarx::armem::gui::instance
bool addValueRow(const std::string &key, Navigator &n, const std::string &typeName)
bool _visitEnter(const std::string &key, const std::string &type, size_t numChildren)
void visitDouble(const aron::data::VariantPtr &d) override
void visitDictOnEnter(const aron::data::VariantPtr &n) override
void visitInt(const aron::data::VariantPtr &i) override
void visitListOnExit(const aron::data::VariantPtr &) override
void visitString(const aron::data::VariantPtr &string) override
void visitNDArray(const aron::data::VariantPtr &array) override
void visitLong(const aron::data::VariantPtr &l) override
void visitBool(const aron::data::VariantPtr &b) override
void visitFloat(const aron::data::VariantPtr &f) override
void visitDictOnExit(const aron::data::VariantPtr &) override
void visitListOnEnter(const aron::data::VariantPtr &n) override
std::shared_ptr< Variant > VariantPtr
This file offers overloads of toIce() and fromIce() functions for STL container types.