ViennaCL - The Vienna Computing Library  1.5.2
Public Types | Public Member Functions
statement_representation_functor Class Reference

Helper class for the OpenCL kernel generator, representing a statement. More...

#include <statement_representation_functor.hpp>

Inheritance diagram for statement_representation_functor:
traversal_functor

Public Types

typedef void result_type
 

Public Member Functions

 statement_representation_functor (void *(&memory)[64], unsigned int, char *&ptr)
 
template<class ScalarType >
result_type operator() (ScalarType const &) const
 
template<class ScalarType >
result_type operator() (scalar< ScalarType > const &scal) const
 Scalar mapping. More...
 
template<class ScalarType >
result_type operator() (vector_base< ScalarType > const &vec) const
 Vector mapping. More...
 
template<class ScalarType >
result_type operator() (implicit_vector_base< ScalarType > const &vec) const
 Implicit vector mapping. More...
 
template<class ScalarType , class Layout >
result_type operator() (matrix_base< ScalarType, Layout > const &mat) const
 Matrix mapping. More...
 
template<class ScalarType >
result_type operator() (implicit_matrix_base< ScalarType > const &mat) const
 Implicit matrix mapping. More...
 
void operator() (scheduler::statement const *, scheduler::statement_node const *root_node, detail::node_type node_type) const
 
- Public Member Functions inherited from traversal_functor
void call_before_expansion () const
 
void call_after_expansion () const
 

Detailed Description

Helper class for the OpenCL kernel generator, representing a statement.

Member Typedef Documentation

typedef void result_type

Constructor & Destructor Documentation

statement_representation_functor ( void *(&)  memory[64],
unsigned  int,
char *&  ptr 
)
inline

Member Function Documentation

result_type operator() ( ScalarType const &  ) const
inline
result_type operator() ( scalar< ScalarType > const &  scal) const
inline

Scalar mapping.

result_type operator() ( vector_base< ScalarType > const &  vec) const
inline

Vector mapping.

result_type operator() ( implicit_vector_base< ScalarType > const &  vec) const
inline

Implicit vector mapping.

result_type operator() ( matrix_base< ScalarType, Layout > const &  mat) const
inline

Matrix mapping.

result_type operator() ( implicit_matrix_base< ScalarType > const &  mat) const
inline

Implicit matrix mapping.

void operator() ( scheduler::statement const *  ,
scheduler::statement_node const *  root_node,
detail::node_type  node_type 
) const
inline

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