The Gaudi Framework  v31r0 (aeb156f0)
AnyDataWrapper< T > Class Template Referencefinal

#include <GaudiKernel/AnyDataWrapper.h>

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

Public Member Functions

 AnyDataWrapper (T &&data)
 
 AnyDataWrapper (AnyDataWrapper &&other)
 
const T & getData () const
 
T & getData ()
 
boost::optional< std::size_tsize () 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 () const
 Retrieve Link manager. More...
 
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...
 

Private 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<class T>
class AnyDataWrapper< T >

Definition at line 39 of file AnyDataWrapper.h.

Constructor & Destructor Documentation

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

Definition at line 41 of file AnyDataWrapper.h.

41 : m_data( std::move( data ) ){};
T move(T...args)
template<class T>
AnyDataWrapper< T >::AnyDataWrapper ( AnyDataWrapper< T > &&  other)
inline

Definition at line 43 of file AnyDataWrapper.h.

44  : AnyDataWrapperBase( std::move( other ) ), m_data( std::move( other.m_data ) ){};
T move(T...args)

Member Function Documentation

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

Definition at line 46 of file AnyDataWrapper.h.

46 { return m_data; }
template<class T>
T& AnyDataWrapper< T >::getData ( )
inline

Definition at line 47 of file AnyDataWrapper.h.

47 { return m_data; }
template<class T>
boost::optional<std::size_t> AnyDataWrapper< T >::size ( ) const
inlineoverridevirtual

Implements AnyDataWrapperBase.

Definition at line 49 of file AnyDataWrapper.h.

49  {
50  // TODO: C++17: add 'using std::size' and remove the first two implementations in details...
52  return size( m_data );
53  }
constexpr auto size(const T &, Args &&...) noexcept
boost::optional< std::size_t > size() const override

Member Data Documentation

template<class T>
T AnyDataWrapper< T >::m_data
private

Definition at line 56 of file AnyDataWrapper.h.


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