DUNE-DAQ
DUNE Trigger and Data Acquisition software
Loading...
Searching...
No Matches
dunedaq::conffwk::ConfigObjectImpl Class Referenceabstract

Implements database objects. More...

#include <ConfigObjectImpl.hpp>

Inheritance diagram for dunedaq::conffwk::ConfigObjectImpl:
[legend]
Collaboration diagram for dunedaq::conffwk::ConfigObjectImpl:
[legend]

Public Member Functions

 ConfigObjectImpl (ConfigurationImpl *impl, const std::string &id, dunedaq::conffwk::ObjectState state=dunedaq::conffwk::Valid) noexcept
 The constructor stores configuration implementation pointer.
 
virtual ~ConfigObjectImpl () noexcept
 The virtual destructor.
 
const std::string & UID () const noexcept
 Method to get database object's unique ID.
 
const std::string & class_name () const noexcept
 Virtual method to get object's class name.
 
virtual const std::string contained_in () const =0
 Virtual method to get object's database file name.
 
virtual void get (const std::string &attribute, bool &value)=0
 Virtual method to read boolean attribute value.
 
virtual void get (const std::string &attribute, uint8_t &value)=0
 Virtual method to read unsigned char attribute value.
 
virtual void get (const std::string &attribute, int8_t &value)=0
 Virtual method to read signed char attribute value.
 
virtual void get (const std::string &attribute, uint16_t &value)=0
 Virtual method to read unsigned short attribute value.
 
virtual void get (const std::string &attribute, int16_t &value)=0
 Virtual method to read signed short attribute value.
 
virtual void get (const std::string &attribute, uint32_t &value)=0
 Virtual method to read unsigned long attribute value.
 
virtual void get (const std::string &attribute, int32_t &value)=0
 Virtual method to read signed long attribute value.
 
virtual void get (const std::string &attribute, uint64_t &value)=0
 Virtual method to read unsigned 64 bits integer attribute value.
 
virtual void get (const std::string &attribute, int64_t &value)=0
 Virtual method to read signed 64 bits integer attribute value.
 
virtual void get (const std::string &attribute, float &value)=0
 Virtual method to read float attribute value.
 
virtual void get (const std::string &attribute, double &value)=0
 Virtual method to read double attribute value.
 
virtual void get (const std::string &attribute, std::string &value)=0
 Virtual method to read string attribute value.
 
virtual void get (const std::string &association, ConfigObject &value)=0
 Virtual method to read relationship single-value.
 
virtual void get (const std::string &attribute, std::vector< bool > &value)=0
 Virtual method to read vector-of-booleans attribute value.
 
virtual void get (const std::string &attribute, std::vector< uint8_t > &value)=0
 Virtual method to read vector-of-unsigned-chars attribute value.
 
virtual void get (const std::string &attribute, std::vector< int8_t > &value)=0
 Virtual method to read vector-of-signed-chars attribute value.
 
virtual void get (const std::string &attribute, std::vector< uint16_t > &value)=0
 Virtual method to read vector-of-unsigned-shorts attribute value.
 
virtual void get (const std::string &attribute, std::vector< int16_t > &value)=0
 Virtual method to read vector-of-signed-shorts attribute value.
 
virtual void get (const std::string &attribute, std::vector< uint32_t > &value)=0
 Virtual method to read vector-of-unsigned-longs attribute value.
 
virtual void get (const std::string &attribute, std::vector< int32_t > &value)=0
 Virtual method to read vector-of-signed-longs attribute value.
 
virtual void get (const std::string &attribute, std::vector< uint64_t > &value)=0
 Virtual method to read vector-of-unsigned-64-bits-integers attribute value.
 
virtual void get (const std::string &attribute, std::vector< int64_t > &value)=0
 Virtual method to read vector-of-signed-64-bits-integers attribute value.
 
virtual void get (const std::string &attribute, std::vector< float > &value)=0
 Virtual method to read vector-of-floats attribute value.
 
virtual void get (const std::string &attribute, std::vector< double > &value)=0
 Virtual method to read vector-of-doubles attribute value.
 
virtual void get (const std::string &attribute, std::vector< std::string > &value)=0
 Virtual method to read vector-of-strings attribute value.
 
virtual void get (const std::string &association, std::vector< ConfigObject > &value)=0
 Virtual method to read vector-of-conffwk-objects relationship value.
 
virtual bool rel (const std::string &name, std::vector< ConfigObject > &value)=0
 Virtual method to read any relationship value without throwing an exception if there is no such relationship (return false)
 
virtual void referenced_by (std::vector< ConfigObject > &value, const std::string &association, bool check_composite_only, unsigned long rlevel, const std::vector< std::string > *rclasses) const =0
 Virtual method to read vector-of-conffwk-object referencing this object.
 
virtual void set (const std::string &attribute, bool value)=0
 Virtual method to set boolean attribute value.
 
virtual void set (const std::string &attribute, uint8_t value)=0
 Virtual method to set unsigned char attribute value.
 
virtual void set (const std::string &attribute, int8_t value)=0
 Virtual method to set signed char attribute value.
 
virtual void set (const std::string &attribute, uint16_t value)=0
 Virtual method to set unsigned short attribute value.
 
virtual void set (const std::string &attribute, int16_t value)=0
 Virtual method to set signed short attribute value.
 
virtual void set (const std::string &attribute, uint32_t value)=0
 Virtual method to set unsigned long attribute value.
 
virtual void set (const std::string &attribute, int32_t value)=0
 Virtual method to set signed long attribute value.
 
virtual void set (const std::string &attribute, uint64_t value)=0
 Virtual method to set unsigned 64 bits integer attribute value.
 
virtual void set (const std::string &attribute, int64_t value)=0
 Virtual method to set signed 64 bits integer attribute value.
 
virtual void set (const std::string &attribute, float value)=0
 Virtual method to set float attribute value.
 
virtual void set (const std::string &attribute, double value)=0
 Virtual method to set double attribute value.
 
virtual void set (const std::string &attribute, const std::string &value)=0
 Virtual method to set string attribute value.
 
virtual void set_enum (const std::string &attribute, const std::string &value)=0
 Virtual method to set enumeration attribute value.
 
virtual void set_class (const std::string &attribute, const std::string &value)=0
 Virtual method to set enumeration attribute value.
 
virtual void set_date (const std::string &attribute, const std::string &value)=0
 Virtual method to set date attribute value.
 
virtual void set_time (const std::string &attribute, const std::string &value)=0
 Virtual method to set time attribute value.
 
virtual void set (const std::string &attribute, const std::vector< bool > &value)=0
 Virtual method to read vector-of-booleans attribute value.
 
virtual void set (const std::string &attribute, const std::vector< uint8_t > &value)=0
 Virtual method to read vector-of-unsigned-chars attribute value.
 
virtual void set (const std::string &attribute, const std::vector< int8_t > &value)=0
 Virtual method to read vector-of-signed-chars attribute value.
 
virtual void set (const std::string &attribute, const std::vector< uint16_t > &value)=0
 Virtual method to read vector-of-unsigned-shorts attribute value.
 
virtual void set (const std::string &attribute, const std::vector< int16_t > &value)=0
 Virtual method to read vector-of-signed-shorts attribute value.
 
virtual void set (const std::string &attribute, const std::vector< uint32_t > &value)=0
 Virtual method to read vector-of-unsigned-longs attribute value.
 
virtual void set (const std::string &attribute, const std::vector< int32_t > &value)=0
 Virtual method to read vector-of-signed-longs attribute value.
 
virtual void set (const std::string &attribute, const std::vector< uint64_t > &value)=0
 Virtual method to read vector-of-unsigned-64-bits-integers attribute value.
 
virtual void set (const std::string &attribute, const std::vector< int64_t > &value)=0
 Virtual method to read vector-of-signed-64-bits-integers attribute value.
 
virtual void set (const std::string &attribute, const std::vector< float > &value)=0
 Virtual method to read vector-of-floats attribute value.
 
virtual void set (const std::string &attribute, const std::vector< double > &value)=0
 Virtual method to read vector-of-doubles attribute value.
 
virtual void set (const std::string &attribute, const std::vector< std::string > &value)=0
 Virtual method to read vector-of-strings attribute value.
 
virtual void set_enum (const std::string &attribute, const std::vector< std::string > &value)=0
 Virtual method to read vector-of-enumerations attribute value.
 
virtual void set_class (const std::string &attribute, const std::vector< std::string > &value)=0
 Virtual method to read vector-of-enumerations attribute value.
 
virtual void set_date (const std::string &attribute, const std::vector< std::string > &value)=0
 Virtual method to read vector-of-dates attribute value.
 
virtual void set_time (const std::string &attribute, const std::vector< std::string > &value)=0
 Virtual method to read vector-of-times attribute value.
 
virtual void set (const std::string &association, const ConfigObject *value, bool skip_non_null_check)=0
 Virtual method to read conffwk-object relationship value.
 
virtual void set (const std::string &association, const std::vector< const ConfigObject * > &value, bool skip_non_null_check)=0
 Virtual method to read vector-of-conffwk-objects relationship value.
 
virtual void move (const std::string &at)=0
 Virtual method to move object to a file.
 
virtual void rename (const std::string &new_id)=0
 Virtual method to change object ID.
 
virtual void clear () noexcept
 Virtual method to clean resources used by the implementation object.
 
virtual void reset ()=0
 Virtual method to reset the implementation object from unknown state.
 
bool is_deleted () const
 Check object and return true if the object has been deleted.
 

Static Public Member Functions

static ConfigObjectImpldefault_impl () noexcept
 Returns default implementation.
 

Protected Member Functions

void throw_if_deleted () const
 

Protected Attributes

ConfigurationImplm_impl
 
dunedaq::conffwk::ObjectState m_state
 
std::string m_id
 
const std::string * m_class_name
 
std::mutex m_mutex
 

Private Member Functions

 ConfigObjectImpl ()=delete
 
void convert (bool &value, const ConfigObject &obj, const std::string &attr_name) noexcept
 
void convert (uint8_t &value, const ConfigObject &obj, const std::string &attr_name) noexcept
 
void convert (int8_t &value, const ConfigObject &obj, const std::string &attr_name) noexcept
 
void convert (uint16_t &value, const ConfigObject &obj, const std::string &attr_name) noexcept
 
void convert (int16_t &value, const ConfigObject &obj, const std::string &attr_name) noexcept
 
void convert (uint32_t &value, const ConfigObject &obj, const std::string &attr_name) noexcept
 
void convert (int32_t &value, const ConfigObject &obj, const std::string &attr_name) noexcept
 
void convert (uint64_t &value, const ConfigObject &obj, const std::string &attr_name) noexcept
 
void convert (int64_t &value, const ConfigObject &obj, const std::string &attr_name) noexcept
 
void convert (float &value, const ConfigObject &obj, const std::string &attr_name) noexcept
 
void convert (double &value, const ConfigObject &obj, const std::string &attr_name) noexcept
 
void convert (std::string &value, const ConfigObject &obj, const std::string &attr_name) noexcept
 
void convert (ConfigObject &, const ConfigObject &, const std::string &) noexcept
 
void convert (std::vector< bool > &value, const ConfigObject &obj, const std::string &attr_name) noexcept
 
void convert (std::vector< uint8_t > &value, const ConfigObject &obj, const std::string &attr_name) noexcept
 
void convert (std::vector< int8_t > &value, const ConfigObject &obj, const std::string &attr_name) noexcept
 
void convert (std::vector< uint16_t > &value, const ConfigObject &obj, const std::string &attr_name) noexcept
 
void convert (std::vector< int16_t > &value, const ConfigObject &obj, const std::string &attr_name) noexcept
 
void convert (std::vector< uint32_t > &value, const ConfigObject &obj, const std::string &attr_name) noexcept
 
void convert (std::vector< int32_t > &value, const ConfigObject &obj, const std::string &attr_name) noexcept
 
void convert (std::vector< uint64_t > &value, const ConfigObject &obj, const std::string &attr_name) noexcept
 
void convert (std::vector< int64_t > &value, const ConfigObject &obj, const std::string &attr_name) noexcept
 
void convert (std::vector< float > &value, const ConfigObject &obj, const std::string &attr_name) noexcept
 
void convert (std::vector< double > &value, const ConfigObject &obj, const std::string &attr_name) noexcept
 
void convert (std::vector< std::string > &value, const ConfigObject &obj, const std::string &attr_name) noexcept
 
void convert (std::vector< ConfigObject > &, const ConfigObject &, const std::string &) noexcept
 

Friends

class ConfigObject
 
class Configuration
 
class ConfigurationImpl
 
class DalObject
 
class DalRegistry
 

Detailed Description

Implements database objects.

The class defines several pure virtual methods used to get, set and convert values of object's attributes and relationships.

To create implementation for an arbitrary DBMS technology it is necessary to derive new class from ConfigObjectImpl and to implement all virtual methods.

The methods may throw dunedaq::conffwk::Generic exception in case of an error unless noexcept is explicitly used in their specification.

Definition at line 50 of file ConfigObjectImpl.hpp.

Constructor & Destructor Documentation

◆ ConfigObjectImpl() [1/2]

dunedaq::conffwk::ConfigObjectImpl::ConfigObjectImpl ( ConfigurationImpl * impl,
const std::string & id,
dunedaq::conffwk::ObjectState state = dunedaq::conffwk::Valid )
noexcept

The constructor stores configuration implementation pointer.

Definition at line 104 of file ConfigObjectImpl.cpp.

104 : m_impl (impl), m_state(state), m_id(id), m_class_name(nullptr)
105{
106}
dunedaq::conffwk::ObjectState m_state

◆ ~ConfigObjectImpl()

dunedaq::conffwk::ConfigObjectImpl::~ConfigObjectImpl ( )
virtualnoexcept

The virtual destructor.

Definition at line 108 of file ConfigObjectImpl.cpp.

109{
110}

◆ ConfigObjectImpl() [2/2]

dunedaq::conffwk::ConfigObjectImpl::ConfigObjectImpl ( )
privatedelete

Member Function Documentation

◆ class_name()

const std::string & dunedaq::conffwk::ConfigObjectImpl::class_name ( ) const
inlinenoexcept

Virtual method to get object's class name.

Definition at line 91 of file ConfigObjectImpl.hpp.

92 {
93 return *m_class_name;
94 }

◆ clear()

virtual void dunedaq::conffwk::ConfigObjectImpl::clear ( )
inlinevirtualnoexcept

Virtual method to clean resources used by the implementation object.

Definition at line 306 of file ConfigObjectImpl.hpp.

306{;} // by default nothing to do

◆ contained_in()

virtual const std::string dunedaq::conffwk::ConfigObjectImpl::contained_in ( ) const
pure virtual

Virtual method to get object's database file name.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ convert() [1/26]

void dunedaq::conffwk::ConfigObjectImpl::convert ( bool & value,
const ConfigObject & obj,
const std::string & attr_name )
privatenoexcept

Definition at line 404 of file ConfigurationImpl.cpp.

405{
406 m_impl->m_conf->convert(value, obj, attr_name);
407}
Configuration * m_conf
Configuration pointer is needed for notification on changes, e.g. in case of subscription or an objec...
void convert(T &value, const ConfigObject &obj, const std::string &attr_name) noexcept
Converts single value.

◆ convert() [2/26]

void dunedaq::conffwk::ConfigObjectImpl::convert ( ConfigObject & ,
const ConfigObject & ,
const std::string &  )
inlineprivatenoexcept

Definition at line 365 of file ConfigObjectImpl.hpp.

365{;}

◆ convert() [3/26]

void dunedaq::conffwk::ConfigObjectImpl::convert ( double & value,
const ConfigObject & obj,
const std::string & attr_name )
privatenoexcept

Definition at line 464 of file ConfigurationImpl.cpp.

465{
466 m_impl->m_conf->convert(value, obj, attr_name);
467}

◆ convert() [4/26]

void dunedaq::conffwk::ConfigObjectImpl::convert ( float & value,
const ConfigObject & obj,
const std::string & attr_name )
privatenoexcept

Definition at line 458 of file ConfigurationImpl.cpp.

459{
460 m_impl->m_conf->convert(value, obj, attr_name);
461}

◆ convert() [5/26]

void dunedaq::conffwk::ConfigObjectImpl::convert ( int16_t & value,
const ConfigObject & obj,
const std::string & attr_name )
privatenoexcept

Definition at line 428 of file ConfigurationImpl.cpp.

429{
430 m_impl->m_conf->convert(value, obj, attr_name);
431}

◆ convert() [6/26]

void dunedaq::conffwk::ConfigObjectImpl::convert ( int32_t & value,
const ConfigObject & obj,
const std::string & attr_name )
privatenoexcept

Definition at line 440 of file ConfigurationImpl.cpp.

441{
442 m_impl->m_conf->convert(value, obj, attr_name);
443}

◆ convert() [7/26]

void dunedaq::conffwk::ConfigObjectImpl::convert ( int64_t & value,
const ConfigObject & obj,
const std::string & attr_name )
privatenoexcept

Definition at line 452 of file ConfigurationImpl.cpp.

453{
454 m_impl->m_conf->convert(value, obj, attr_name);
455}

◆ convert() [8/26]

void dunedaq::conffwk::ConfigObjectImpl::convert ( int8_t & value,
const ConfigObject & obj,
const std::string & attr_name )
privatenoexcept

Definition at line 416 of file ConfigurationImpl.cpp.

417{
418 m_impl->m_conf->convert(value, obj, attr_name);
419}

◆ convert() [9/26]

void dunedaq::conffwk::ConfigObjectImpl::convert ( std::string & value,
const ConfigObject & obj,
const std::string & attr_name )
privatenoexcept

Definition at line 470 of file ConfigurationImpl.cpp.

471{
472 m_impl->m_conf->convert(value, obj, attr_name);
473}

◆ convert() [10/26]

void dunedaq::conffwk::ConfigObjectImpl::convert ( std::vector< bool > & value,
const ConfigObject & obj,
const std::string & attr_name )
privatenoexcept

Definition at line 477 of file ConfigurationImpl.cpp.

478{
479 //m_impl->m_conf->convert2(value, obj, attr_name);
480}

◆ convert() [11/26]

void dunedaq::conffwk::ConfigObjectImpl::convert ( std::vector< ConfigObject > & ,
const ConfigObject & ,
const std::string &  )
inlineprivatenoexcept

Definition at line 379 of file ConfigObjectImpl.hpp.

379{;}

◆ convert() [12/26]

void dunedaq::conffwk::ConfigObjectImpl::convert ( std::vector< double > & value,
const ConfigObject & obj,
const std::string & attr_name )
privatenoexcept

Definition at line 537 of file ConfigurationImpl.cpp.

538{
539 m_impl->m_conf->convert2(value, obj, attr_name);
540}
void convert2(std::vector< T > &value, const ConfigObject &obj, const std::string &attr_name) noexcept
Converts vector of single values.

◆ convert() [13/26]

void dunedaq::conffwk::ConfigObjectImpl::convert ( std::vector< float > & value,
const ConfigObject & obj,
const std::string & attr_name )
privatenoexcept

Definition at line 531 of file ConfigurationImpl.cpp.

532{
533 m_impl->m_conf->convert2(value, obj, attr_name);
534}

◆ convert() [14/26]

void dunedaq::conffwk::ConfigObjectImpl::convert ( std::vector< int16_t > & value,
const ConfigObject & obj,
const std::string & attr_name )
privatenoexcept

Definition at line 501 of file ConfigurationImpl.cpp.

502{
503 m_impl->m_conf->convert2(value, obj, attr_name);
504}

◆ convert() [15/26]

void dunedaq::conffwk::ConfigObjectImpl::convert ( std::vector< int32_t > & value,
const ConfigObject & obj,
const std::string & attr_name )
privatenoexcept

Definition at line 513 of file ConfigurationImpl.cpp.

514{
515 m_impl->m_conf->convert2(value, obj, attr_name);
516}

◆ convert() [16/26]

void dunedaq::conffwk::ConfigObjectImpl::convert ( std::vector< int64_t > & value,
const ConfigObject & obj,
const std::string & attr_name )
privatenoexcept

Definition at line 525 of file ConfigurationImpl.cpp.

526{
527 m_impl->m_conf->convert2(value, obj, attr_name);
528}

◆ convert() [17/26]

void dunedaq::conffwk::ConfigObjectImpl::convert ( std::vector< int8_t > & value,
const ConfigObject & obj,
const std::string & attr_name )
privatenoexcept

Definition at line 489 of file ConfigurationImpl.cpp.

490{
491 m_impl->m_conf->convert2(value, obj, attr_name);
492}

◆ convert() [18/26]

void dunedaq::conffwk::ConfigObjectImpl::convert ( std::vector< std::string > & value,
const ConfigObject & obj,
const std::string & attr_name )
privatenoexcept

Definition at line 543 of file ConfigurationImpl.cpp.

544{
545 m_impl->m_conf->convert2(value, obj, attr_name);
546}

◆ convert() [19/26]

void dunedaq::conffwk::ConfigObjectImpl::convert ( std::vector< uint16_t > & value,
const ConfigObject & obj,
const std::string & attr_name )
privatenoexcept

Definition at line 495 of file ConfigurationImpl.cpp.

496{
497 m_impl->m_conf->convert2(value, obj, attr_name);
498}

◆ convert() [20/26]

void dunedaq::conffwk::ConfigObjectImpl::convert ( std::vector< uint32_t > & value,
const ConfigObject & obj,
const std::string & attr_name )
privatenoexcept

Definition at line 507 of file ConfigurationImpl.cpp.

508{
509 m_impl->m_conf->convert2(value, obj, attr_name);
510}

◆ convert() [21/26]

void dunedaq::conffwk::ConfigObjectImpl::convert ( std::vector< uint64_t > & value,
const ConfigObject & obj,
const std::string & attr_name )
privatenoexcept

Definition at line 519 of file ConfigurationImpl.cpp.

520{
521 m_impl->m_conf->convert2(value, obj, attr_name);
522}

◆ convert() [22/26]

void dunedaq::conffwk::ConfigObjectImpl::convert ( std::vector< uint8_t > & value,
const ConfigObject & obj,
const std::string & attr_name )
privatenoexcept

Definition at line 483 of file ConfigurationImpl.cpp.

484{
485 m_impl->m_conf->convert2(value, obj, attr_name);
486}

◆ convert() [23/26]

void dunedaq::conffwk::ConfigObjectImpl::convert ( uint16_t & value,
const ConfigObject & obj,
const std::string & attr_name )
privatenoexcept

Definition at line 422 of file ConfigurationImpl.cpp.

423{
424 m_impl->m_conf->convert(value, obj, attr_name);
425}

◆ convert() [24/26]

void dunedaq::conffwk::ConfigObjectImpl::convert ( uint32_t & value,
const ConfigObject & obj,
const std::string & attr_name )
privatenoexcept

Definition at line 434 of file ConfigurationImpl.cpp.

435{
436 m_impl->m_conf->convert(value, obj, attr_name);
437}

◆ convert() [25/26]

void dunedaq::conffwk::ConfigObjectImpl::convert ( uint64_t & value,
const ConfigObject & obj,
const std::string & attr_name )
privatenoexcept

Definition at line 446 of file ConfigurationImpl.cpp.

447{
448 m_impl->m_conf->convert(value, obj, attr_name);
449}

◆ convert() [26/26]

void dunedaq::conffwk::ConfigObjectImpl::convert ( uint8_t & value,
const ConfigObject & obj,
const std::string & attr_name )
privatenoexcept

Definition at line 410 of file ConfigurationImpl.cpp.

411{
412 m_impl->m_conf->convert(value, obj, attr_name);
413}

◆ default_impl()

ConfigObjectImpl * dunedaq::conffwk::ConfigObjectImpl::default_impl ( )
staticnoexcept

Returns default implementation.

Definition at line 112 of file ConfigObjectImpl.cpp.

113{
114 return new ConfigObjectDefault();
115}

◆ get() [1/26]

virtual void dunedaq::conffwk::ConfigObjectImpl::get ( const std::string & association,
ConfigObject & value )
pure virtual

Virtual method to read relationship single-value.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ get() [2/26]

virtual void dunedaq::conffwk::ConfigObjectImpl::get ( const std::string & association,
std::vector< ConfigObject > & value )
pure virtual

Virtual method to read vector-of-conffwk-objects relationship value.

Implemented in dunedaq::conffwk::ConfigObjectDefault.

◆ get() [3/26]

virtual void dunedaq::conffwk::ConfigObjectImpl::get ( const std::string & attribute,
bool & value )
pure virtual

Virtual method to read boolean attribute value.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ get() [4/26]

virtual void dunedaq::conffwk::ConfigObjectImpl::get ( const std::string & attribute,
double & value )
pure virtual

Virtual method to read double attribute value.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ get() [5/26]

virtual void dunedaq::conffwk::ConfigObjectImpl::get ( const std::string & attribute,
float & value )
pure virtual

Virtual method to read float attribute value.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ get() [6/26]

virtual void dunedaq::conffwk::ConfigObjectImpl::get ( const std::string & attribute,
int16_t & value )
pure virtual

Virtual method to read signed short attribute value.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ get() [7/26]

virtual void dunedaq::conffwk::ConfigObjectImpl::get ( const std::string & attribute,
int32_t & value )
pure virtual

Virtual method to read signed long attribute value.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ get() [8/26]

virtual void dunedaq::conffwk::ConfigObjectImpl::get ( const std::string & attribute,
int64_t & value )
pure virtual

Virtual method to read signed 64 bits integer attribute value.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ get() [9/26]

virtual void dunedaq::conffwk::ConfigObjectImpl::get ( const std::string & attribute,
int8_t & value )
pure virtual

Virtual method to read signed char attribute value.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ get() [10/26]

virtual void dunedaq::conffwk::ConfigObjectImpl::get ( const std::string & attribute,
std::string & value )
pure virtual

Virtual method to read string attribute value.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ get() [11/26]

virtual void dunedaq::conffwk::ConfigObjectImpl::get ( const std::string & attribute,
std::vector< bool > & value )
pure virtual

Virtual method to read vector-of-booleans attribute value.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ get() [12/26]

virtual void dunedaq::conffwk::ConfigObjectImpl::get ( const std::string & attribute,
std::vector< double > & value )
pure virtual

Virtual method to read vector-of-doubles attribute value.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ get() [13/26]

virtual void dunedaq::conffwk::ConfigObjectImpl::get ( const std::string & attribute,
std::vector< float > & value )
pure virtual

Virtual method to read vector-of-floats attribute value.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ get() [14/26]

virtual void dunedaq::conffwk::ConfigObjectImpl::get ( const std::string & attribute,
std::vector< int16_t > & value )
pure virtual

Virtual method to read vector-of-signed-shorts attribute value.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ get() [15/26]

virtual void dunedaq::conffwk::ConfigObjectImpl::get ( const std::string & attribute,
std::vector< int32_t > & value )
pure virtual

Virtual method to read vector-of-signed-longs attribute value.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ get() [16/26]

virtual void dunedaq::conffwk::ConfigObjectImpl::get ( const std::string & attribute,
std::vector< int64_t > & value )
pure virtual

Virtual method to read vector-of-signed-64-bits-integers attribute value.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ get() [17/26]

virtual void dunedaq::conffwk::ConfigObjectImpl::get ( const std::string & attribute,
std::vector< int8_t > & value )
pure virtual

Virtual method to read vector-of-signed-chars attribute value.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ get() [18/26]

virtual void dunedaq::conffwk::ConfigObjectImpl::get ( const std::string & attribute,
std::vector< std::string > & value )
pure virtual

Virtual method to read vector-of-strings attribute value.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ get() [19/26]

virtual void dunedaq::conffwk::ConfigObjectImpl::get ( const std::string & attribute,
std::vector< uint16_t > & value )
pure virtual

Virtual method to read vector-of-unsigned-shorts attribute value.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ get() [20/26]

virtual void dunedaq::conffwk::ConfigObjectImpl::get ( const std::string & attribute,
std::vector< uint32_t > & value )
pure virtual

Virtual method to read vector-of-unsigned-longs attribute value.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ get() [21/26]

virtual void dunedaq::conffwk::ConfigObjectImpl::get ( const std::string & attribute,
std::vector< uint64_t > & value )
pure virtual

Virtual method to read vector-of-unsigned-64-bits-integers attribute value.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ get() [22/26]

virtual void dunedaq::conffwk::ConfigObjectImpl::get ( const std::string & attribute,
std::vector< uint8_t > & value )
pure virtual

Virtual method to read vector-of-unsigned-chars attribute value.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ get() [23/26]

virtual void dunedaq::conffwk::ConfigObjectImpl::get ( const std::string & attribute,
uint16_t & value )
pure virtual

Virtual method to read unsigned short attribute value.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ get() [24/26]

virtual void dunedaq::conffwk::ConfigObjectImpl::get ( const std::string & attribute,
uint32_t & value )
pure virtual

Virtual method to read unsigned long attribute value.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ get() [25/26]

virtual void dunedaq::conffwk::ConfigObjectImpl::get ( const std::string & attribute,
uint64_t & value )
pure virtual

Virtual method to read unsigned 64 bits integer attribute value.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ get() [26/26]

virtual void dunedaq::conffwk::ConfigObjectImpl::get ( const std::string & attribute,
uint8_t & value )
pure virtual

Virtual method to read unsigned char attribute value.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ is_deleted()

bool dunedaq::conffwk::ConfigObjectImpl::is_deleted ( ) const
inline

Check object and return true if the object has been deleted.

Definition at line 313 of file ConfigObjectImpl.hpp.

314 {
316 {
317 const_cast<ConfigObjectImpl *>(this)->reset();
318 }
319
321 }
virtual void reset()=0
Virtual method to reset the implementation object from unknown state.

◆ move()

virtual void dunedaq::conffwk::ConfigObjectImpl::move ( const std::string & at)
pure virtual

Virtual method to move object to a file.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ referenced_by()

virtual void dunedaq::conffwk::ConfigObjectImpl::referenced_by ( std::vector< ConfigObject > & value,
const std::string & association,
bool check_composite_only,
unsigned long rlevel,
const std::vector< std::string > * rclasses ) const
pure virtual

Virtual method to read vector-of-conffwk-object referencing this object.

Implemented in dunedaq::conffwk::ConfigObjectDefault.

◆ rel()

virtual bool dunedaq::conffwk::ConfigObjectImpl::rel ( const std::string & name,
std::vector< ConfigObject > & value )
pure virtual

Virtual method to read any relationship value without throwing an exception if there is no such relationship (return false)

Implemented in dunedaq::conffwk::ConfigObjectDefault.

◆ rename()

virtual void dunedaq::conffwk::ConfigObjectImpl::rename ( const std::string & new_id)
pure virtual

Virtual method to change object ID.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ reset()

virtual void dunedaq::conffwk::ConfigObjectImpl::reset ( )
pure virtual

Virtual method to reset the implementation object from unknown state.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ set() [1/26]

virtual void dunedaq::conffwk::ConfigObjectImpl::set ( const std::string & association,
const ConfigObject * value,
bool skip_non_null_check )
pure virtual

Virtual method to read conffwk-object relationship value.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ set() [2/26]

virtual void dunedaq::conffwk::ConfigObjectImpl::set ( const std::string & association,
const std::vector< const ConfigObject * > & value,
bool skip_non_null_check )
pure virtual

Virtual method to read vector-of-conffwk-objects relationship value.

Implemented in dunedaq::conffwk::ConfigObjectDefault.

◆ set() [3/26]

virtual void dunedaq::conffwk::ConfigObjectImpl::set ( const std::string & attribute,
bool value )
pure virtual

Virtual method to set boolean attribute value.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ set() [4/26]

virtual void dunedaq::conffwk::ConfigObjectImpl::set ( const std::string & attribute,
const std::string & value )
pure virtual

Virtual method to set string attribute value.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ set() [5/26]

virtual void dunedaq::conffwk::ConfigObjectImpl::set ( const std::string & attribute,
const std::vector< bool > & value )
pure virtual

Virtual method to read vector-of-booleans attribute value.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ set() [6/26]

virtual void dunedaq::conffwk::ConfigObjectImpl::set ( const std::string & attribute,
const std::vector< double > & value )
pure virtual

Virtual method to read vector-of-doubles attribute value.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ set() [7/26]

virtual void dunedaq::conffwk::ConfigObjectImpl::set ( const std::string & attribute,
const std::vector< float > & value )
pure virtual

Virtual method to read vector-of-floats attribute value.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ set() [8/26]

virtual void dunedaq::conffwk::ConfigObjectImpl::set ( const std::string & attribute,
const std::vector< int16_t > & value )
pure virtual

Virtual method to read vector-of-signed-shorts attribute value.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ set() [9/26]

virtual void dunedaq::conffwk::ConfigObjectImpl::set ( const std::string & attribute,
const std::vector< int32_t > & value )
pure virtual

Virtual method to read vector-of-signed-longs attribute value.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ set() [10/26]

virtual void dunedaq::conffwk::ConfigObjectImpl::set ( const std::string & attribute,
const std::vector< int64_t > & value )
pure virtual

Virtual method to read vector-of-signed-64-bits-integers attribute value.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ set() [11/26]

virtual void dunedaq::conffwk::ConfigObjectImpl::set ( const std::string & attribute,
const std::vector< int8_t > & value )
pure virtual

Virtual method to read vector-of-signed-chars attribute value.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ set() [12/26]

virtual void dunedaq::conffwk::ConfigObjectImpl::set ( const std::string & attribute,
const std::vector< std::string > & value )
pure virtual

Virtual method to read vector-of-strings attribute value.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ set() [13/26]

virtual void dunedaq::conffwk::ConfigObjectImpl::set ( const std::string & attribute,
const std::vector< uint16_t > & value )
pure virtual

Virtual method to read vector-of-unsigned-shorts attribute value.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ set() [14/26]

virtual void dunedaq::conffwk::ConfigObjectImpl::set ( const std::string & attribute,
const std::vector< uint32_t > & value )
pure virtual

Virtual method to read vector-of-unsigned-longs attribute value.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ set() [15/26]

virtual void dunedaq::conffwk::ConfigObjectImpl::set ( const std::string & attribute,
const std::vector< uint64_t > & value )
pure virtual

Virtual method to read vector-of-unsigned-64-bits-integers attribute value.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ set() [16/26]

virtual void dunedaq::conffwk::ConfigObjectImpl::set ( const std::string & attribute,
const std::vector< uint8_t > & value )
pure virtual

Virtual method to read vector-of-unsigned-chars attribute value.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ set() [17/26]

virtual void dunedaq::conffwk::ConfigObjectImpl::set ( const std::string & attribute,
double value )
pure virtual

Virtual method to set double attribute value.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ set() [18/26]

virtual void dunedaq::conffwk::ConfigObjectImpl::set ( const std::string & attribute,
float value )
pure virtual

Virtual method to set float attribute value.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ set() [19/26]

virtual void dunedaq::conffwk::ConfigObjectImpl::set ( const std::string & attribute,
int16_t value )
pure virtual

Virtual method to set signed short attribute value.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ set() [20/26]

virtual void dunedaq::conffwk::ConfigObjectImpl::set ( const std::string & attribute,
int32_t value )
pure virtual

Virtual method to set signed long attribute value.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ set() [21/26]

virtual void dunedaq::conffwk::ConfigObjectImpl::set ( const std::string & attribute,
int64_t value )
pure virtual

Virtual method to set signed 64 bits integer attribute value.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ set() [22/26]

virtual void dunedaq::conffwk::ConfigObjectImpl::set ( const std::string & attribute,
int8_t value )
pure virtual

Virtual method to set signed char attribute value.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ set() [23/26]

virtual void dunedaq::conffwk::ConfigObjectImpl::set ( const std::string & attribute,
uint16_t value )
pure virtual

Virtual method to set unsigned short attribute value.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ set() [24/26]

virtual void dunedaq::conffwk::ConfigObjectImpl::set ( const std::string & attribute,
uint32_t value )
pure virtual

Virtual method to set unsigned long attribute value.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ set() [25/26]

virtual void dunedaq::conffwk::ConfigObjectImpl::set ( const std::string & attribute,
uint64_t value )
pure virtual

Virtual method to set unsigned 64 bits integer attribute value.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ set() [26/26]

virtual void dunedaq::conffwk::ConfigObjectImpl::set ( const std::string & attribute,
uint8_t value )
pure virtual

Virtual method to set unsigned char attribute value.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ set_class() [1/2]

virtual void dunedaq::conffwk::ConfigObjectImpl::set_class ( const std::string & attribute,
const std::string & value )
pure virtual

Virtual method to set enumeration attribute value.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ set_class() [2/2]

virtual void dunedaq::conffwk::ConfigObjectImpl::set_class ( const std::string & attribute,
const std::vector< std::string > & value )
pure virtual

Virtual method to read vector-of-enumerations attribute value.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ set_date() [1/2]

virtual void dunedaq::conffwk::ConfigObjectImpl::set_date ( const std::string & attribute,
const std::string & value )
pure virtual

Virtual method to set date attribute value.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ set_date() [2/2]

virtual void dunedaq::conffwk::ConfigObjectImpl::set_date ( const std::string & attribute,
const std::vector< std::string > & value )
pure virtual

Virtual method to read vector-of-dates attribute value.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ set_enum() [1/2]

virtual void dunedaq::conffwk::ConfigObjectImpl::set_enum ( const std::string & attribute,
const std::string & value )
pure virtual

Virtual method to set enumeration attribute value.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ set_enum() [2/2]

virtual void dunedaq::conffwk::ConfigObjectImpl::set_enum ( const std::string & attribute,
const std::vector< std::string > & value )
pure virtual

Virtual method to read vector-of-enumerations attribute value.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ set_time() [1/2]

virtual void dunedaq::conffwk::ConfigObjectImpl::set_time ( const std::string & attribute,
const std::string & value )
pure virtual

Virtual method to set time attribute value.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ set_time() [2/2]

virtual void dunedaq::conffwk::ConfigObjectImpl::set_time ( const std::string & attribute,
const std::vector< std::string > & value )
pure virtual

Virtual method to read vector-of-times attribute value.

Implemented in dunedaq::conffwk::ConfigObjectDefault, and dunedaq::oksconflibs::OksConfigObject.

◆ throw_if_deleted()

void dunedaq::conffwk::ConfigObjectImpl::throw_if_deleted ( ) const
inlineprotected

Check state of object and throw exception if it has been deleted

Exceptions
dunedaq::conffwk::DeletedObjectif the object has been deleted

Definition at line 340 of file ConfigObjectImpl.hpp.

341 {
342 if (is_deleted())
343 {
345 }
346 }
#define ERS_HERE
bool is_deleted() const
Check object and return true if the object has been deleted.
Try to access deleted DAL object.
Definition Errors.hpp:72

◆ UID()

const std::string & dunedaq::conffwk::ConfigObjectImpl::UID ( ) const
inlinenoexcept

Method to get database object's unique ID.

Definition at line 83 of file ConfigObjectImpl.hpp.

84 {
85 std::lock_guard<std::mutex> scoped_lock(m_mutex); // be sure no one renames the object
86 return m_id;
87 }

Friends And Related Symbol Documentation

◆ ConfigObject

friend class ConfigObject
friend

Definition at line 52 of file ConfigObjectImpl.hpp.

◆ Configuration

friend class Configuration
friend

Definition at line 53 of file ConfigObjectImpl.hpp.

◆ ConfigurationImpl

friend class ConfigurationImpl
friend

Definition at line 54 of file ConfigObjectImpl.hpp.

◆ DalObject

DalObject
friend

Definition at line 55 of file ConfigObjectImpl.hpp.

◆ DalRegistry

friend class DalRegistry
friend

Definition at line 57 of file ConfigObjectImpl.hpp.

Member Data Documentation

◆ m_class_name

const std::string* dunedaq::conffwk::ConfigObjectImpl::m_class_name
protected

Name of object's class

Definition at line 329 of file ConfigObjectImpl.hpp.

◆ m_id

std::string dunedaq::conffwk::ConfigObjectImpl::m_id
protected

Object ID

Definition at line 328 of file ConfigObjectImpl.hpp.

◆ m_impl

ConfigurationImpl* dunedaq::conffwk::ConfigObjectImpl::m_impl
protected

Pointer to configuration implementation object

Definition at line 326 of file ConfigObjectImpl.hpp.

◆ m_mutex

std::mutex dunedaq::conffwk::ConfigObjectImpl::m_mutex
mutableprotected

Mutex protecting concurrent access to this object

Definition at line 330 of file ConfigObjectImpl.hpp.

◆ m_state

dunedaq::conffwk::ObjectState dunedaq::conffwk::ConfigObjectImpl::m_state
protected

State of the object

Definition at line 327 of file ConfigObjectImpl.hpp.


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