DUNE-DAQ
DUNE Trigger and Data Acquisition software
Loading...
Searching...
No Matches
dbe::actions::ChangeClass< T > Class Template Reference

#include <change_class.hpp>

Inheritance diagram for dbe::actions::ChangeClass< T >:
[legend]
Collaboration diagram for dbe::actions::ChangeClass< T >:
[legend]

Public Member Functions

 ChangeClass (tref Object, dunedaq::conffwk::attribute_t AttributeData, T NewValueData, QUndoCommand *parent=nullptr)
void undo ()
void redo ()
Public Member Functions inherited from dbe::actions::onobject
 onobject (tref obj, QUndoCommand *parent=nullptr, QUuid const &uuid=0)
Public Member Functions inherited from dbe::actions::state
bool isvalid () const
void toggle ()
void failed () const
void setundoable (bool s=true) const
void setredoable (bool s=true) const
bool undoable () const
bool redoable () const
void reload () const
QUuid const & source () const

Private Attributes

OldValue
NewValue
dunedaq::conffwk::attribute_t Attribute
bool Success

Additional Inherited Members

Protected Member Functions inherited from dbe::actions::onobject
tref checkedref () const
Protected Member Functions inherited from dbe::actions::state
 state (QUndoCommand *parent=nullptr, QUuid const &uuid=0)

Detailed Description

template<typename T>
class dbe::actions::ChangeClass< T >

Definition at line 38 of file change_class.hpp.

Constructor & Destructor Documentation

◆ ChangeClass()

template<typename T>
dbe::actions::ChangeClass< T >::ChangeClass ( tref Object,
dunedaq::conffwk::attribute_t AttributeData,
T NewValueData,
QUndoCommand * parent = nullptr )

Definition at line 55 of file change_class.hpp.

57 : onobject ( Object, parent ),
60 Success ( true )
61{
62 try
63 {
67 }
68 catch ( dunedaq::conffwk::Exception const & )
69 {
70 }
71
72 setText (
73 QObject::tr ( "Attribute %1 of object %2 was updated." ).arg (
74 AttributeData.p_name.c_str() ).arg ( Object.UID().c_str() ) );
75}
dunedaq::conffwk::attribute_t Attribute
onobject(tref obj, QUndoCommand *parent=nullptr, QUuid const &uuid=0)
Definition Command.cpp:510
static T list(dbe::inner::configobject::tref obj, dunedaq::conffwk::attribute_t const &attr)
T to(QStringList const &DataList)

Member Function Documentation

◆ redo()

template<typename T>
void dbe::actions::ChangeClass< T >::redo ( )

Definition at line 104 of file change_class.hpp.

105{
106 try
107 {
108 if ( isvalid() )
109 {
110 failed();
114
116 toggle();
117 }
118 }
119 catch ( dunedaq::conffwk::Exception const & e )
120 {
121 Success = false;
123 }
125 {
126 FAIL ( "Operation did not complete because a lookup in the underlying database failed",
127 ex.what() );
129 }
130
131}
tref checkedref() const
Definition Command.cpp:518
bool isvalid() const
Definition Command.cpp:548
void failed() const
Definition Command.cpp:541
#define FAIL(...)
void aclass(inner::configobject::tref Object, dunedaq::conffwk::attribute_t const &AttributeData, T NewValueData, bool NotEmit=false)

◆ undo()

template<typename T>
void dbe::actions::ChangeClass< T >::undo ( )

Definition at line 78 of file change_class.hpp.

79{
80 try
81 {
82 if ( isvalid() )
83 {
84 failed();
86 toggle();
87 }
88 }
89 catch ( dunedaq::conffwk::Exception const & e )
90 {
91 Success = false;
93 }
95 {
96 FAIL ( "Operation did not complete because a lookup in the underlying database failed",
97 ex.what() );
99 }
100
101}

Member Data Documentation

◆ Attribute

template<typename T>
dunedaq::conffwk::attribute_t dbe::actions::ChangeClass< T >::Attribute
private

Definition at line 50 of file change_class.hpp.

◆ NewValue

template<typename T>
T dbe::actions::ChangeClass< T >::NewValue
private

Definition at line 49 of file change_class.hpp.

◆ OldValue

template<typename T>
T dbe::actions::ChangeClass< T >::OldValue
private

Definition at line 48 of file change_class.hpp.

◆ Success

template<typename T>
bool dbe::actions::ChangeClass< T >::Success
private

Definition at line 51 of file change_class.hpp.


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