Tpetra parallel linear algebra
Version of the Day
|
Declaration and definition of Tpetra::withLocalAccess; declaration of helper classes for users to specialize. More...
#include "TpetraCore_config.h"
#include "Tpetra_Access.hpp"
#include <functional>
#include <type_traits>
Go to the source code of this file.
Classes | |
struct | Tpetra::Details::DefaultMemorySpace< GlobalObjectType > |
Given a global object, get its default memory space (both the type and the default instance thereof). More... | |
struct | Tpetra::Details::DefaultExecutionSpace< GlobalObjectType > |
Given a global object, get its default execution space (both the type and the default instance thereof). More... | |
struct | Tpetra::Details::GetMasterLocalObject< LocalAccessType > |
Mapping from LocalAccess to the "master" local object type. More... | |
struct | Tpetra::Details::GetNonowningLocalObject< LocalAccessType > |
Mapping from "master" local object type to the nonowning "local view" type that users see (as arguments to the function that they give to withLocalAccess). More... | |
struct | Tpetra::Details::unspecified_type |
Tag indicating an unspecified type in LocalAccessTraits. More... | |
struct | Tpetra::Details::LocalAccessTraits< Args > |
Deduce types from parameter pack of LocalAccess. More... | |
class | Tpetra::Details::LocalAccess< GlobalObjectType, Args > |
Declaration of access intent for a global object. More... | |
struct | Tpetra::Details::WithLocalAccess< LocalAccessTypes > |
Implementation of withLocalAccess. More... | |
struct | Tpetra::Details::WithLocalAccess<> |
Specialization of WithLocalAccess that implements the "base class" of the user providing no GlobalObject arguments, and a function that takes no arguments. More... | |
struct | Tpetra::Details::WithLocalAccess< FirstLocalAccessType > |
Specialization of WithLocalAccess that implements the "base class" of the user providing one GlobalObject arguments, and a function that takes one arguments. Required to workaround a compile error with intel-19 in c++14 mode. More... | |
struct | Tpetra::Details::WithLocalAccess< FirstLocalAccessType, Rest...> |
Specialization of WithLocalAccess that implements the "recursion case.". More... | |
Namespaces | |
Tpetra | |
Namespace Tpetra contains the class and methods constituting the Tpetra library. | |
Tpetra::Details | |
Nonmember function that computes a residual Computes R = B - A * X. | |
Typedefs | |
template<class LocalAccessType > | |
using | Tpetra::with_local_access_function_argument_type = typename Details::GetNonowningLocalObject< LocalAccessType >::nonowning_local_object_type |
Type of the local object, that is an argument to the function the user gives to withLocalAccess. More... | |
Functions | |
template<class LocalAccessType > | |
GetMasterLocalObject < LocalAccessType > ::master_local_object_type | Tpetra::Details::getMasterLocalObject (LocalAccessType LA) |
Given a LocalAccess instance (which has a reference to a global object), get an instance of its master local object. More... | |
template<class LocalAccessType > | |
GetNonowningLocalObject < LocalAccessType > ::nonowning_local_object_type | Tpetra::Details::getNonowningLocalObject (LocalAccessType LA, const typename GetMasterLocalObject< LocalAccessType >::master_local_object_type &master) |
Given a master local object, get an instance of a nonowning local object. More... | |
template<class GlobalObjectType > | |
Details::LocalAccess < GlobalObjectType, Access::ReadOnly > | Tpetra::readOnly (GlobalObjectType &) |
Declare that you want to access the given global object's local data in read-only mode. More... | |
template<class GlobalObjectType > | |
Details::LocalAccess < GlobalObjectType, Access::ReadOnly > | Tpetra::readOnly (const GlobalObjectType &) |
Declare that you want to access the given global object's local data in read-only mode (overload for const GlobalObjectType). More... | |
template<class GlobalObjectType > | |
Details::LocalAccess < GlobalObjectType, Access::WriteOnly > | Tpetra::writeOnly (GlobalObjectType &) |
Declare that you want to access the given global object's local data in write-only mode. More... | |
template<class GlobalObjectType > | |
Details::LocalAccess < GlobalObjectType, Access::ReadWrite > | Tpetra::readWrite (GlobalObjectType &) |
Declare that you want to access the given global object's local data in read-and-write mode. More... | |
template<class... LocalAccessTypes> | |
void | Tpetra::withLocalAccess (typename Details::ArgsToFunction< LocalAccessTypes...>::type userFunction, LocalAccessTypes...localAccesses) |
Get access to a Tpetra global object's local data. More... | |
Declaration and definition of Tpetra::withLocalAccess; declaration of helper classes for users to specialize.
Definition in file Tpetra_withLocalAccess.hpp.