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
io.hpp File Reference

Some helper routines for reading/writing/printing scheduler expressions. More...

#include <iostream>
#include <sstream>
#include "viennacl/forwards.h"
#include "viennacl/scheduler/forwards.h"

Go to the source code of this file.

Namespaces

 viennacl
 Main namespace in ViennaCL. Holds all the basic types such as vector, matrix, etc. and defines operations upon them.
 
 viennacl::scheduler
 Contains the scheduling functionality which allows for dynamic kernel generation as well as the fusion of multiple statements into a single kernel.
 
 viennacl::scheduler::detail
 Implementation details for the scheduler.
 

Macros

#define VIENNACL_TRANSLATE_OP_TO_STRING(NAME)   case NAME: return #NAME;
 
#define VIENNACL_TRANSLATE_ELEMENT_TO_STRING(NAME, ELEMENT)   case NAME: ss << "(" << element.ELEMENT << ")"; return #NAME + ss.str();
 

Functions

std::string viennacl::scheduler::detail::to_string (viennacl::scheduler::op_element op_elem)
 Helper routine for converting the operation enums to string. More...
 
std::string viennacl::scheduler::detail::to_string (viennacl::scheduler::lhs_rhs_element element)
 Helper routine converting the enum and union values inside a statement node to a string. More...
 
std::ostream & viennacl::scheduler::operator<< (std::ostream &os, viennacl::scheduler::statement_node const &s_node)
 Print a single statement_node. Non-recursive. More...
 
void viennacl::scheduler::detail::print_node (std::ostream &os, viennacl::scheduler::statement const &s, vcl_size_t node_index, vcl_size_t indent=0)
 Recursive worker routine for printing a whole statement. More...
 
std::ostream & viennacl::scheduler::operator<< (std::ostream &os, viennacl::scheduler::statement const &s)
 Writes a string identifying the scheduler statement to an output stream. More...
 

Detailed Description

Some helper routines for reading/writing/printing scheduler expressions.

Definition in file io.hpp.

Macro Definition Documentation

#define VIENNACL_TRANSLATE_ELEMENT_TO_STRING (   NAME,
  ELEMENT 
)    case NAME: ss << "(" << element.ELEMENT << ")"; return #NAME + ss.str();

Definition at line 107 of file io.hpp.

#define VIENNACL_TRANSLATE_OP_TO_STRING (   NAME)    case NAME: return #NAME;

Definition at line 39 of file io.hpp.