ViennaCL - The Vienna Computing Library  1.7.1
Free open-source GPU-accelerated linear algebra and solver library.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
matrix_proxy.hpp File Reference

Proxy classes for matrices. More...

Go to the source code of this file.

Classes

class  viennacl::matrix_range< MatrixType >
 Class for representing non-strided submatrices of a bigger matrix A. More...
 
class  viennacl::matrix_range< matrix_range< MatrixType > >
 
class  viennacl::matrix_slice< MatrixType >
 Class for representing strided submatrices of a bigger matrix A. More...
 
class  viennacl::matrix_slice< matrix_range< MatrixType > >
 

Namespaces

 viennacl
 Main namespace in ViennaCL. Holds all the basic types such as vector, matrix, etc. and defines operations upon them.
 
 viennacl::detail
 Holds implementation details for functionality in the main viennacl-namespace. Not intended for direct use by library users.
 

Functions

template<typename NumericT , typename MatrixT >
NumericT const & viennacl::detail::matrix_access (MatrixT const &A, vcl_size_t i, vcl_size_t j)
 
template<typename NumericT >
NumericT const & viennacl::detail::matrix_access (std::vector< std::vector< NumericT > > const &A, vcl_size_t i, vcl_size_t j)
 
template<typename NumericT , typename MatrixT >
NumericTviennacl::detail::matrix_access (MatrixT &A, vcl_size_t i, vcl_size_t j)
 
template<typename NumericT >
NumericTviennacl::detail::matrix_access (std::vector< std::vector< NumericT > > &A, vcl_size_t i, vcl_size_t j)
 
template<typename CPUMatrixT , typename NumericT >
void viennacl::copy (const CPUMatrixT &cpu_matrix, matrix_range< matrix< NumericT, row_major, 1 > > &gpu_matrix_range)
 
template<typename CPUMatrixT , typename NumericT >
void viennacl::copy (const CPUMatrixT &cpu_matrix, matrix_range< matrix< NumericT, column_major, 1 > > &gpu_matrix_range)
 
template<typename CPUMatrixT , typename NumericT >
void viennacl::copy (matrix_range< matrix< NumericT, row_major, 1 > > const &gpu_matrix_range, CPUMatrixT &cpu_matrix)
 
template<typename CPUMatrixT , typename NumericT >
void viennacl::copy (matrix_range< matrix< NumericT, column_major, 1 > > const &gpu_matrix_range, CPUMatrixT &cpu_matrix)
 
template<typename MatrixType >
matrix_range< MatrixType > viennacl::project (MatrixType const &A, viennacl::range const &r1, viennacl::range const &r2)
 
template<typename MatrixType >
matrix_range< MatrixType > viennacl::project (matrix_range< MatrixType > const &A, viennacl::range const &r1, viennacl::range const &r2)
 
template<typename CPUMatrixT , typename NumericT >
void viennacl::copy (const CPUMatrixT &cpu_matrix, matrix_slice< matrix< NumericT, row_major, 1 > > &gpu_matrix_slice)
 
template<typename CPUMatrixT , typename NumericT >
void viennacl::copy (const CPUMatrixT &cpu_matrix, matrix_slice< matrix< NumericT, column_major, 1 > > &gpu_matrix_slice)
 
template<typename CPUMatrixT , typename NumericT >
void viennacl::copy (matrix_slice< matrix< NumericT, row_major, 1 > > const &gpu_matrix_slice, CPUMatrixT &cpu_matrix)
 
template<typename CPUMatrixT , typename NumericT >
void viennacl::copy (matrix_slice< matrix< NumericT, column_major, 1 > > const &gpu_matrix_slice, CPUMatrixT &cpu_matrix)
 
template<typename MatrixType >
matrix_slice< MatrixType > viennacl::project (MatrixType const &A, viennacl::slice const &r1, viennacl::slice const &r2)
 
template<typename MatrixType >
matrix_slice< MatrixType > viennacl::project (matrix_range< MatrixType > const &A, viennacl::slice const &r1, viennacl::slice const &r2)
 
template<typename MatrixType >
matrix_slice< MatrixType > viennacl::project (matrix_slice< MatrixType > const &A, viennacl::slice const &r1, viennacl::slice const &r2)
 

Detailed Description

Proxy classes for matrices.

Definition in file matrix_proxy.hpp.