The Gaudi Framework  master (594c33fa)
AnyDataWrapper< T > Class Template Reference

#include </builds/gaudi/Gaudi/GaudiKernel/include/GaudiKernel/AnyDataWrapper.h>

Inheritance diagram for AnyDataWrapper< T >:
Collaboration diagram for AnyDataWrapper< T >:

Public Member Functions

 AnyDataWrapper (T &&data)
 
 AnyDataWrapper (AnyDataWrapper &&)=delete
 
 AnyDataWrapper (AnyDataWrapper const &)=delete
 
AnyDataWrapperoperator= (AnyDataWrapper &&)=delete
 
AnyDataWrapperoperator= (AnyDataWrapper const &)=delete
 
const T & getData () const
 
T & getData ()
 
std::optional< std::size_tsize () const override
 
Ptr payload () const override
 
- Public Member Functions inherited from DataObject
 DataObject ()
 Standard Constructor. More...
 
 DataObject (const DataObject &rhs)
 Copy Constructor. More...
 
DataObjectoperator= (const DataObject &rhs)
 Assignment Operator. More...
 
 DataObject (DataObject &&rhs)
 Move Constructor. More...
 
DataObjectoperator= (DataObject &&rhs)
 Move Assignment Operator. More...
 
virtual ~DataObject ()
 Standard Destructor. More...
 
virtual unsigned long addRef ()
 Add reference to object. More...
 
virtual unsigned long release ()
 release reference to object More...
 
virtual const CLIDclID () const
 Retrieve reference to class definition structure. More...
 
const std::stringname () const
 Retreive DataObject name. It is the name when registered in the store. More...
 
virtual StatusCode update ()
 Provide empty placeholder for internal object reconfiguration callback. More...
 
void setRegistry (IRegistry *pRegistry)
 Set pointer to Registry. More...
 
IRegistryregistry () const
 Get pointer to Registry. More...
 
LinkManagerlinkMgr ()
 Retrieve Link manager. More...
 
const LinkManagerlinkMgr () const
 
unsigned char version () const
 Retrieve version number of this object representation. More...
 
void setVersion (unsigned char vsn)
 Set version number of this object representation. More...
 
unsigned long refCount () const
 Return the refcount. More...
 
virtual std::ostreamfillStream (std::ostream &s) const
 Fill the output stream (ASCII) More...
 

Protected Attributes

m_data
 

Additional Inherited Members

- Static Public Member Functions inherited from DataObject
static const CLIDclassID ()
 Retrieve reference to class definition structure (static access) More...
 

Detailed Description

template<typename T>
class AnyDataWrapper< T >

Definition at line 55 of file AnyDataWrapper.h.

Constructor & Destructor Documentation

◆ AnyDataWrapper() [1/3]

template<typename T >
AnyDataWrapper< T >::AnyDataWrapper ( T &&  data)
inline

Definition at line 60 of file AnyDataWrapper.h.

60 : m_data{ std::move( data ) } {};

◆ AnyDataWrapper() [2/3]

template<typename T >
AnyDataWrapper< T >::AnyDataWrapper ( AnyDataWrapper< T > &&  )
delete

◆ AnyDataWrapper() [3/3]

template<typename T >
AnyDataWrapper< T >::AnyDataWrapper ( AnyDataWrapper< T > const &  )
delete

Member Function Documentation

◆ getData() [1/2]

template<typename T >
T& AnyDataWrapper< T >::getData ( )
inline

Definition at line 67 of file AnyDataWrapper.h.

67 { return m_data; }

◆ getData() [2/2]

template<typename T >
const T& AnyDataWrapper< T >::getData ( ) const
inline

Definition at line 66 of file AnyDataWrapper.h.

66 { return m_data; }

◆ operator=() [1/2]

template<typename T >
AnyDataWrapper& AnyDataWrapper< T >::operator= ( AnyDataWrapper< T > &&  )
delete

◆ operator=() [2/2]

template<typename T >
AnyDataWrapper& AnyDataWrapper< T >::operator= ( AnyDataWrapper< T > const &  )
delete

◆ payload()

template<typename T >
Ptr AnyDataWrapper< T >::payload ( ) const
inlineoverridevirtual

Implements AnyDataWrapperBase.

Definition at line 74 of file AnyDataWrapper.h.

74 { return &m_data; }

◆ size()

template<typename T >
std::optional<std::size_t> AnyDataWrapper< T >::size ( ) const
inlineoverridevirtual

Implements AnyDataWrapperBase.

Definition at line 69 of file AnyDataWrapper.h.

69  {
71  return size( getData() );
72  }

Member Data Documentation

◆ m_data

template<typename T >
T AnyDataWrapper< T >::m_data
protected

Definition at line 57 of file AnyDataWrapper.h.


The documentation for this class was generated from the following file:
details::size
constexpr auto size(const T &, Args &&...) noexcept
Definition: AnyDataWrapper.h:23
std::move
T move(T... args)
AnyDataWrapper::getData
const T & getData() const
Definition: AnyDataWrapper.h:66
AnyDataWrapper::m_data
T m_data
Definition: AnyDataWrapper.h:57
AnyDataWrapper::size
std::optional< std::size_t > size() const override
Definition: AnyDataWrapper.h:69