Classes | Namespaces | Macros | Functions
GlobalCache.hpp File Reference
#include <optional>
#include <string>
#include <tuple>
#include <vector>
#include "DataStructures/DataBox/Tag.hpp"
#include "ErrorHandling/Assert.hpp"
#include "ErrorHandling/Error.hpp"
#include "Parallel/CharmRegistration.hpp"
#include "Parallel/ParallelComponentHelpers.hpp"
#include "Utilities/Gsl.hpp"
#include "Utilities/PrettyType.hpp"
#include "Utilities/Requires.hpp"
#include "Utilities/TMPL.hpp"
#include "Utilities/TaggedTuple.hpp"
#include "Utilities/TypeTraits/IsA.hpp"
#include "Parallel/GlobalCache.decl.h"
#include "Parallel/GlobalCache.def.h"

Go to the source code of this file.

Classes

class  Parallel::MutableGlobalCache< Metavariables >
 
class  Parallel::GlobalCache< Metavariables >
 
struct  Parallel::Tags::GlobalCache
 
struct  Parallel::Tags::GlobalCacheImpl< Metavariables >
 
struct  Parallel::Tags::FromGlobalCache< CacheTag >
 

Namespaces

 Parallel
 Contains functions that forward to Charm++ parallel functions.
 

Functions

template<typename ParallelComponentTag , typename Metavariables >
auto Parallel::get_parallel_component (GlobalCache< Metavariables > &cache) noexcept -> Parallel::proxy_from_parallel_component< GlobalCache_detail::get_component_if_mocked< typename Metavariables::component_list, ParallelComponentTag >> &
 Access the Charm++ proxy associated with a ParallelComponent. More...
 
template<typename ParallelComponentTag , typename Metavariables >
auto Parallel::get_parallel_component (const GlobalCache< Metavariables > &cache) noexcept -> const Parallel::proxy_from_parallel_component< GlobalCache_detail::get_component_if_mocked< typename Metavariables::component_list, ParallelComponentTag >> &
 
template<typename GlobalCacheTag , typename Metavariables >
auto Parallel::get (const GlobalCache< Metavariables > &cache) noexcept -> const GlobalCache_detail::type_for_get< GlobalCacheTag, Metavariables > &
 Access data in the cache. More...
 
template<typename GlobalCacheTag , typename Function , typename Metavariables >
bool Parallel::mutable_cache_item_is_ready (GlobalCache< Metavariables > &cache, const Function &function) noexcept
 Returns whether the object identified by GlobalCacheTag is ready to be accessed by get. More...
 
template<typename GlobalCacheTag , typename Function , typename Metavariables , typename... Args>
void Parallel::mutate (GlobalCache< Metavariables > &cache, Args &&... args) noexcept
 Mutates non-const data in the cache, by calling Function::apply() More...
 
template<typename GlobalCacheTag , typename Function , typename Metavariables , typename... Args>
void Parallel::mutate (CProxy_GlobalCache< Metavariables > &cache_proxy, Args &&... args) noexcept
 Mutates non-const data in the cache, by calling Function::apply() More...
 

Detailed Description

Defines class template GlobalCache.