DPC++ Runtime
Runtime libraries for oneAPI DPC++
sycl::_V1::ext::oneapi::experimental::detail::dynamic_parameter_impl Class Reference

#include <detail/graph_impl.hpp>

Collaboration diagram for sycl::_V1::ext::oneapi::experimental::detail::dynamic_parameter_impl:

Public Member Functions

 dynamic_parameter_impl (std::shared_ptr< graph_impl > GraphImpl, size_t ParamSize, const void *Data)
 
void registerNode (std::shared_ptr< node_impl > NodeImpl, int ArgIndex)
 Register a node with this dynamic parameter. More...
 
void * getValue ()
 Get a pointer to the internal value of this dynamic parameter. More...
 
void updateValue (const void *NewValue, size_t Size)
 Update the internal value of this dynamic parameter as well as the value of this parameter in all registered nodes. More...
 
void updateAccessor (const sycl::detail::AccessorBaseHost *Acc)
 Update the internal value of this dynamic parameter as well as the value of this parameter in all registered nodes. More...
 

Public Attributes

std::vector< std::pair< std::weak_ptr< node_impl >, int > > MNodes
 
std::shared_ptr< graph_implMGraph
 
std::vector< std::byte > MValueStorage
 

Detailed Description

Definition at line 1444 of file graph_impl.hpp.

Constructor & Destructor Documentation

◆ dynamic_parameter_impl()

sycl::_V1::ext::oneapi::experimental::detail::dynamic_parameter_impl::dynamic_parameter_impl ( std::shared_ptr< graph_impl GraphImpl,
size_t  ParamSize,
const void *  Data 
)
inline

Definition at line 1446 of file graph_impl.hpp.

References MValueStorage.

Member Function Documentation

◆ getValue()

void* sycl::_V1::ext::oneapi::experimental::detail::dynamic_parameter_impl::getValue ( )
inline

Get a pointer to the internal value of this dynamic parameter.

Definition at line 1461 of file graph_impl.hpp.

References MValueStorage.

◆ registerNode()

void sycl::_V1::ext::oneapi::experimental::detail::dynamic_parameter_impl::registerNode ( std::shared_ptr< node_impl NodeImpl,
int  ArgIndex 
)
inline

Register a node with this dynamic parameter.

Parameters
NodeImplThe node to be registered
ArgIndexThe arg index for the kernel arg associated with this dynamic_parameter in NodeImpl

Definition at line 1456 of file graph_impl.hpp.

References MNodes.

◆ updateAccessor()

void sycl::_V1::ext::oneapi::experimental::detail::dynamic_parameter_impl::updateAccessor ( const sycl::detail::AccessorBaseHost *  Acc)
inline

Update the internal value of this dynamic parameter as well as the value of this parameter in all registered nodes.

Should only be called for accessor dynamic_parameters.

Parameters
AccThe new accessor value

Definition at line 1481 of file graph_impl.hpp.

References MNodes, and MValueStorage.

◆ updateValue()

void sycl::_V1::ext::oneapi::experimental::detail::dynamic_parameter_impl::updateValue ( const void *  NewValue,
size_t  Size 
)
inline

Update the internal value of this dynamic parameter as well as the value of this parameter in all registered nodes.

Parameters
NewValuePointer to the new value
SizeSize of the data pointer to by NewValue

Definition at line 1467 of file graph_impl.hpp.

References MNodes, and MValueStorage.

Member Data Documentation

◆ MGraph

std::shared_ptr<graph_impl> sycl::_V1::ext::oneapi::experimental::detail::dynamic_parameter_impl::MGraph

Definition at line 1496 of file graph_impl.hpp.

◆ MNodes

std::vector<std::pair<std::weak_ptr<node_impl>, int> > sycl::_V1::ext::oneapi::experimental::detail::dynamic_parameter_impl::MNodes

Definition at line 1494 of file graph_impl.hpp.

Referenced by registerNode(), updateAccessor(), and updateValue().

◆ MValueStorage

std::vector<std::byte> sycl::_V1::ext::oneapi::experimental::detail::dynamic_parameter_impl::MValueStorage

Definition at line 1497 of file graph_impl.hpp.

Referenced by dynamic_parameter_impl(), getValue(), updateAccessor(), and updateValue().


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