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

several code generation helpers More...

#include <set>
#include "CL/cl.h"
#include "viennacl/forwards.h"
#include "viennacl/scheduler/forwards.h"
#include "viennacl/generator/utils.hpp"
#include "viennacl/generator/forwards.h"

Go to the source code of this file.

Data Structures

class  traversal_functor
 base functor class for traversing a statement More...
 
class  prototype_generation_traversal
 functor for generating the prototype of a statement More...
 
class  fetch_traversal
 functor for fetching the elements of a statement More...
 
class  expression_generation_traversal
 functor for generating the expression string from a statement More...
 

Namespaces

 viennacl
 Main namespace in ViennaCL. Holds all the basic types such as vector, matrix, etc. and defines operations upon them.
 
 viennacl::generator
 Provides an OpenCL kernel generator.
 
 viennacl::generator::detail
 Contains implementation details of the kernel generator.
 

Functions

const char * generate (viennacl::scheduler::operation_node_type type)
 generate a string from an operation_node_type More...
 
bool is_binary_leaf_operator (viennacl::scheduler::operation_node_type const &op_type)
 checks whether an operator is both a binary node and a leaf More...
 
bool is_arithmetic_operator (viennacl::scheduler::operation_node_type const &op_type)
 checks whether an operator is arithmetic or not More...
 

Detailed Description

several code generation helpers