| The Gaudi Framework v28r2-patches (bc4ad17a)

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

Public Types | Public Member Functions | Private Attributes | List of all members
boost::threadpool::detail::future_impl_task_func< Future, Function > Class Template Reference

`#include <src/threadpool/boost/threadpool/detail/future.hpp>`

## Public Types
typedef void | result_type
| Indicates the functor's result type. More...
typedef Function | function_type
| Indicates the function's type. More...
typedef result_of< function_type()>::type | future_result_type
| Indicates the future's result type. More...
typedef Future< future_result_type > | future_type
| Indicates the future's type. More...

## Public Member Functions
| BOOST_STATIC_ASSERT (function_traits< function_type()>::arity==0)
| BOOST_STATIC_ASSERT (!is_void< future_result_type >::value)
| future_impl_task_func (function_type const &function, shared_ptr< future_type > const &future)
void | operator() ()

## Private Attributes
function_type | m_function
shared_ptr< future_type > | m_future

## Detailed Description

### template<template< typename > class Future, typename Function>
class boost::threadpool::detail::future_impl_task_func< Future, Function >

Definition at line 164 of file future.hpp.

## Member Typedef Documentation

template<template< typename > class Future, typename Function >

typedef Function boost::threadpool::detail::future_impl_task_func< Future, Function >::function_type

Indicates the function's type.

Definition at line 170 of file future.hpp.

template<template< typename > class Future, typename Function >

typedef result_of<function_type()>::type boost::threadpool::detail::future_impl_task_func< Future, Function >::future_result_type

Indicates the future's result type.

Definition at line 171 of file future.hpp.

template<template< typename > class Future, typename Function >

typedef Future<future_result_type> boost::threadpool::detail::future_impl_task_func< Future, Function >::future_type

Indicates the future's type.

Definition at line 172 of file future.hpp.

template<template< typename > class Future, typename Function >

typedef void boost::threadpool::detail::future_impl_task_func< Future, Function >::result_type

Indicates the functor's result type.

Definition at line 168 of file future.hpp.

## Constructor & Destructor Documentation

template<template< typename > class Future, typename Function >

boost::threadpool::detail::future_impl_task_func< Future, Function >::future_impl_task_func | ( | function_type const & | function,
|  | shared_ptr< future_type > const & | future
| ) |  |
| inline

Definition at line 185 of file future.hpp.

186 : m_function(function)
187 , m_future(future)
188 {
189 }
boost::threadpool::detail::future_impl_task_func::m_future
shared_ptr< future_type > m_future
Definition: future.hpp:182
boost::threadpool::detail::future_impl_task_func::m_function
function_type m_function
Definition: future.hpp:181

## Member Function Documentation

template<template< typename > class Future, typename Function >

boost::threadpool::detail::future_impl_task_func< Future, Function >::BOOST_STATIC_ASSERT | ( | function_traits< function_type()>::arity | = `=0` | ) |

template<template< typename > class Future, typename Function >

boost::threadpool::detail::future_impl_task_func< Future, Function >::BOOST_STATIC_ASSERT | ( | !is_void< future_result_type >::value |  | ) |

template<template< typename > class Future, typename Function >

void boost::threadpool::detail::future_impl_task_func< Future, Function >::operator() | ( | void |  | ) |
| inline

Definition at line 191 of file future.hpp.

192 {
193 if(m_function)
194 {
195 m_future->set_execution_status(true);
196 if(!m_future->is_cancelled())
197 {
198 // TODO future exeception handling
199 m_future->set_value(m_function());
200 }
201 m_future->set_execution_status(false); // TODO consider exceptions
202 }
203 }
boost::threadpool::detail::future_impl_task_func::m_future
shared_ptr< future_type > m_future
Definition: future.hpp:182
boost::threadpool::detail::future_impl_task_func::m_function
function_type m_function
Definition: future.hpp:181

## Member Data Documentation

template<template< typename > class Future, typename Function >

function_type boost::threadpool::detail::future_impl_task_func< Future, Function >::m_function
| private

Definition at line 181 of file future.hpp.

template<template< typename > class Future, typename Function >

shared_ptr<future_type> boost::threadpool::detail::future_impl_task_func< Future, Function >::m_future
| private

Definition at line 182 of file future.hpp.

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

- GaudiMTTools/src/threadpool/boost/threadpool/detail/future.hpp