32 #include "api_compute.h"
34 #include "../Display/Image/buffer_usage.h"
35 #include "compute_event.h"
36 #include "compute_wait_list.h"
46 class ComputeMemoryMap;
47 class ComputeCommandQueue_Impl;
71 void throw_if_null()
const;
81 size_t global_work_size,
84 return run_1d(kernel, global_work_size, 0, 0, wait_list);
89 size_t global_work_size,
90 size_t local_work_size,
93 return run_1d(kernel, global_work_size, local_work_size, 0, wait_list);
98 size_t global_work_size,
99 size_t local_work_size,
105 size_t global_work_size_x,
106 size_t global_work_size_y,
109 return run_2d(kernel, global_work_size_x, global_work_size_y, 0, 0, 0, 0, wait_list);
114 size_t global_work_size_x,
115 size_t global_work_size_y,
116 size_t local_work_size_x,
117 size_t local_work_size_y,
120 return run_2d(kernel, global_work_size_x, global_work_size_y, local_work_size_x, local_work_size_y, 0, 0, wait_list);
125 size_t global_work_size_x,
126 size_t global_work_size_y,
127 size_t local_work_size_x,
128 size_t local_work_size_y,
135 size_t global_work_size_x,
136 size_t global_work_size_y,
137 size_t global_work_size_z,
140 return run_3d(kernel, global_work_size_x, global_work_size_y, global_work_size_z, 0, 0, 0, 0, 0, 0, wait_list);
145 size_t global_work_size_x,
146 size_t global_work_size_y,
147 size_t global_work_size_z,
148 size_t local_work_size_x,
149 size_t local_work_size_y,
150 size_t local_work_size_z,
153 return run_3d(kernel, global_work_size_x, global_work_size_y, global_work_size_z, local_work_size_x, local_work_size_y, local_work_size_z, 0, 0, 0, wait_list);
158 size_t global_work_size_x,
159 size_t global_work_size_y,
160 size_t global_work_size_z,
161 size_t local_work_size_x,
162 size_t local_work_size_y,
163 size_t local_work_size_z,
204 std::shared_ptr<ComputeCommandQueue_Impl> impl;
205 friend class ComputeMemoryMap_Impl;
ComputeEvent run_2d(const ComputeKernel &kernel, size_t global_work_size_x, size_t global_work_size_y, const ComputeWaitList &wait_list=ComputeWaitList())
Definition: compute_command_queue.h:103
Compute buffer.
Definition: compute_buffer.h:52
ComputeEvent run_2d(const ComputeKernel &kernel, size_t global_work_size_x, size_t global_work_size_y, size_t local_work_size_x, size_t local_work_size_y, const ComputeWaitList &wait_list=ComputeWaitList())
Definition: compute_command_queue.h:112
ComputeEvent run_3d(const ComputeKernel &kernel, size_t global_work_size_x, size_t global_work_size_y, size_t global_work_size_z, size_t local_work_size_x, size_t local_work_size_y, size_t local_work_size_z, const ComputeWaitList &wait_list=ComputeWaitList())
Definition: compute_command_queue.h:143
bool is_null() const
Returns true if this object is invalid.
Definition: compute_command_queue.h:68
ComputeEvent run_1d(const ComputeKernel &kernel, size_t global_work_size, size_t local_work_size, const ComputeWaitList &wait_list=ComputeWaitList())
Definition: compute_command_queue.h:87
ComputeEvent run_3d(const ComputeKernel &kernel, size_t global_work_size_x, size_t global_work_size_y, size_t global_work_size_z, const ComputeWaitList &wait_list=ComputeWaitList())
Definition: compute_command_queue.h:133
Compute program kernel object.
Definition: compute_kernel.h:47
Compute command queue.
Definition: compute_command_queue.h:50
Compute event object.
Definition: compute_event.h:43
Compute memory mapping.
Definition: compute_memory_map.h:44
List of events that must have completed before a new operation is executed.
Definition: compute_wait_list.h:41
BufferAccess
Array Buffer access enum.
Definition: buffer_usage.h:55
ComputeEvent run_1d(const ComputeKernel &kernel, size_t global_work_size, const ComputeWaitList &wait_list=ComputeWaitList())
Definition: compute_command_queue.h:79
Interface to compute operations.
Definition: compute_context.h:44