tbb::internal::concurrent_vector_base_v3::segment_value_t Class Reference

`#include <concurrent_vector.h>`

Collaboration diagram for tbb::internal::concurrent_vector_base_v3::segment_value_t:

## Public Member Functions

template<typename T >
T * | pointer () const

## Private Member Functions

| segment_value_t (void *an_array)

## Private Attributes

void * | array

## Friends

class | segment_t
bool | operator== (segment_value_t const &lhs, segment_not_used)
bool | operator== (segment_value_t const &lhs, segment_allocated)
bool | operator== (segment_value_t const &lhs, segment_allocation_failed)
template<typename argument_type >
bool | operator!= (segment_value_t const &lhs, argument_type arg)

## Detailed Description

Definition at line 104 of file concurrent_vector.h.

## Constructor & Destructor Documentation

## segment_value_t()

tbb::internal::concurrent_vector_base_v3::segment_value_t::segment_value_t | ( | void * | an_array | ) |

inline explicit private

Definition at line 109 of file concurrent_vector.h.

:array(an_array) {}

## Member Function Documentation

## pointer()

template<typename T >

T* tbb::internal::concurrent_vector_base_v3::segment_value_t::pointer | ( |  | ) | const

inline

Definition at line 118 of file concurrent_vector.h.

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

References array.

Referenced by tbb::internal::concurrent_vector_base_v3::helper::cleanup(), tbb::internal::concurrent_vector_base_v3::helper::enable_segment(), tbb::concurrent_vector< padded_element, padded_allocator_type >::internal_free_segments(), tbb::concurrent_vector< padded_element, padded_allocator_type >::internal_subscript(), and tbb::concurrent_vector< padded_element, padded_allocator_type >::internal_subscript_with_exceptions().

Here is the caller graph for this function:

## Friends And Related Function Documentation

## operator!=

template<typename argument_type >

bool operator!= | ( | segment_value_t const & | lhs,
|  | argument_type | arg
| ) |  |

friend

Definition at line 115 of file concurrent_vector.h.

{ return ! (lhs == arg);}

## operator== [1/3]

bool operator== | ( | segment_value_t const & | lhs,
|  | segment_allocated |
| ) |  |

friend

Definition at line 112 of file concurrent_vector.h.

{ return lhs.array > internal::vector_allocation_error_flag;}

## operator== [2/3]

bool operator== | ( | segment_value_t const & | lhs,
|  | segment_allocation_failed |
| ) |  |

friend

Definition at line 113 of file concurrent_vector.h.

{ return lhs.array == internal::vector_allocation_error_flag;}

## operator== [3/3]

bool operator== | ( | segment_value_t const & | lhs,
|  | segment_not_used |
| ) |  |

friend

Definition at line 111 of file concurrent_vector.h.

{ return lhs.array == 0;}

## segment_t

friend class segment_t

friend

Definition at line 108 of file concurrent_vector.h.

## Member Data Documentation

## array

void* tbb::internal::concurrent_vector_base_v3::segment_value_t::array

private

Definition at line 105 of file concurrent_vector.h.

Referenced by pointer().

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

- concurrent_vector.h

tbb::internal::vector_allocation_error_flag
static void *const vector_allocation_error_flag
Bad allocation marker.
Definition: concurrent_vector.h:73
tbb::internal::concurrent_vector_base_v3::segment_value_t::array
void * array
Definition: concurrent_vector.h:105

Copyright © 2005-2020 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.