FleCSI User API Version: 2.3.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
 Return a reference to a mapped field instance.
 
auto operator() (data::topology_slot< Topo > &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
Topo(specialized) topology type
Spaceindex space

Member Function Documentation

◆ operator()() [1/2]

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)

◆ operator()() [2/2]

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.