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 89 of file treenode.hpp.

Constructor & Destructor Documentation

◆ AttributeNode()

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

Definition at line 279 of file treenode.cpp.

281 :
282 treenode ( ParentNode ),
283 attribute_t_definition ( AttributeData )
284{
285 Data.append ( QVariant ( QString::fromStdString ( AttributeData.p_name ) ) );
286
287 tref ObjectParent = GetParent()->GetObject();
288
289 QStringList DataList
290 { dbe::config::api::get::attribute::list<QStringList> ( ObjectParent, AttributeData ) };
291
292 for ( QString & ObjectData : DataList )
293 {
294 if ( !ObjectData.isEmpty() )
295 {
296 treenode * ChildNode = new treenode ( ObjectData, static_cast<treenode *> ( this ) );
297 ChildNode->SetWasFetched ( true );
298 }
299 }
300
301 if ( DataList.size() > 0 && !DataList.at ( 0 ).isNull() )
302 {
303 SetHasStructure ( true );
304 }
305
306 SetWasFetched ( true );
307}
dunedaq::conffwk::attribute_t attribute_t_definition
Definition treenode.hpp:97
static T list(dbe::inner::configobject::tref obj, dunedaq::conffwk::attribute_t const &attr)
treenode * GetParent() const
Definition treenode.cpp:111
void SetHasStructure(bool Structure)
Definition treenode.cpp:126
virtual tref GetObject() const
Definition treenode.cpp:76
treenode(treenode *ParentNode=nullptr)
Including QT Headers.
Definition treenode.cpp:24
void SetWasFetched(bool Fetched)
Definition treenode.cpp:136
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 330 of file treenode.cpp.

331{
333}

◆ GetData()

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

Reimplemented from dbe::treenode.

Definition at line 311 of file treenode.cpp.

312{
313 switch ( role )
314 {
315
316 case Qt::DisplayRole:
317 return Data.value ( Column );
318
319 case Qt::DecorationRole:
320
321 if ( Column == 0 )
322 {
323 return QIcon ( ":/Images/SLink.png" );
324 }
325 }
326
327 return QVariant();
328}

Member Data Documentation

◆ attribute_t_definition

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

Definition at line 97 of file treenode.hpp.


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