ViennaCL - The Vienna Computing Library  1.5.2
Data Structures | Namespaces | Functions
vector_proxy.hpp File Reference

Proxy classes for vectors. More...

#include "viennacl/forwards.h"
#include "viennacl/range.hpp"
#include "viennacl/slice.hpp"
#include "viennacl/vector.hpp"
#include "viennacl/tools/entry_proxy.hpp"

Go to the source code of this file.

Data Structures

class  vector_range< VectorType >
 Class for representing non-strided subvectors of a bigger vector x. More...
 
class  vector_slice< VectorType >
 Class for representing strided subvectors of a bigger vector x. More...
 

Namespaces

 viennacl
 Main namespace in ViennaCL. Holds all the basic types such as vector, matrix, etc. and defines operations upon them.
 

Functions

template<typename VectorType , typename SCALARTYPE >
void copy (const VectorType &cpu_vector, vector_range< vector< SCALARTYPE > > &gpu_vector_range)
 
template<typename CPUVECTOR , typename VectorType >
void fast_copy (const CPUVECTOR &cpu_vec, vector_range< VectorType > &gpu_vec)
 Transfer from a cpu vector to a gpu vector. Convenience wrapper for viennacl::linalg::fast_copy(cpu_vec.begin(), cpu_vec.end(), gpu_vec.begin());. More...
 
template<typename SCALARTYPE , typename VectorType >
void copy (vector_range< vector< SCALARTYPE > > const &gpu_vector_range, VectorType &cpu_vector)
 
template<typename VectorType , typename CPUVECTOR >
void fast_copy (vector_range< VectorType > const &gpu_vec, CPUVECTOR &cpu_vec)
 Transfer from a GPU vector range to a CPU vector. Convenience wrapper for viennacl::linalg::fast_copy(gpu_vec.begin(), gpu_vec.end(), cpu_vec.begin());. More...
 
template<typename VectorType >
vector_range< VectorType > project (VectorType &vec, viennacl::range const &r1)
 
template<typename VectorType >
vector_range< VectorType > project (viennacl::vector_range< VectorType > &vec, viennacl::range const &r1)
 
template<typename VectorType , typename SCALARTYPE >
void copy (const VectorType &cpu_vector, vector_slice< vector< SCALARTYPE > > &gpu_vector_slice)
 
template<typename VectorType , typename SCALARTYPE >
void copy (vector_slice< vector< SCALARTYPE > > const &gpu_vector_slice, VectorType &cpu_vector)
 
template<typename VectorType >
vector_slice< VectorType > project (VectorType &vec, viennacl::slice const &s1)
 
template<typename VectorType >
vector_slice< VectorType > project (viennacl::vector_slice< VectorType > &vec, viennacl::slice const &s1)
 
template<typename VectorType >
vector_slice< VectorType > project (viennacl::vector_slice< VectorType > &vec, viennacl::range const &r1)
 
template<typename VectorType >
vector_slice< VectorType > project (viennacl::vector_range< VectorType > &vec, viennacl::slice const &s1)
 

Detailed Description

Proxy classes for vectors.