ttg 1.0.0
Template Task Graph (TTG): flowgraph-based programming model for high-performance distributed-memory algorithms
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Static Public Attributes | Friends | List of all members
ttg::detail::boost_optimized_oarchive< StreamOrStreambuf > Class Template Reference

optimized data-only serializer More...

#include <archive.h>

Inherits StreamOrStreambuf, and boost::archive::binary_oarchive_impl< boost_optimized_oarchive< StreamOrStreambuf >, std::ostream::char_type, std::ostream::traits_type >.

Public Types

using pbase_type = StreamOrStreambuf
 
using base_type = boost::archive::binary_oarchive_impl< boost_optimized_oarchive< StreamOrStreambuf >, std::ostream::char_type, std::ostream::traits_type >
 

Public Member Functions

 boost_optimized_oarchive ()
 
 boost_optimized_oarchive (StreamOrStreambuf sbuf)
 
template<typename Arg >
 boost_optimized_oarchive (Arg &&arg)
 
void save_object (const void *x, const boost::archive::detail::basic_oserializer &bos)
 
template<class T >
auto & operator<< (const T &t)
 
template<class T >
auto & operator& (const T &t)
 
const auto & streambuf () const
 
const auto & stream () const
 

Static Public Attributes

static constexpr bool pbase_derived_from_stdstreambuf = std::is_base_of_v<std::streambuf, pbase_type>
 

Friends

class boost::archive::save_access
 
class boost::archive::detail::common_oarchive< StreamOrStreambuf >
 

Detailed Description

template<typename StreamOrStreambuf>
class ttg::detail::boost_optimized_oarchive< StreamOrStreambuf >

optimized data-only serializer

skips metadata (class version, etc.) by providing optimized save_override function that will be called by boost::archive::binary_oarchive_impl::save_override

Definition at line 92 of file archive.h.

Member Typedef Documentation

◆ base_type

template<typename StreamOrStreambuf >
using ttg::detail::boost_optimized_oarchive< StreamOrStreambuf >::base_type = boost::archive::binary_oarchive_impl<boost_optimized_oarchive<StreamOrStreambuf>, std::ostream::char_type, std::ostream::traits_type>

Definition at line 98 of file archive.h.

◆ pbase_type

template<typename StreamOrStreambuf >
using ttg::detail::boost_optimized_oarchive< StreamOrStreambuf >::pbase_type = StreamOrStreambuf

Definition at line 97 of file archive.h.

Constructor & Destructor Documentation

◆ boost_optimized_oarchive() [1/3]

template<typename StreamOrStreambuf >
ttg::detail::boost_optimized_oarchive< StreamOrStreambuf >::boost_optimized_oarchive ( )
inline

Definition at line 114 of file archive.h.

◆ boost_optimized_oarchive() [2/3]

template<typename StreamOrStreambuf >
ttg::detail::boost_optimized_oarchive< StreamOrStreambuf >::boost_optimized_oarchive ( StreamOrStreambuf  sbuf)
inline

Definition at line 117 of file archive.h.

◆ boost_optimized_oarchive() [3/3]

template<typename StreamOrStreambuf >
template<typename Arg >
ttg::detail::boost_optimized_oarchive< StreamOrStreambuf >::boost_optimized_oarchive ( Arg &&  arg)
inline

Definition at line 122 of file archive.h.

Member Function Documentation

◆ operator&()

template<typename StreamOrStreambuf >
template<class T >
auto & ttg::detail::boost_optimized_oarchive< StreamOrStreambuf >::operator& ( const T &  t)
inline

Definition at line 197 of file archive.h.

◆ operator<<()

template<typename StreamOrStreambuf >
template<class T >
auto & ttg::detail::boost_optimized_oarchive< StreamOrStreambuf >::operator<< ( const T &  t)
inline

Definition at line 190 of file archive.h.

Here is the call graph for this function:

◆ save() [1/2]

template<typename StreamOrStreambuf >
void ttg::detail::boost_optimized_oarchive< StreamOrStreambuf >::save ( const bool  t)
inline

override default implementations in base_type provided by basic_binary_oprimitive<Archive>

Definition at line 158 of file archive.h.

Here is the call graph for this function:

◆ save() [2/2]

template<typename StreamOrStreambuf >
template<class T >
void ttg::detail::boost_optimized_oarchive< StreamOrStreambuf >::save ( const T &  t)
inline

override default implementations in base_type provided by basic_binary_oprimitive<Archive>

Definition at line 151 of file archive.h.

Here is the call graph for this function:

◆ save_array()

template<typename StreamOrStreambuf >
template<class ValueType >
void ttg::detail::boost_optimized_oarchive< StreamOrStreambuf >::save_array ( boost::serialization::array_wrapper< ValueType > const &  a,
unsigned int   
)
inline

override default implementations in base_type provided by basic_binary_oprimitive<Archive>

Definition at line 167 of file archive.h.

Here is the call graph for this function:

◆ save_binary()

template<typename StreamOrStreambuf >
void ttg::detail::boost_optimized_oarchive< StreamOrStreambuf >::save_binary ( const void *  address,
std::size_t  count 
)
inline

override default implementations in base_type provided by basic_binary_oprimitive<Archive>

Definition at line 172 of file archive.h.

Here is the caller graph for this function:

◆ save_object()

template<typename StreamOrStreambuf >
void ttg::detail::boost_optimized_oarchive< StreamOrStreambuf >::save_object ( const void *  x,
const boost::archive::detail::basic_oserializer &  bos 
)
inline

Definition at line 144 of file archive.h.

Here is the call graph for this function:

◆ save_override() [1/6]

template<typename StreamOrStreambuf >
void ttg::detail::boost_optimized_oarchive< StreamOrStreambuf >::save_override ( const boost::archive::class_id_optional_type &  )
inline

these provide optimized implementation that's called by base_type::save_override

Definition at line 134 of file archive.h.

◆ save_override() [2/6]

template<typename StreamOrStreambuf >
void ttg::detail::boost_optimized_oarchive< StreamOrStreambuf >::save_override ( const boost::archive::class_id_reference_type &  t)
inline

these provide optimized implementation that's called by base_type::save_override

Definition at line 140 of file archive.h.

◆ save_override() [3/6]

template<typename StreamOrStreambuf >
void ttg::detail::boost_optimized_oarchive< StreamOrStreambuf >::save_override ( const boost::archive::class_id_type &  t)
inline

these provide optimized implementation that's called by base_type::save_override

Definition at line 139 of file archive.h.

◆ save_override() [4/6]

template<typename StreamOrStreambuf >
void ttg::detail::boost_optimized_oarchive< StreamOrStreambuf >::save_override ( const boost::archive::version_type &  t)
inline

these provide optimized implementation that's called by base_type::save_override

Definition at line 136 of file archive.h.

◆ save_override() [5/6]

template<typename StreamOrStreambuf >
void ttg::detail::boost_optimized_oarchive< StreamOrStreambuf >::save_override ( const boost::serialization::item_version_type &  t)
inline

these provide optimized implementation that's called by base_type::save_override

Definition at line 137 of file archive.h.

◆ save_override() [6/6]

template<typename StreamOrStreambuf >
template<class T >
void ttg::detail::boost_optimized_oarchive< StreamOrStreambuf >::save_override ( const T &  t)
inline

these provide optimized implementation that's called by base_type::save_override

Definition at line 130 of file archive.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ stream()

template<typename StreamOrStreambuf >
const auto & ttg::detail::boost_optimized_oarchive< StreamOrStreambuf >::stream ( ) const
inline

Definition at line 209 of file archive.h.

◆ streambuf()

template<typename StreamOrStreambuf >
const auto & ttg::detail::boost_optimized_oarchive< StreamOrStreambuf >::streambuf ( ) const
inline

Definition at line 201 of file archive.h.

Friends And Related Symbol Documentation

◆ boost::archive::detail::common_oarchive< StreamOrStreambuf >

template<typename StreamOrStreambuf >
friend class boost::archive::detail::common_oarchive< StreamOrStreambuf >
friend

Definition at line 104 of file archive.h.

◆ boost::archive::save_access

template<typename StreamOrStreambuf >
friend class boost::archive::save_access
friend

Definition at line 104 of file archive.h.

Member Data Documentation

◆ pbase_derived_from_stdstreambuf

template<typename StreamOrStreambuf >
constexpr bool ttg::detail::boost_optimized_oarchive< StreamOrStreambuf >::pbase_derived_from_stdstreambuf = std::is_base_of_v<std::streambuf, pbase_type>
staticconstexpr

Definition at line 101 of file archive.h.


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