DDS-PSM-C++  1.0
ISO C++ API for OpenSplice DDS
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros
Public Member Functions | List of all members
dds::core::policy::TLifespan< D > Class Template Reference

#include <TCorePolicy.hpp>

Inheritance diagram for dds::core::policy::TLifespan< D >:
Inheritance graph
[legend]

Public Member Functions

 TLifespan (const dds::core::Duration &d)
 
 TLifespan ()
 
 TLifespan (const TLifespan &other)
 
TLifespanduration (const dds::core::Duration &d)
 
const dds::core::Duration duration () const
 
- Public Member Functions inherited from dds::core::Value< D >
template<typename ARG >
 Value (const ARG &arg)
 
template<typename ARG1 , typename ARG2 >
 Value (const ARG1 &arg1, const ARG2 &arg2)
 
template<typename ARG1 , typename ARG2 , typename ARG3 >
 Value (const ARG1 &arg1, const ARG2 &arg2, const ARG3 &arg3)
 
template<typename ARG1 , typename ARG2 , typename ARG3 , typename ARG4 >
 Value (const ARG1 &arg1, const ARG2 &arg2, const ARG3 &arg3, const ARG4 &arg4)
 
template<typename ARG1 , typename ARG2 , typename ARG3 , typename ARG4 , typename ARG5 >
 Value (const ARG1 &arg1, const ARG2 &arg2, const ARG3 &arg3, const ARG4 &arg4, const ARG5 &arg5)
 
template<typename ARG1 , typename ARG2 , typename ARG3 , typename ARG4 , typename ARG5 , typename ARG6 >
 Value (const ARG1 &arg1, const ARG2 &arg2, const ARG3 &arg3, const ARG4 &arg4, const ARG5 &arg5, const ARG6 &arg6)
 
 ~Value ()
 
const D & delegate () const
 
D & delegate ()
 
 operator const D & () const
 
 operator D & ()
 
bool operator!= (const Value &other) const
 
const D * operator-> () const
 
D * operator-> ()
 
Valueoperator= (const Value &other)
 
bool operator== (const Value &other) const
 

Additional Inherited Members

- Protected Member Functions inherited from dds::core::Value< D >
 Value ()
 
 Value (const Value &p)
 
- Protected Attributes inherited from dds::core::Value< D >
d_
 

Detailed Description

template<typename D>
class dds::core::policy::TLifespan< D >

The purpose of this QoS is to avoid delivering "stale" data to the application. Each data sample written by the DataWriter has an associated expiration time beyond which the data should not be delivered to any application. Once the sample expires, the data will be removed from the DataReader caches as well as from the transient and persistent information caches. The expiration time of each sample is computed by adding the duration specified by the LIFESPAN QoS to the source timestamp. As described in Section 7.1.2.4.2.11, write and Section 7.1.2.4.2.12, write_w_timestamp the source timestamp is either automatically computed by the Service each time the DataWriter write operation is called, or else supplied by the application by means of the write_w_timestamp operation.

This QoS relies on the sender and receiving applications having their clocks sufficiently synchronized. If this is not the case and the Service can detect it, the DataReader is allowed to use the reception timestamp instead of the source timestamp in its computation of the expiration time.

Definition at line 288 of file TCorePolicy.hpp.

Constructor & Destructor Documentation

template<typename D >
dds::core::policy::TLifespan< D >::TLifespan ( const dds::core::Duration d)
explicit

Create a lifespan with a specified duration.

template<typename D >
dds::core::policy::TLifespan< D >::TLifespan ( )

Create a Lifespan with infinite duration.

template<typename D >
dds::core::policy::TLifespan< D >::TLifespan ( const TLifespan< D > &  other)

Member Function Documentation

template<typename D >
TLifespan& dds::core::policy::TLifespan< D >::duration ( const dds::core::Duration d)
template<typename D >
const dds::core::Duration dds::core::policy::TLifespan< D >::duration ( ) const

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