TPIE

11a2c2d
tpie::pipelining::bits::pair_factory< fact1_t, fact2_t > Class Template Reference

Inherits tpie::pipelining::bits::pair_factory_base< pair_factory< fact1_t, fact2_t > >.

Public Types

template<typename dest_t >
using constructed_type = typename fact1_t::template constructed_type< typename fact2_t::template constructed_type< dest_t > >
 

Public Member Functions

 pair_factory (const pair_factory &)=delete
 
 pair_factory (pair_factory &&)=default
 
pair_factoryoperator= (const pair_factory &)=delete
 
pair_factoryoperator= (pair_factory &&)=default
 
 pair_factory (fact1_t &&fact1, fact2_t &&fact2)
 
template<typename dest_t >
constructed_type< dest_t > construct (dest_t &&dest)
 
template<typename dest_t >
constructed_type< dest_t > construct_copy (dest_t &&dest)
 
void recursive_connected_check () const
 
void hook_initialization_impl (factory_init_hook *hook)
 
double memory () const noexcept
 
void name (const std::string &n, priority_type)
 
void push_breadcrumb (const std::string &n)
 
void hook_initialization (factory_init_hook *hook)
 See factory_base::hook_initialization. More...
 
pipe_t record (size_t idx, pipe_t &&pipe) const
 Internal - used by subclasses to record references to node_maps for a later connectivity check. More...
 
void assert_connected () const
 
pair_factory< fact1_t, fact2_t > & finalize ()
 Signal that this factory is used to instantiate a pipeline_impl, i.e. More...
 
void set_destination_kind_push ()
 
void set_destination_kind_pull ()
 

Public Attributes

fact1_t fact1
 
fact2_t fact2
 

Detailed Description

template<typename fact1_t, typename fact2_t>
class tpie::pipelining::bits::pair_factory< fact1_t, fact2_t >

Definition at line 147 of file pair_factory.h.

Member Function Documentation

◆ finalize()

pair_factory< fact1_t, fact2_t > & tpie::pipelining::bits::pair_factory_base< pair_factory< fact1_t, fact2_t > >::finalize
inlineinherited

Signal that this factory is used to instantiate a pipeline_impl, i.e.

that it was made by piping together a pipe_begin and a pipe_end.

Definition at line 112 of file pair_factory.h.

112  {
113  m_final = true;
114  return self();
115  }

◆ hook_initialization()

void tpie::pipelining::bits::pair_factory_base< pair_factory< fact1_t, fact2_t > >::hook_initialization ( factory_init_hook hook)
inlineinherited

See factory_base::hook_initialization.

Definition at line 70 of file pair_factory.h.

70  {
71  self().hook_initialization_impl(hook);
72  }

◆ record()

pipe_t tpie::pipelining::bits::pair_factory_base< pair_factory< fact1_t, fact2_t > >::record ( size_t  idx,
pipe_t &&  pipe 
) const
inlineinherited

Internal - used by subclasses to record references to node_maps for a later connectivity check.

Definition at line 79 of file pair_factory.h.

79  {
80  m_maps[idx] = pipe.get_node_map();
81  if (idx == 0 && m_final) {
82  // Now is the opportunity to check that the constructed pipeline is
83  // connected.
84  assert_connected();
85  self().recursive_connected_check();
86  }
87  return std::move(pipe);
88  }

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