|
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 <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::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... | |
| class | Tpetra::Details::LocalAccess< GlobalObjectType, MemorySpace, am > |
| 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, 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 | |
| Namespace for Tpetra implementation details. | |
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... | |
Enumerations | |
| enum | Tpetra::Details::AccessMode |
| Access intent. 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, typename Details::DefaultMemorySpace < GlobalObjectType >::type, Details::AccessMode::ReadOnly > | Tpetra::readOnly (GlobalObjectType &) |
| Declare that you want to access the given global object's local data in read-only mode, in the object's default memory space. More... | |
| template<class GlobalObjectType > | |
| Details::LocalAccess < GlobalObjectType, typename Details::DefaultMemorySpace < GlobalObjectType >::type, Details::AccessMode::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), in the object's default memory space. More... | |
| template<class GlobalObjectType > | |
| Details::LocalAccess < GlobalObjectType, typename Details::DefaultMemorySpace < GlobalObjectType >::type, Details::AccessMode::WriteOnly > | Tpetra::writeOnly (GlobalObjectType &) |
| Declare that you want to access the given global object's local data in write-only mode, in the object's default memory space. More... | |
| template<class GlobalObjectType > | |
| Details::LocalAccess < GlobalObjectType, typename Details::DefaultMemorySpace < GlobalObjectType >::type, Details::AccessMode::ReadWrite > | Tpetra::readWrite (GlobalObjectType &) |
| Declare that you want to access the given global object's local data in read-and-write mode, in the object's default memory space. 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.
1.8.5