Data Structures | Namespaces | Functions

/data/development/ViennaCL/ViennaCL-1.1.2/viennacl/tools/tools.hpp File Reference

Various little tools used here and there in ViennaCL. More...

#include <string>
#include <fstream>
#include <sstream>
#include "viennacl/forwards.h"
#include "viennacl/tools/adapter.hpp"
#include <vector>
#include <map>

Go to the source code of this file.

Data Structures

struct  value_type< T >
struct  MATRIX_ITERATOR_INCREMENTER< viennacl::row_iteration, viennacl::matrix< SCALARTYPE, F, ALIGNMENT > >
 Supply suitable increment functions for the iterators: More...
struct  MATRIX_ITERATOR_INCREMENTER< viennacl::col_iteration, viennacl::matrix< SCALARTYPE, F, ALIGNMENT > >
struct  enable_if< b, T >
 Simple enable-if variant that uses the SFINAE pattern. More...
struct  enable_if< false, T >
struct  CHECK_SCALAR_TEMPLATE_ARGUMENT< T >
 A guard that checks whether the floating point type of GPU types is either float or double. More...
struct  CHECK_SCALAR_TEMPLATE_ARGUMENT< float >
struct  CHECK_SCALAR_TEMPLATE_ARGUMENT< double >
struct  CONST_REMOVER< T >
 Removes the const qualifier from a type. More...
struct  CONST_REMOVER< const T >
struct  VECTOR_EXTRACTOR_IMPL< LHS, RHS >
 Extracts the vector type from one of the two arguments. Used for the vector_expression type. More...
struct  VECTOR_EXTRACTOR_IMPL< LHS, viennacl::vector< ScalarType, A > >
struct  VECTOR_EXTRACTOR_IMPL< viennacl::vector< ScalarType, A >, RHS >
struct  VECTOR_EXTRACTOR_IMPL< viennacl::vector< ScalarType, A >, viennacl::vector< ScalarType, A > >
struct  VECTOR_EXTRACTOR< LHS, RHS >
struct  VECTOR_SIZE_DEDUCER< LHS, RHS, OP >
 Deduces the size of the resulting vector represented by a vector_expression from the operands. More...
struct  VECTOR_SIZE_DEDUCER< const viennacl::vector< ScalarType, A >, RHS, viennacl::op_prod >
struct  VECTOR_SIZE_DEDUCER< const viennacl::vector< ScalarType, A >, RHS, viennacl::op_div >
struct  VECTOR_SIZE_DEDUCER< const viennacl::matrix< ScalarType, F, Amat >, const viennacl::vector< ScalarType, A >, viennacl::op_prod >
struct  VECTOR_SIZE_DEDUCER< const viennacl::compressed_matrix< ScalarType, Amat >, const viennacl::vector< ScalarType, A >, viennacl::op_prod >
struct  VECTOR_SIZE_DEDUCER< const viennacl::coordinate_matrix< ScalarType, Amat >, const viennacl::vector< ScalarType, A >, viennacl::op_prod >
struct  VECTOR_SIZE_DEDUCER< const viennacl::matrix_expression< const viennacl::matrix< ScalarType, F, Amat >, const viennacl::matrix< ScalarType, F, Amat >, op_trans >, const viennacl::vector< ScalarType, A >, viennacl::op_prod >
struct  CPU_SCALAR_TYPE_DEDUCER< T >
 Obtain the cpu scalar type from a type, including a GPU type like viennacl::scalar<T> More...
struct  CPU_SCALAR_TYPE_DEDUCER< float >
struct  CPU_SCALAR_TYPE_DEDUCER< double >
struct  CPU_SCALAR_TYPE_DEDUCER< viennacl::scalar< T > >
struct  CPU_SCALAR_TYPE_DEDUCER< viennacl::vector< T, A > >
struct  CPU_SCALAR_TYPE_DEDUCER< viennacl::matrix< T, F, A > >
struct  CPU_SCALAR_TYPE_DEDUCER< viennacl::matrix_expression< const matrix< T, F, A >, const matrix< T, F, A >, op_trans > >

Namespaces

namespace  viennacl
namespace  viennacl::tools
namespace  viennacl::tools::traits
namespace  viennacl::tools::result_of

Functions

template<typename MatrixType >
void resize (MatrixType &matrix, size_t rows, size_t cols)
template<typename VectorType >
void resize (VectorType &vec, size_t new_size)
template<typename VectorType >
void clear (VectorType &vec)
template<typename VectorType >
unsigned int size (VectorType &vec)
std::string readTextFromFile (const std::string &filename)
 Reads a text from a file into a std::string.
std::string strReplace (const std::string &text, std::string to_search, std::string to_replace)
 Replaces all occurances of a substring by another stringstream.
template<class INT_TYPE >
INT_TYPE roundUpToNextMultiple (INT_TYPE to_reach, INT_TYPE base)
 Rounds an integer to the next multiple of another integer.
std::string make_double_kernel (std::string const &source, std::string platform_info)
 Create a double precision kernel out of a single precision kernel.

Detailed Description

Various little tools used here and there in ViennaCL.