Intel(R) Threading Building Blocks Doxygen Documentation  version 4.2.3
tbb::flow::interface9::gfx_buffer< T > Class Template Reference

#include <gfx_factory.h>

Collaboration diagram for tbb::flow::interface9::gfx_buffer< T >:

Public Types

typedef std::vector< T >::iterator iterator
 
typedef std::vector< T >::const_iterator const_iterator
 
typedef std::size_t size_type
 

Public Member Functions

 gfx_buffer ()
 
 gfx_buffer (size_type size)
 
T * data ()
 
const T * data () const
 
size_type size () const
 
const_iterator cbegin () const
 
const_iterator cend () const
 
iterator begin ()
 
iterator end ()
 
T & operator[] (size_type pos)
 
const T & operator[] (size_type pos) const
 

Private Attributes

std::shared_ptr< std::vector< T > > my_vector_ptr
 

Detailed Description

template<typename T>
class tbb::flow::interface9::gfx_buffer< T >

Definition at line 44 of file gfx_factory.h.

Member Typedef Documentation

◆ const_iterator

template<typename T>
typedef std::vector<T>::const_iterator tbb::flow::interface9::gfx_buffer< T >::const_iterator

Definition at line 117 of file gfx_factory.h.

◆ iterator

template<typename T>
typedef std::vector<T>::iterator tbb::flow::interface9::gfx_buffer< T >::iterator

Definition at line 116 of file gfx_factory.h.

◆ size_type

template<typename T>
typedef std::size_t tbb::flow::interface9::gfx_buffer< T >::size_type

Definition at line 119 of file gfx_factory.h.

Constructor & Destructor Documentation

◆ gfx_buffer() [1/2]

template<typename T>
tbb::flow::interface9::gfx_buffer< T >::gfx_buffer ( )
inline

Definition at line 121 of file gfx_factory.h.

121 : my_vector_ptr(std::make_shared< std::vector<T> >()) {}
std::shared_ptr< std::vector< T > > my_vector_ptr
Definition: gfx_factory.h:138

◆ gfx_buffer() [2/2]

template<typename T>
tbb::flow::interface9::gfx_buffer< T >::gfx_buffer ( size_type  size)
inline

Definition at line 122 of file gfx_factory.h.

122 : my_vector_ptr(std::make_shared< std::vector<T> >(size)) {}
std::shared_ptr< std::vector< T > > my_vector_ptr
Definition: gfx_factory.h:138

Member Function Documentation

◆ begin()

template<typename T>
iterator tbb::flow::interface9::gfx_buffer< T >::begin ( )
inline

Definition at line 131 of file gfx_factory.h.

131 { return my_vector_ptr->begin(); }
std::shared_ptr< std::vector< T > > my_vector_ptr
Definition: gfx_factory.h:138

References tbb::flow::interface9::gfx_buffer< T >::my_vector_ptr.

◆ cbegin()

template<typename T>
const_iterator tbb::flow::interface9::gfx_buffer< T >::cbegin ( ) const
inline

Definition at line 129 of file gfx_factory.h.

129 { return my_vector_ptr->cbegin(); }
std::shared_ptr< std::vector< T > > my_vector_ptr
Definition: gfx_factory.h:138

References tbb::flow::interface9::gfx_buffer< T >::my_vector_ptr.

◆ cend()

template<typename T>
const_iterator tbb::flow::interface9::gfx_buffer< T >::cend ( ) const
inline

Definition at line 130 of file gfx_factory.h.

130 { return my_vector_ptr->cend(); }
std::shared_ptr< std::vector< T > > my_vector_ptr
Definition: gfx_factory.h:138

References tbb::flow::interface9::gfx_buffer< T >::my_vector_ptr.

◆ data() [1/2]

template<typename T>
T* tbb::flow::interface9::gfx_buffer< T >::data ( )
inline

Definition at line 124 of file gfx_factory.h.

124 { return &(my_vector_ptr->front()); }
std::shared_ptr< std::vector< T > > my_vector_ptr
Definition: gfx_factory.h:138

References tbb::flow::interface9::gfx_buffer< T >::my_vector_ptr.

Referenced by tbb::flow::interface9::gfx_offload::raw_data(), tbb::flow::interface9::gfx_factory::share_data(), and tbb::flow::interface9::gfx_factory::unshare_data().

Here is the caller graph for this function:

◆ data() [2/2]

template<typename T>
const T* tbb::flow::interface9::gfx_buffer< T >::data ( ) const
inline

Definition at line 125 of file gfx_factory.h.

125 { return &(my_vector_ptr->front()); }
std::shared_ptr< std::vector< T > > my_vector_ptr
Definition: gfx_factory.h:138

References tbb::flow::interface9::gfx_buffer< T >::my_vector_ptr.

◆ end()

template<typename T>
iterator tbb::flow::interface9::gfx_buffer< T >::end ( )
inline

Definition at line 132 of file gfx_factory.h.

132 { return my_vector_ptr->end(); }
std::shared_ptr< std::vector< T > > my_vector_ptr
Definition: gfx_factory.h:138

References tbb::flow::interface9::gfx_buffer< T >::my_vector_ptr.

◆ operator[]() [1/2]

template<typename T>
T& tbb::flow::interface9::gfx_buffer< T >::operator[] ( size_type  pos)
inline

Definition at line 134 of file gfx_factory.h.

134 { return (*my_vector_ptr)[pos]; }
std::shared_ptr< std::vector< T > > my_vector_ptr
Definition: gfx_factory.h:138

References tbb::flow::interface9::gfx_buffer< T >::my_vector_ptr.

◆ operator[]() [2/2]

template<typename T>
const T& tbb::flow::interface9::gfx_buffer< T >::operator[] ( size_type  pos) const
inline

Definition at line 135 of file gfx_factory.h.

135 { return (*my_vector_ptr)[pos]; }
std::shared_ptr< std::vector< T > > my_vector_ptr
Definition: gfx_factory.h:138

References tbb::flow::interface9::gfx_buffer< T >::my_vector_ptr.

◆ size()

template<typename T>
size_type tbb::flow::interface9::gfx_buffer< T >::size ( ) const
inline

Definition at line 127 of file gfx_factory.h.

127 { return my_vector_ptr->size(); }
std::shared_ptr< std::vector< T > > my_vector_ptr
Definition: gfx_factory.h:138

References tbb::flow::interface9::gfx_buffer< T >::my_vector_ptr.

Referenced by tbb::flow::interface9::gfx_factory::share_data().

Here is the caller graph for this function:

Member Data Documentation

◆ my_vector_ptr


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.