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

#include <SchemaCustomSuperClassModel.hpp>

Inheritance diagram for dbse::CustomSuperClassModel:
[legend]
Collaboration diagram for dbse::CustomSuperClassModel:
[legend]

Public Member Functions

 CustomSuperClassModel (dunedaq::oks::OksClass *ClassInfo, QStringList Headers, bool Derived=false)
 
 ~CustomSuperClassModel ()
 
void setupModel ()
 
- Public Member Functions inherited from dbse::CustomModelInterface
 CustomModelInterface (QStringList Headers, QObject *parent=nullptr)
 Including Schema Editor.
 
 ~CustomModelInterface ()
 
int rowCount (const QModelIndex &parent) const
 
int columnCount (const QModelIndex &parent) const
 
Qt::ItemFlags flags (const QModelIndex &index) const
 
QVariant headerData (int section, Qt::Orientation orientation, int role) const
 
QVariant data (const QModelIndex &index, int role) const
 
QStringList getRowFromIndex (QModelIndex &index)
 

Private Attributes

dunedaq::oks::OksClassSchemaClass
 
bool SchemaDerived
 

Additional Inherited Members

- Protected Attributes inherited from dbse::CustomModelInterface
QStringList HeaderList
 
QList< QStringList > Data
 

Detailed Description

Definition at line 13 of file SchemaCustomSuperClassModel.hpp.

Constructor & Destructor Documentation

◆ CustomSuperClassModel()

dbse::CustomSuperClassModel::CustomSuperClassModel ( dunedaq::oks::OksClass * ClassInfo,
QStringList Headers,
bool Derived = false )

Definition at line 5 of file SchemaCustomSuperClassModel.cpp.

7 : CustomModelInterface ( Headers ),
8 SchemaClass ( ClassInfo ),
9 SchemaDerived ( Derived )
10{
11 setupModel();
12}
CustomModelInterface(QStringList Headers, QObject *parent=nullptr)
Including Schema Editor.

◆ ~CustomSuperClassModel()

dbse::CustomSuperClassModel::~CustomSuperClassModel ( )
default

Member Function Documentation

◆ setupModel()

void dbse::CustomSuperClassModel::setupModel ( )
virtual

Implements dbse::CustomModelInterface.

Definition at line 14 of file SchemaCustomSuperClassModel.cpp.

15{
16 Data.clear();
17 std::list<std::string> SuperClassList;
18
19 if ( SchemaDerived )
20 {
21 const OksClass::FList* allClasses = SchemaClass->all_super_classes();
22 if(allClasses != nullptr) {
23 for(const OksClass* cl : *allClasses) {
24 SuperClassList.push_back(cl->get_name());
25 }
26 }
27 }
28 else
29 {
30 const auto& directClasses = SchemaClass->direct_super_classes();
31 if(directClasses != nullptr) {
32 for(const std::string* cl : *directClasses) {
33 SuperClassList.push_back(*cl);
34 }
35 }
36 }
37
38 for ( std::string Class : SuperClassList )
39 {
40 QStringList Row;
41 Row.append ( QString::fromStdString ( Class ) );
42 Data.append ( Row );
43 }
44}
The OKS class.
Definition class.hpp:200
const FList * all_super_classes() const noexcept
Definition class.hpp:408
const std::list< std::string * > * direct_super_classes() const noexcept
Definition class.hpp:413
std::list< OksClass *, boost::fast_pool_allocator< OksClass * > > FList
Definition class.hpp:235

Member Data Documentation

◆ SchemaClass

dunedaq::oks::OksClass* dbse::CustomSuperClassModel::SchemaClass
private

Definition at line 20 of file SchemaCustomSuperClassModel.hpp.

◆ SchemaDerived

bool dbse::CustomSuperClassModel::SchemaDerived
private

Definition at line 21 of file SchemaCustomSuperClassModel.hpp.


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