Forwards declaration. More...
#include <list>
#include <map>
#include <set>
#include <stdexcept>
#include "viennacl/scheduler/io.hpp"
#include "viennacl/ocl/forwards.h"
#include "viennacl/tools/shared_ptr.hpp"
#include "viennacl/scheduler/forwards.h"
#include "viennacl/backend/mem_handle.hpp"
Go to the source code of this file.
Classes | |
struct | viennacl::device_specific::index_tuple |
class | viennacl::device_specific::generator_not_supported_exception |
Exception for the case the generator is unable to deal with the operation. More... | |
class | viennacl::device_specific::symbolic_binder |
class | viennacl::device_specific::bind_to_handle |
class | viennacl::device_specific::bind_all_unique |
struct | viennacl::device_specific::char_to_type< C > |
class | viennacl::device_specific::statements_container |
Namespaces | |
viennacl | |
Main namespace in ViennaCL. Holds all the basic types such as vector, matrix, etc. and defines operations upon them. | |
viennacl::device_specific | |
Provides an OpenCL kernel generator. | |
viennacl::device_specific::utils | |
Contains various helper routines for kernel generation. | |
viennacl::device_specific::tree_parsing | |
Typedefs | |
typedef std::pair< vcl_size_t, leaf_t > | viennacl::device_specific::mapping_key |
typedef std::map< mapping_key, tools::shared_ptr < mapped_object > > | viennacl::device_specific::mapping_type |
typedef cl_uint | viennacl::device_specific::vendor_id_type |
typedef cl_device_type | viennacl::device_specific::device_type |
typedef std::string | viennacl::device_specific::device_name_type |
Functions | |
bool | viennacl::device_specific::is_scalar_reduction (scheduler::statement_node const &node) |
bool | viennacl::device_specific::is_vector_reduction (scheduler::statement_node const &node) |
scheduler::statement_node const & | viennacl::device_specific::lhs_most (scheduler::statement::container_type const &array, vcl_size_t root) |
const char * | viennacl::device_specific::expression_type_to_string (expression_type type) |
template<typename KeyT , typename ValueT > | |
ValueT const & | viennacl::device_specific::at (std::map< KeyT, ValueT > const &map, KeyT const &key) |
Emulation of C++11's .at() member for std::map<>, const-version. More... | |
template<typename KeyT , typename ValueT > | |
ValueT & | viennacl::device_specific::at (std::map< KeyT, ValueT > &map, KeyT const &key) |
Emulation of C++11's .at() member for std::map<>, non-const version. More... | |
template<class Fun > | |
void | viennacl::device_specific::tree_parsing::traverse (scheduler::statement const &statement, vcl_size_t root_idx, Fun const &fun, bool inspect) |
Recursively execute a functor on a statement. More... | |
void | viennacl::device_specific::tree_parsing::process (utils::kernel_generation_stream &stream, leaf_t leaf, std::string const &type_key, std::string const &to_process, scheduler::statement const &statement, vcl_size_t root_idx, mapping_type const &mapping, std::set< std::string > &already_processed) |
std::string | viennacl::device_specific::tree_parsing::evaluate (leaf_t leaf, std::map< std::string, std::string > const &accessors, scheduler::statement const &statement, vcl_size_t root_idx, mapping_type const &mapping) |
tools::shared_ptr < symbolic_binder > | viennacl::device_specific::make_binder (binding_policy_t policy) |
Forwards declaration.
Definition in file forwards.h.