ViennaCL - The Vienna Computing Library  1.5.1
Public Types | Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes
implicit_vector_base< SCALARTYPE > Class Template Reference

Common base class for representing vectors where the entries are not all stored explicitly. More...

#include <forwards.h>

Inheritance diagram for implicit_vector_base< SCALARTYPE >:
one_vector< SCALARTYPE > scalar_vector< SCALARTYPE > unit_vector< SCALARTYPE > zero_vector< SCALARTYPE >

Public Types

typedef SCALARTYPE const & const_reference
 
typedef SCALARTYPE cpu_value_type
 

Public Member Functions

viennacl::context context () const
 
size_type size () const
 
cpu_value_type value () const
 
bool is_value_static () const
 
vcl_size_t index () const
 
bool has_index () const
 
cpu_value_type operator() (size_type i) const
 
cpu_value_type operator[] (size_type i) const
 

Protected Types

typedef vcl_size_t size_type
 

Protected Member Functions

 implicit_vector_base (size_type s, vcl_size_t i, std::pair< SCALARTYPE, bool > v, viennacl::context ctx)
 
 implicit_vector_base (size_type s, std::pair< SCALARTYPE, bool > v, viennacl::context ctx)
 

Protected Attributes

size_type size_
 
std::pair< bool, vcl_size_tindex_
 
std::pair< SCALARTYPE, bool > value_
 
viennacl::context ctx_
 

Detailed Description

template<typename SCALARTYPE>
class viennacl::implicit_vector_base< SCALARTYPE >

Common base class for representing vectors where the entries are not all stored explicitly.

Typical examples are zero_vector or scalar_vector.

Member Typedef Documentation

typedef SCALARTYPE const& const_reference
typedef SCALARTYPE cpu_value_type
typedef vcl_size_t size_type
protected

Constructor & Destructor Documentation

implicit_vector_base ( size_type  s,
vcl_size_t  i,
std::pair< SCALARTYPE, bool >  v,
viennacl::context  ctx 
)
inlineprotected
implicit_vector_base ( size_type  s,
std::pair< SCALARTYPE, bool >  v,
viennacl::context  ctx 
)
inlineprotected

Member Function Documentation

viennacl::context context ( ) const
inline
bool has_index ( ) const
inline
vcl_size_t index ( ) const
inline
bool is_value_static ( ) const
inline
cpu_value_type operator() ( size_type  i) const
inline
cpu_value_type operator[] ( size_type  i) const
inline
size_type size ( ) const
inline
cpu_value_type value ( ) const
inline

Field Documentation

viennacl::context ctx_
protected
std::pair<bool, vcl_size_t> index_
protected
size_type size_
protected
std::pair<SCALARTYPE, bool> value_
protected

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