![]() |
Shamrock 2025.10.0
Astrophysical Code
|
A class that references multiple buffers or similar objects. More...
#include <shambackends/include/shambackends/kernel_call.hpp>
Public Types | |
| using | storage_t = std::tuple< Targ &... > |
| A tuple of references to the buffers. | |
Public Member Functions | |
| MultiRef (Targ &...arg) | |
| Constructor. | |
| auto | get_read_access (sham::EventList &depends_list) |
| auto | get_write_access (sham::EventList &depends_list) |
| void | complete_event_state (sycl::event e) |
Public Attributes | |
| storage_t | storage |
| A tuple of references to the buffers. | |
A class that references multiple buffers or similar objects.
This class serves as a means to pass multiple buffers or objects with similar accessor patterns to a kernel. It provides methods to obtain read and write access to these entities and to complete their event state.
A version of this class is also available for optional references to the buffers or similar objects,
Definition at line 234 of file kernel_call.hpp.
| using sham::MultiRef< Targ >::storage_t = std::tuple<Targ &...> |
A tuple of references to the buffers.
Definition at line 236 of file kernel_call.hpp.
|
inline |
Constructor.
Definition at line 242 of file kernel_call.hpp.
|
inline |
Complete the event state of the buffers.
| e | The SYCL event to register in the buffers. |
Definition at line 268 of file kernel_call.hpp.
|
inline |
Get a tuple of pointers to the data of the buffers, for reading. Register also the depedancies in depends_list.
Definition at line 246 of file kernel_call.hpp.
|
inline |
Get a tuple of pointers to the data of the buffers, for writing. Register also the depedancies in depends_list.
Definition at line 257 of file kernel_call.hpp.
| storage_t sham::MultiRef< Targ >::storage |
A tuple of references to the buffers.
Definition at line 239 of file kernel_call.hpp.