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

#include <config_reference.hpp>

Collaboration diagram for dbe::inner::configobject::oref:
[legend]

Public Member Functions

 operator dbe::cokey () const

Private Member Functions

 oref (dunedaq::conffwk::ConfigObject const &o) noexcept(true)
std::string full_name () const
void rename (std::string const &newname)
 operator dunedaq::conffwk::ConfigObject & () noexcept
 operator dunedaq::conffwk::ConfigObject const & () const noexcept
 oref (oref const &)=delete
oref operator= (oref const &)=delete

Private Attributes

wref ref
std::string this_last_full_name

Friends

class tref
class vref
struct refhasher
template<typename>
class aref
template<typename>
class gref
class dbe::inner::dbcontroller
bool operator== (dbe::cokey const &left, dbe::cokey const &right)

Detailed Description

Provides a consistent reference to the underlying object referenced by ConfigObject

Definition at line 71 of file config_reference.hpp.

Constructor & Destructor Documentation

◆ oref() [1/2]

dbe::inner::configobject::oref::oref ( dunedaq::conffwk::ConfigObject const & o)
inlineprivatenoexcept

Permits to create a reference to an already existing configuration object

Parameters
othe configobject to wrap this around

Definition at line 91 of file config_reference.hpp.

92 : ref{ o }
93 , this_last_full_name(o.full_name())
94 {
95 }

◆ oref() [2/2]

dbe::inner::configobject::oref::oref ( oref const & )
privatedelete

Member Function Documentation

◆ full_name()

std::string dbe::inner::configobject::oref::full_name ( ) const
inlineprivate

Definition at line 97 of file config_reference.hpp.

97{ return this_last_full_name; }

◆ operator dbe::cokey()

dbe::inner::configobject::oref::operator dbe::cokey ( ) const
inline

Definition at line 119 of file config_reference.hpp.

119{ return { ref.ref.UID(), ref.ref.class_name() }; }
dunedaq::conffwk::ConfigObject ref
const std::string & UID() const noexcept
Return object identity.
const std::string & class_name() const noexcept
Return object's class name.

◆ operator dunedaq::conffwk::ConfigObject &()

dbe::inner::configobject::oref::operator dunedaq::conffwk::ConfigObject & ( )
inlineexplicitprivatenoexcept

Explicit conversion for friends only returns an null ConfigObject in case that the underlying object has been deleted. Otherwise it returns the underlying ConfigObject reference, which is expected to be managed by dbe::inner::dbecontroller and be consistent or invalid.

Definition at line 110 of file config_reference.hpp.

110{ return ref.ref; }

◆ operator dunedaq::conffwk::ConfigObject const &()

dbe::inner::configobject::oref::operator dunedaq::conffwk::ConfigObject const & ( ) const
inlineexplicitprivatenoexcept

Definition at line 112 of file config_reference.hpp.

112{ return ref.ref; }

◆ operator=()

oref dbe::inner::configobject::oref::operator= ( oref const & )
privatedelete

◆ rename()

void dbe::inner::configobject::oref::rename ( std::string const & newname)
inlineprivate

Definition at line 99 of file config_reference.hpp.

100 {
101 ref.ref.rename(newname);
102 this_last_full_name = newname;
103 }
void rename(const std::string &new_id)
Rename object.

◆ aref

template<typename>
friend class aref
friend

Definition at line 77 of file config_reference.hpp.

◆ dbe::inner::dbcontroller

friend class dbe::inner::dbcontroller
friend

Definition at line 80 of file config_reference.hpp.

◆ gref

template<typename>
friend class gref
friend

Definition at line 79 of file config_reference.hpp.

◆ operator==

bool operator== ( dbe::cokey const & left,
dbe::cokey const & right )
friend

◆ refhasher

friend struct refhasher
friend

Definition at line 75 of file config_reference.hpp.

◆ tref

friend class tref
friend

Definition at line 73 of file config_reference.hpp.

◆ vref

friend class vref
friend

Definition at line 74 of file config_reference.hpp.

Member Data Documentation

◆ ref

wref dbe::inner::configobject::oref::ref
private

Definition at line 83 of file config_reference.hpp.

◆ this_last_full_name

std::string dbe::inner::configobject::oref::this_last_full_name
private

Definition at line 84 of file config_reference.hpp.


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