All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
scalar.hpp File Reference

Implementation of the ViennaCL scalar class. More...

`#include <iostream>`
`#include "viennacl/forwards.h"`
`#include "viennacl/backend/memory.hpp"`
`#include "viennacl/meta/result_of.hpp"`
`#include "viennacl/linalg/scalar_operations.hpp"`
`#include "viennacl/traits/handle.hpp"`

Go to the source code of this file.

## Classes

class | viennacl::scalar_expression< LHS, RHS, OP >
| A proxy for scalar expressions (e.g. from inner vector products) More...
class | viennacl::scalar_expression< LHS, RHS, op_inner_prod >
| Specialization of a scalar expression for inner products. Allows for a final reduction on the CPU. More...
class | viennacl::scalar_expression< LHS, RHS, op_norm_1 >
| Specialization of a scalar expression for norm_1. Allows for a final reduction on the CPU. More...
class | viennacl::scalar_expression< LHS, RHS, op_norm_2 >
| Specialization of a scalar expression for norm_2. Allows for a final reduction on the CPU. More...
class | viennacl::scalar_expression< LHS, RHS, op_norm_inf >
| Specialization of a scalar expression for norm_inf. Allows for a final reduction on the CPU. More...
class | viennacl::scalar_expression< LHS, RHS, op_max >
| Specialization of a scalar expression for max(). Allows for a final reduction on the CPU. More...
class | viennacl::scalar_expression< LHS, RHS, op_min >
| Specialization of a scalar expression for norm_inf. Allows for a final reduction on the CPU. More...
class | viennacl::scalar_expression< LHS, RHS, op_sum >
| Specialization of a scalar expression for norm_inf. Allows for a final reduction on the CPU. More...
class | viennacl::scalar_expression< LHS, RHS, op_norm_frobenius >
| Specialization of a scalar expression for norm_frobenius. Allows for a final reduction on the CPU. More...
class | viennacl::scalar< TYPE >
| This class represents a single scalar value on the GPU and behaves mostly like a built-in scalar type like float or double. More...

## Namespaces

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

## Functions

template<class NumericT >
std::ostream & | viennacl::operator<< (std::ostream &s, const scalar< NumericT > &val)
| Allows to directly print the value of a scalar to an output stream. More...
template<class NumericT >
std::istream & | viennacl::operator>> (std::istream &s, const scalar< NumericT > &val)
| Allows to directly read a value of a scalar from an input stream. More...

## Detailed Description

Implementation of the ViennaCL scalar class.

Definition in file scalar.hpp.