FleCSI Core API Version: 2.4.0
 
Loading...
Searching...
No Matches
field< T, L >::definition< Topo, Space > Struct Template Reference

A field registration. More...

Public Member Functions

data::multi_reference< T, L, Topo, Space > operator() (data::launch::mapping< Topo > &&m) const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
data::multi_reference< T, L, Topo, Space > operator() (data::launch::mapping< Topo > &m) const
 Return a reference to a mapped field instance.
 
auto operator() (data::topology_slot< Topo > &t) const
 Return a reference to a field instance.
 
Reference< Topo, Space > operator() (typename Topo::topology &t) const
 Return a reference to a field instance.
 

Detailed Description

template<class T, data::layout L = data::dense>
template<class Topo, typename Topo::index_space Space = Topo::default_space()>
struct flecsi::field< T, L >::definition< Topo, Space >

A field registration.

Instances may be freely copied; they must all be created before any instance of Topo.

Warning
Field definitions are typically declared const. If placed in a header make sure to declare them as inline const to avoid breaking ODR.
Template Parameters
Topospecialization
Spaceindex space

Member Function Documentation

◆ operator()() [1/4]

template<class T , data::layout L = data::dense>
template<class Topo , typename Topo::index_space Space = Topo::default_space()>
auto operator() ( data::topology_slot< Topo > & t) const

Return a reference to a field instance.

Parameters
ttopology instance (must be allocated)
Deprecated
Pass the instance directly (perhaps with t.get()).

◆ operator()() [2/4]

template<class T , data::layout L = data::dense>
template<class Topo , typename Topo::index_space Space = Topo::default_space()>
Reference< Topo, Space > operator() ( typename Topo::topology & t) const

Return a reference to a field instance.

Parameters
ttopology instance

◆ operator()() [3/4]

template<class T , data::layout L = data::dense>
template<class Topo , typename Topo::index_space Space = Topo::default_space()>
data::multi_reference< T, L, Topo, Space > operator() ( data::launch::mapping< Topo > & m) const

Return a reference to a mapped field instance.

◆ operator()() [4/4]

template<class T , data::layout L = data::dense>
template<class Topo , typename Topo::index_space Space = Topo::default_space()>
data::multi_reference< T, L, Topo, Space > operator() ( data::launch::mapping< Topo > && m) const

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.