RefleX
Build DDS Applications in Modern C++ without IDL
 All Classes Namespaces Files Functions Variables Typedefs Enumerator Friends Macros Pages
Public Member Functions | List of all members
reflex::SafeDynamicData< T > Class Template Reference

Typesafe, exception-safe, poulated DynamicData. More...

#include <reflex_fwd.h>

Inheritance diagram for reflex::SafeDynamicData< T >:
reflex::AutoDynamicData

Public Member Functions

 SafeDynamicData (DDSDynamicDataTypeSupport *type_support, const T &src)
 Create a new SafeDynamicData object from a source object of type T. More...
 
void swap (SafeDynamicData< T > &rhs) throw ()
 Swap two SafeDynamicData objects. Does not throw. More...
 
- Public Member Functions inherited from reflex::AutoDynamicData
 AutoDynamicData (DDSDynamicDataTypeSupport *typeSupport)
 Create an initialized but unpopulated DynamicData instance from the given type-support. More...
 
 AutoDynamicData (const AutoDynamicData &)
 Create a deep copy. More...
 
AutoDynamicDataoperator= (const AutoDynamicData &src)
 Deep copy of the contents of src in to this. More...
 
 ~AutoDynamicData ()
 Destructor. More...
 
 AutoDynamicData (AutoDynamicData &&src)
 Moves the ownership of DynamicData from src to a newly created AutoDynamicData object. More...
 
AutoDynamicDataoperator= (AutoDynamicData &&src)
 Moves the ownership of DynamicData from src to this. More...
 
void swap (AutoDynamicData &) throw ()
 Swap two AutoDynamicData objects. Does not throw. More...
 
DDS_DynamicData * get ()
 Return the underlying DynamicData instance. More...
 
const DDS_DynamicData * get () const
 Return the underlying DynamicData instance. More...
 

Detailed Description

template<class T>
class reflex::SafeDynamicData< T >

Typesafe, exception-safe, poulated DynamicData.

The objects of SafeDynamicData are guaranteed to contain an initialized and fully populated DynamicData instance of type T. SafeDynamicData is a value-type, which means copying SafeDynamicData would result in a deep copy of the underlying DynamicData instance.

See Also
reflex::write_dynamicdata
reflex::read_dynamicdata
reflex::make_dynamicdata

Constructor & Destructor Documentation

template<class T>
reflex::SafeDynamicData< T >::SafeDynamicData ( DDSDynamicDataTypeSupport *  type_support,
const T &  src 
)
inline

Create a new SafeDynamicData object from a source object of type T.

Parameters
type_supportType support object that represents T
srcThe source object
Precondition
The type support must include the typecode obtained from reflex::make_typecode for type T.
See Also
reflex::make_dynamicdata

Member Function Documentation

template<class T>
void reflex::SafeDynamicData< T >::swap ( SafeDynamicData< T > &  rhs)
throw (
)
inline

Swap two SafeDynamicData objects. Does not throw.


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