ViennaCL - The Vienna Computing Library: viennacl::device_specific::mapped_object Class Reference

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
Classes | Public Member Functions | Protected Member Functions | Static Protected Member Functions | Protected Attributes | List of all members
viennacl::device_specific::mapped_object Class Reference

Mapped Object. More...

`#include <mapped_objects.hpp>`

Inheritance diagram for viennacl::device_specific::mapped_object:

## Classes
struct | MorphBase
struct | MorphBase1D
struct | MorphBase2D
struct | node_info

## Public Member Functions
| mapped_object (std::string const &scalartype, unsigned int id, std::string const &type_key)
virtual | ~mapped_object ()
virtual std::string & | append_kernel_arguments (std::set< std::string > &, std::string &str, unsigned int) const
std::string | type_key () const
std::string const & | name () const
std::string | process (std::string const &in) const
std::string | evaluate (std::map< std::string, std::string > const &accessors) const

## Protected Member Functions
void | register_attribute (std::string &attribute, std::string const &key, std::string const &value)

## Static Protected Member Functions
static void | replace_offset (std::string &str, MorphBase const &morph)

## Protected Attributes
std::string | name_
std::string | scalartype_
std::string | type_key_
std::map< std::string, std::string > | keywords_

## Detailed Description

Mapped Object.

This object populates the symbolic mapping associated with a statement. (root_id, LHS|RHS|PARENT) => mapped_object The tree can then be reconstructed in its symbolic form

Definition at line 43 of file mapped_objects.hpp.

## Constructor & Destructor Documentation

viennacl::device_specific::mapped_object::mapped_object | ( | std::string const & | scalartype,
|  | unsigned int | id,
|  | std::string const & | type_key
| ) |  |
| inline

Definition at line 97 of file mapped_objects.hpp.

virtual viennacl::device_specific::mapped_object::~mapped_object | ( |  | ) |
| inlinevirtual

Definition at line 103 of file mapped_objects.hpp.

## Member Function Documentation

virtual std::string& viennacl::device_specific::mapped_object::append_kernel_arguments | ( | std::set< std::string > & | ,
|  | std::string & | str,
|  | unsigned int |
| ) |  | const
| inlinevirtual

Reimplemented in viennacl::device_specific::mapped_implicit_matrix, viennacl::device_specific::mapped_implicit_vector, viennacl::device_specific::mapped_handle, and viennacl::device_specific::mapped_host_scalar.

Definition at line 105 of file mapped_objects.hpp.

std::string viennacl::device_specific::mapped_object::evaluate | ( | std::map< std::string, std::string > const & | accessors | ) | const
| inline

Definition at line 120 of file mapped_objects.hpp.

std::string const& viennacl::device_specific::mapped_object::name | ( |  | ) | const
| inline

Definition at line 109 of file mapped_objects.hpp.

std::string viennacl::device_specific::mapped_object::process | ( | std::string const & | in | ) | const
| inline

Definition at line 111 of file mapped_objects.hpp.

void viennacl::device_specific::mapped_object::register_attribute | ( | std::string & | attribute,
|  | std::string const & | key,
|  | std::string const & | value
| ) |  |
| inlineprotected

Definition at line 80 of file mapped_objects.hpp.

static void viennacl::device_specific::mapped_object::replace_offset | ( | std::string & | str,
|  | MorphBase const & | morph
| ) |  |
| inlinestaticprotected

Definition at line 53 of file mapped_objects.hpp.

std::string viennacl::device_specific::mapped_object::type_key | ( |  | ) | const
| inline

Definition at line 107 of file mapped_objects.hpp.

## Member Data Documentation

std::map<std::string, std::string> viennacl::device_specific::mapped_object::keywords_
| protected

Definition at line 132 of file mapped_objects.hpp.

std::string viennacl::device_specific::mapped_object::name_
| protected

Definition at line 129 of file mapped_objects.hpp.

std::string viennacl::device_specific::mapped_object::scalartype_
| protected

Definition at line 130 of file mapped_objects.hpp.

std::string viennacl::device_specific::mapped_object::type_key_
| protected

Definition at line 131 of file mapped_objects.hpp.

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

- viennacl/device_specific/mapped_objects.hpp