SpECTRE  v2024.04.12
Parallel::SingletonPack< tmpl::list< ParallelComponents... > > Struct Template Reference

Holds options for a group of singleton components. More...

#include <ResourceInfo.hpp>


struct  SingletonOption

Public Types

using options = tmpl::transform< component_list, tmpl::bind< SingletonOption, tmpl::_1 > >

Public Member Functions

 SingletonPack (const std::optional< SingletonInfoHolder< ParallelComponents > > &... singleton_info_holders, const Options::Context &={})
 SingletonPack (const SingletonPack &)=default
SingletonPackoperator= (const SingletonPack &)=default
 SingletonPack (SingletonPack &&)=default
SingletonPackoperator= (SingletonPack &&)=default
void pup (PUP::er &p)
template<typename Component >
const auto & get () const
 Get a const reference to the SingletonInfoHolder for the Component singleton.

Static Public Attributes

static constexpr Options::String help


template<typename... Components>
bool operator== (const SingletonPack< tmpl::list< Components... > > &lhs, const SingletonPack< tmpl::list< Components... > > &rhs)

Detailed Description

template<typename... ParallelComponents>
struct Parallel::SingletonPack< tmpl::list< ParallelComponents... > >

Holds options for a group of singleton components.


The info for each singleton in the ParallelComponents template pack is stored in an individual Parallel::SingletonInfoHolder.

You can pass Auto as an option for each singleton in an input file and each singleton will be constructed as a default Parallel::SingletonInfoHolder.

Member Data Documentation

◆ help

template<typename... ParallelComponents>
constexpr Options::String Parallel::SingletonPack< tmpl::list< ParallelComponents... > >::help
Initial value:
= {
"Resource options for all singletons."}

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