MADNESS 0.10.1
madness::detail::TaskHandlerInfo< refT, functionT > Struct Template Reference

Serialization container for sending tasks to remote nodes. More...

#include <world_task_queue.h>

Collaboration diagram for madness::detail::TaskHandlerInfo< refT, functionT >:

Public Member Functions

 TaskHandlerInfo ()=default
 TaskHandlerInfo (const refT &ref, functionT func, const TaskAttributes &attr)
 Construct task info object.
template<typename Archive>
void serialize (const Archive &ar)
 Serialization of an object.

Public Attributes

TaskAttributes attr
 Task attributes.
functionT func
 A task function.
refT ref
 Remote reference for a task result future.

Private Member Functions

template<typename fnT, typename Archive>
std::enable_if<!is_any_function_pointer_v< fnT > >::type serialize_internal (const Archive &ar)
 Serialization for non- function pointers and member function pointers.
template<typename fnT, typename Archive>
std::enable_if< is_any_function_pointer_v< fnT > >::type serialize_internal (const Archive &ar)
 Serialization for function pointers and member function pointers.

Detailed Description

template<typename refT, typename functionT>
struct madness::detail::TaskHandlerInfo< refT, functionT >

Serialization container for sending tasks to remote nodes.

Attention
This struct is for internal use only. You should not use this class directly.
Template Parameters
refTThe remote reference type for task result future.
functionTThe task function type.

Constructor & Destructor Documentation

◆ TaskHandlerInfo() [1/2]

template<typename refT, typename functionT>
madness::detail::TaskHandlerInfo< refT, functionT >::TaskHandlerInfo ( )
default

◆ TaskHandlerInfo() [2/2]

template<typename refT, typename functionT>
madness::detail::TaskHandlerInfo< refT, functionT >::TaskHandlerInfo ( const refT & ref,
functionT func,
const TaskAttributes & attr )
inline

Construct task info object.

Parameters
[in]refRemote reference to the result future.
[in]funcThe task function.
[in]attrThe task attrubutes.

References attr, func, and ref.

Member Function Documentation

◆ serialize()

template<typename refT, typename functionT>
template<typename Archive>
void madness::detail::TaskHandlerInfo< refT, functionT >::serialize ( const Archive & ar)
inline

Serialization of an object.

Template Parameters
ArchiveThe serialization archive type.
Parameters
[in,out]arThe serialization archive.

References serialize_internal().

◆ serialize_internal() [1/2]

template<typename refT, typename functionT>
template<typename fnT, typename Archive>
std::enable_if<!is_any_function_pointer_v< fnT > >::type madness::detail::TaskHandlerInfo< refT, functionT >::serialize_internal ( const Archive & ar)
inlineprivate

Serialization for non- function pointers and member function pointers.

Template Parameters
fnTThe function type.
ArchiveThe serialization archive type.
Parameters
[in,out]arThe serialization archive.

References attr, func, and ref.

◆ serialize_internal() [2/2]

template<typename refT, typename functionT>
template<typename fnT, typename Archive>
std::enable_if< is_any_function_pointer_v< fnT > >::type madness::detail::TaskHandlerInfo< refT, functionT >::serialize_internal ( const Archive & ar)
inlineprivate

Serialization for function pointers and member function pointers.

Template Parameters
fnTThe function type.
ArchiveThe serialization archive type.
Parameters
[in,out]arThe serialization archive.

References attr, func, and ref.

Referenced by serialize().

Member Data Documentation

◆ attr

template<typename refT, typename functionT>
TaskAttributes madness::detail::TaskHandlerInfo< refT, functionT >::attr

Task attributes.

Referenced by TaskHandlerInfo(), and serialize_internal().

◆ func

template<typename refT, typename functionT>
functionT madness::detail::TaskHandlerInfo< refT, functionT >::func

A task function.

Referenced by TaskHandlerInfo(), and serialize_internal().

◆ ref

template<typename refT, typename functionT>
refT madness::detail::TaskHandlerInfo< refT, functionT >::ref

Remote reference for a task result future.

Referenced by TaskHandlerInfo(), and serialize_internal().


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