HLCC Documentation 3.0.1
Loading...
Searching...
No Matches
hlcc::oldbmux::CiiOldbDataPointAsync< T >::OldbDataWithPromise Struct Reference

Value type for data for buffering and writing to OLDB. This subclass is used internally by CiiOldbDataPointAsync. More...

#include <ciiOldbDataPointAsync.hpp>

Inheritance diagram for hlcc::oldbmux::CiiOldbDataPointAsync< T >::OldbDataWithPromise:
hlcc::oldbmux::CiiOldbDataPointAsync< T >::OldbData

Public Member Functions

 OldbDataWithPromise (std::optional< T > value, std::optional< int64_t > timestamp, std::optional< elt::oldb::CiiOldbDpQuality > quality, boost::promise< OldbData > &&promise)
 
virtual ~OldbDataWithPromise ()=default
 
 OldbDataWithPromise (const OldbDataWithPromise &)=delete
 
OldbDataWithPromiseoperator= (const OldbDataWithPromise &)=delete
 
 OldbDataWithPromise (OldbDataWithPromise &&other)=default
 
OldbDataWithPromiseoperator= (OldbDataWithPromise &&other)=default
 
boost::promise< CiiOldbDataPointAsync< T >::OldbData > * GetPromise ()
 
 CiiOldbDataPointAsync (std::string name, std::shared_ptr< elt::oldb::CiiOldbDataPoint< T > > delegate, boost::asio::thread_pool &async_exec, const log4cplus::Logger &logger, std::size_t buffer_capacity=1)
 Constructor.
 
virtual ~CiiOldbDataPointAsync ()
 
std::shared_ptr< elt::oldb::CiiOldbDpValue< T > > ReadValue (bool check_bad_quality=true)
 
boost::future< typename CiiOldbDataPointAsync< T >::OldbDataWriteValue (const T &value, int64_t timestamp=elt::oldb::CiiOldbUtil::Now(), elt::oldb::CiiOldbDpQuality quality=elt::oldb::CiiOldbDpQuality::OK, bool is_disable_publishing=false)
 
boost::future< typename CiiOldbDataPointAsync< T >::OldbDataSetQuality (elt::oldb::CiiOldbDpQuality quality, bool is_disable_publishing=false)
 
- Public Member Functions inherited from hlcc::oldbmux::CiiOldbDataPointAsync< T >::OldbData
 OldbData (elt::oldb::CiiOldbDpQuality quality)
 
 OldbData (std::optional< T > value, std::optional< int64_t > timestamp, std::optional< elt::oldb::CiiOldbDpQuality > quality)
 
virtual ~OldbData ()=default
 Destructor.
 
 OldbData (const OldbData &)=delete
 
OldbDataoperator= (const OldbData &)=delete
 
 OldbData (OldbData &&)=default
 
OldbDataoperator= (OldbData &&)=default
 
std::optional< T > GetValue () const
 
void SetValue (T value)
 
std::optional< int64_t > GetTimestamp () const
 
void SetTimestamp (int64_t timestamp)
 
std::optional< elt::oldb::CiiOldbDpQuality > GetQuality () const
 
 CiiOldbDataPointAsync (std::string name, std::shared_ptr< elt::oldb::CiiOldbDataPoint< T > > delegate, boost::asio::thread_pool &async_exec, const log4cplus::Logger &logger, std::size_t buffer_capacity=1)
 Constructor.
 
std::shared_ptr< elt::oldb::CiiOldbDpValue< T > > ReadValue (bool check_bad_quality=true)
 
boost::future< typename CiiOldbDataPointAsync< T >::OldbDataWriteValue (const T &value, int64_t timestamp=elt::oldb::CiiOldbUtil::Now(), elt::oldb::CiiOldbDpQuality quality=elt::oldb::CiiOldbDpQuality::OK, bool is_disable_publishing=false)
 
boost::future< typename CiiOldbDataPointAsync< T >::OldbDataSetQuality (elt::oldb::CiiOldbDpQuality quality, bool is_disable_publishing=false)
 

Detailed Description

template<typename T>
struct hlcc::oldbmux::CiiOldbDataPointAsync< T >::OldbDataWithPromise

Value type for data for buffering and writing to OLDB. This subclass is used internally by CiiOldbDataPointAsync.

Constructor & Destructor Documentation

◆ OldbDataWithPromise() [1/3]

template<typename T>
hlcc::oldbmux::CiiOldbDataPointAsync< T >::OldbDataWithPromise::OldbDataWithPromise ( std::optional< T > value,
std::optional< int64_t > timestamp,
std::optional< elt::oldb::CiiOldbDpQuality > quality,
boost::promise< OldbData > && promise )
inline

◆ ~OldbDataWithPromise()

template<typename T>
virtual hlcc::oldbmux::CiiOldbDataPointAsync< T >::OldbDataWithPromise::~OldbDataWithPromise ( )
virtualdefault

◆ OldbDataWithPromise() [2/3]

template<typename T>
hlcc::oldbmux::CiiOldbDataPointAsync< T >::OldbDataWithPromise::OldbDataWithPromise ( const OldbDataWithPromise & )
delete

◆ OldbDataWithPromise() [3/3]

template<typename T>
hlcc::oldbmux::CiiOldbDataPointAsync< T >::OldbDataWithPromise::OldbDataWithPromise ( OldbDataWithPromise && other)
default

◆ ~CiiOldbDataPointAsync()

Member Function Documentation

◆ CiiOldbDataPointAsync()

hlcc::oldbmux::CiiOldbDataPointAsync< T >::CiiOldbDataPointAsync ( std::string name,
std::shared_ptr< elt::oldb::CiiOldbDataPoint< T > > delegate,
boost::asio::thread_pool & async_exec,
const log4cplus::Logger & logger,
std::size_t buffer_capacity = 1 )

Constructor.

◆ GetPromise()

template<typename T>
boost::promise< CiiOldbDataPointAsync< T >::OldbData > * hlcc::oldbmux::CiiOldbDataPointAsync< T >::OldbDataWithPromise::GetPromise ( )
inline

◆ operator=() [1/2]

template<typename T>
OldbDataWithPromise & hlcc::oldbmux::CiiOldbDataPointAsync< T >::OldbDataWithPromise::operator= ( const OldbDataWithPromise & )
delete

◆ operator=() [2/2]

template<typename T>
OldbDataWithPromise & hlcc::oldbmux::CiiOldbDataPointAsync< T >::OldbDataWithPromise::operator= ( OldbDataWithPromise && other)
default

◆ ReadValue()

std::shared_ptr< elt::oldb::CiiOldbDpValue< T > > hlcc::oldbmux::CiiOldbDataPointAsync< T >::ReadValue ( bool check_bad_quality = true)

◆ SetQuality()

boost::future< typename CiiOldbDataPointAsync< T >::OldbData > hlcc::oldbmux::CiiOldbDataPointAsync< T >::SetQuality ( elt::oldb::CiiOldbDpQuality quality,
bool is_disable_publishing = false )

◆ WriteValue()

boost::future< typename CiiOldbDataPointAsync< T >::OldbData > hlcc::oldbmux::CiiOldbDataPointAsync< T >::WriteValue ( const T & value,
int64_t timestamp = elt::oldb::CiiOldbUtil::Now(),
elt::oldb::CiiOldbDpQuality quality = elt::oldb::CiiOldbDpQuality::OK,
bool is_disable_publishing = false )

Note that for using nested class CiiOldbDataPointAsync<T>::OldbData as a template parameter, the "typename" keyword has to be added. Somehow because OldbData depends on template parameter T only through its outer type CiiOldbDataPointAsync. See also upcoming C++ change http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2018/p0634r3.html


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