Intel(R) Threading Building Blocks Doxygen Documentation  version 4.2.3
tbb::concurrent_vector< T, A >::internal_loop_guide Class Reference

Exception-aware helper class for filling a segment by exception-danger operators of user class. More...

Inheritance diagram for tbb::concurrent_vector< T, A >::internal_loop_guide:
Collaboration diagram for tbb::concurrent_vector< T, A >::internal_loop_guide:

Public Member Functions

 internal_loop_guide (size_type ntrials, void *ptr)
 
void init ()
 
void init (const void *src)
 
void copy (const void *src)
 
void assign (const void *src)
 
void move_assign (const void *src)
 
void move_construct (const void *src)
 
template<class I >
void iterate (I &src)
 
 ~internal_loop_guide ()
 

Static Public Member Functions

static const T * as_const_pointer (const void *ptr)
 
static T * as_pointer (const void *src)
 

Public Attributes

const pointer array
 
const size_type n
 
size_type i
 

Additional Inherited Members

- Private Member Functions inherited from tbb::internal::no_copy
 no_copy ()
 Allow default construction. More...
 

Detailed Description

template<typename T, class A>
class tbb::concurrent_vector< T, A >::internal_loop_guide

Exception-aware helper class for filling a segment by exception-danger operators of user class.

Definition at line 1099 of file concurrent_vector.h.

Constructor & Destructor Documentation

◆ internal_loop_guide()

template<typename T, class A>
tbb::concurrent_vector< T, A >::internal_loop_guide::internal_loop_guide ( size_type  ntrials,
void ptr 
)
inline

◆ ~internal_loop_guide()

template<typename T, class A>
tbb::concurrent_vector< T, A >::internal_loop_guide::~internal_loop_guide ( )
inline

Definition at line 1124 of file concurrent_vector.h.

1124  {
1125  if(i < n) {// if an exception was raised, fill the rest of items with zeros
1127  }
1128  }
void handle_unconstructed_elements(T *array, size_t n_of_elements)
Exception helper function.

References tbb::concurrent_vector< T, A >::internal_loop_guide::array, tbb::internal::handle_unconstructed_elements(), tbb::concurrent_vector< T, A >::internal_loop_guide::i, and tbb::concurrent_vector< T, A >::internal_loop_guide::n.

Here is the call graph for this function:

Member Function Documentation

◆ as_const_pointer()

template<typename T, class A>
static const T* tbb::concurrent_vector< T, A >::internal_loop_guide::as_const_pointer ( const void ptr)
inlinestatic

Definition at line 1105 of file concurrent_vector.h.

1105 { return static_cast<const T *>(ptr); }

Referenced by tbb::concurrent_vector< T, A >::internal_loop_guide::assign(), tbb::concurrent_vector< T, A >::internal_loop_guide::copy(), and tbb::concurrent_vector< T, A >::internal_loop_guide::init().

Here is the caller graph for this function:

◆ as_pointer()

template<typename T, class A>
static T* tbb::concurrent_vector< T, A >::internal_loop_guide::as_pointer ( const void src)
inlinestatic

Definition at line 1106 of file concurrent_vector.h.

1106 { return static_cast<T*>(const_cast<void *>(src)); }

Referenced by tbb::concurrent_vector< T, A >::internal_loop_guide::move_assign(), and tbb::concurrent_vector< T, A >::internal_loop_guide::move_construct().

Here is the caller graph for this function:

◆ assign()

◆ copy()

◆ init() [1/2]

◆ init() [2/2]

◆ iterate()

template<typename T, class A>
template<class I >
void tbb::concurrent_vector< T, A >::internal_loop_guide::iterate ( I &  src)
inline

◆ move_assign()

template<typename T, class A>
void tbb::concurrent_vector< T, A >::internal_loop_guide::move_assign ( const void src)
inline

◆ move_construct()

template<typename T, class A>
void tbb::concurrent_vector< T, A >::internal_loop_guide::move_construct ( const void src)
inline

Member Data Documentation

◆ array

◆ i

◆ n


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

Copyright © 2005-2019 Intel Corporation. All Rights Reserved.

Intel, Pentium, Intel Xeon, Itanium, Intel XScale and VTune are registered trademarks or trademarks of Intel Corporation or its subsidiaries in the United States and other countries.

* Other names and brands may be claimed as the property of others.