DUNE-DAQ
DUNE Trigger and Data Acquisition software
Loading...
Searching...
No Matches
dbe::AttributeNode Class Reference

#include <treenode.hpp>

Inheritance diagram for dbe::AttributeNode:
[legend]
Collaboration diagram for dbe::AttributeNode:
[legend]

Public Member Functions

 AttributeNode (const dunedaq::conffwk::attribute_t &AttributeData, treenode *ParentNode)
 
 ~AttributeNode ()
 
virtual QVariant GetData (const int Column, int role=Qt::DisplayRole) const
 
dunedaq::conffwk::attribute_t attribute_t () const
 
- Public Member Functions inherited from dbe::treenode
 treenode (treenode *ParentNode=nullptr)
 Including QT Headers.
 
 treenode (QString const &Datum, treenode *ParentNode=nullptr)
 
 treenode (QStringList const &DataList, treenode *ParentNode=nullptr)
 
virtual ~treenode ()
 
virtual tref GetObject () const
 
int GetRow () const
 
virtual void AddChild (treenode *Child)
 
virtual void RemoveChild (treenode *Child)
 
treenodeGetChild (const int Row) const
 
QList< treenode * > GetChildren () const
 
treenodeGetParent () const
 
int ChildCount () const
 
int ColumnCount () const
 
void SetHasStructure (bool Structure)
 
bool GetHasStructure () const
 
void SetWasFetched (bool Fetched)
 
bool GetWasFetched () const
 
void rename (QString const &)
 

Private Attributes

dunedaq::conffwk::attribute_t attribute_t_definition
 

Additional Inherited Members

- Protected Attributes inherited from dbe::treenode
treenodeParent
 
QList< treenode * > Children
 
QList< QVariant > Data
 
bool HasStructure
 
bool WasFetched
 

Detailed Description

Definition at line 86 of file treenode.hpp.

Constructor & Destructor Documentation

◆ AttributeNode()

dbe::AttributeNode::AttributeNode ( const dunedaq::conffwk::attribute_t & AttributeData,
treenode * ParentNode )

Definition at line 272 of file treenode.cpp.

274 :
275 treenode ( ParentNode ),
276 attribute_t_definition ( AttributeData )
277{
278 Data.append ( QVariant ( QString::fromStdString ( AttributeData.p_name ) ) );
279
280 tref ObjectParent = GetParent()->GetObject();
281
282 QStringList DataList
283 { dbe::config::api::get::attribute::list<QStringList> ( ObjectParent, AttributeData ) };
284
285 for ( QString & ObjectData : DataList )
286 {
287 if ( !ObjectData.isEmpty() )
288 {
289 treenode * ChildNode = new treenode ( ObjectData, static_cast<treenode *> ( this ) );
290 ChildNode->SetWasFetched ( true );
291 }
292 }
293
294 if ( DataList.size() > 0 && !DataList.at ( 0 ).isNull() )
295 {
296 SetHasStructure ( true );
297 }
298
299 SetWasFetched ( true );
300}
dunedaq::conffwk::attribute_t attribute_t_definition
Definition treenode.hpp:94
static T list(dbe::inner::configobject::tref obj, dunedaq::conffwk::attribute_t const &attr)
treenode * GetParent() const
Definition treenode.cpp:110
void SetHasStructure(bool Structure)
Definition treenode.cpp:125
virtual tref GetObject() const
Definition treenode.cpp:75
treenode(treenode *ParentNode=nullptr)
Including QT Headers.
Definition treenode.cpp:23
void SetWasFetched(bool Fetched)
Definition treenode.cpp:135
QList< QVariant > Data
Definition treenode.hpp:52
inner::configobject::tref tref
Definition tref.hpp:30

◆ ~AttributeNode()

dbe::AttributeNode::~AttributeNode ( )
default

Member Function Documentation

◆ attribute_t()

dunedaq::conffwk::attribute_t dbe::AttributeNode::attribute_t ( ) const

Definition at line 323 of file treenode.cpp.

324{
326}

◆ GetData()

QVariant dbe::AttributeNode::GetData ( const int Column,
int role = Qt::DisplayRole ) const
virtual

Reimplemented from dbe::treenode.

Definition at line 304 of file treenode.cpp.

305{
306 switch ( role )
307 {
308
309 case Qt::DisplayRole:
310 return Data.value ( Column );
311
312 case Qt::DecorationRole:
313
314 if ( Column == 0 )
315 {
316 return QIcon ( ":/Images/SLink.png" );
317 }
318 }
319
320 return QVariant();
321}

Member Data Documentation

◆ attribute_t_definition

dunedaq::conffwk::attribute_t dbe::AttributeNode::attribute_t_definition
private

Definition at line 94 of file treenode.hpp.


The documentation for this class was generated from the following files: