| 42 | } |
| 43 | |
| 44 | extern "C" XResult OpenclQueueCreate(HwQueueHandle *hwq, cl_command_queue cmdq) |
| 45 | { |
| 46 | HwQueueHandle hwq_h = (HwQueueHandle)cmdq; |
| 47 | auto res = xsched::preempt::HwQueueManager::Add(hwq_h, [&]() { |
| 48 | return std::make_shared<OpenclQueue>(cmdq); |
| 49 | }); |
| 50 | if (res == kXSchedSuccess) *hwq = hwq_h; |
| 51 | return res; |
| 52 | } |