The buffers type provides an interface for dynamic amounts of data. More...
Classes | |
| struct | ragged |
| Utility to transfer the contents of ragged rows via buffers. More... | |
Public Types | |
| using | Start |
| Alias Start is used to provide accessor to the sending buffers. | |
| using | Transfer |
| Alias Transfer is used to provide accessor to the receiving buffers. | |
Public Types inherited from specialization< detail::buffers_category, buffers > | |
| using | accessor |
| The topology accessor to use as a parameter to receive a topology instance. | |
| using | base |
| The core topology base type, which can provide specialization utilities. | |
| using | coloring |
| The coloring type. | |
| using | ptr |
| A (movable) unique pointer to the topology type. | |
| using | slot |
| The slot type for declaring topology instances. | |
| using | topology |
| The topology instance type. | |
Public Types inherited from specialization_base | |
| template<auto V, class T > | |
| using | from |
| A connectivity specification. | |
| template<auto V, class T > | |
| using | entity |
| A special-entities specification. | |
| template<auto... V> | |
| using | has |
| A list of enumerators for which to store data. | |
| template<auto... V> | |
| using | to |
| A list of index spaces to use as output. | |
| template<class... TT> | |
| using | list |
| Container. | |
| using | index_space |
| The index space type. | |
| using | index_spaces |
The set of index spaces, wrapped in has. | |
| template<class B > | |
| using | interface |
| The topology interface type. | |
Additional Inherited Members | |
Public Member Functions inherited from specialization_base | |
| specialization_base ()=delete | |
| Specializations cannot be constructed. | |
Static Public Member Functions inherited from specialization< detail::buffers_category, buffers > | |
| static constexpr auto | default_space () |
| The default index space to use when one is optional. | |
| static void | initialize (slot &s, coloring const &) |
| Specialization-specific initialization. | |
| static void | initialize (scheduler &, topology &t, coloring const &) |
| Specialization-specific initialization. | |
Static Public Attributes inherited from specialization< detail::buffers_category, buffers > | |
| static constexpr PrivilegeCount | privilege_count |
| The number of privileges to use for an accessor. | |
The buffers type provides an interface for dynamic amounts of data.
This subtopology type also provides conveniences for transfer tasks.
| using Start |
Alias Start is used to provide accessor to the sending buffers.
It should be part of the signature of the two function objects (F, G) needed by the topoogy::xfer method.
| using Transfer |
Alias Transfer is used to provide accessor to the receiving buffers.
It should be part of the signature of the two function objects (F, G) needed by the topology::xfer method. Since copy_plan supports only copies between parts of the same logical region, we can't use WRITE_DISCARD for the send buffer. We therefore use rw for it so that transfer functions can use it to resume large jobs.