api_omp_triangles Last update: 17.07.2025 1#pragma once 2 3#include <rocky20/api/device/api_device_triangles.hpp> 4#include <rocky20/device/omp_backend.hpp> 5 6namespace rocky::omp 7{ 8 9void dispatch_triangles_kernel( 10 IRockyModel &model, 11 triangles_f_type h_triangle_f_ptr, 12 void *udf_data 13) 14{ 15 if (model.get_number_of_active_triangles() <= 0) 16 return; 17 18 SDeviceModel *device_data = model.get_device_data(0); 19 20 #pragma omp parallel num_threads(model.get_number_of_processes()) 21 { 22 device::execute_triangles_function<OMPBackend>( 23 device_data, 24 model.get_current_time(), 25 Function2Functor<triangles_f_type> { h_triangle_f_ptr }, 26 udf_data); 27 } 28} 29 30} // namespace rocky::omp IRockyModelDefinition rocky_api.h:60 IRockyModel::get_number_of_active_trianglesint get_number_of_active_triangles()Definition rocky_api.cpp:144 IRockyModel::get_current_timedouble get_current_time() constDefinition rocky_api.cpp:129