MCPcopy Create free account
hub / github.com/PyMesh/PyMesh / init_kernels

Method init_kernels

tools/OpenCL/OpenCLWrapper.cpp:90–105  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

88}
89
90void OpenCLWrapper::init_kernels() {
91 m_kernels.clear();
92 cl_uint num_kernels;
93 CALL_CL_GUARDED(clCreateKernelsInProgram, (m_program, 0, NULL, &num_kernels));
94 std::vector<cl_kernel> kernels(num_kernels);
95 CALL_CL_GUARDED(clCreateKernelsInProgram, (m_program, num_kernels, kernels.data(), NULL));
96 for (std::vector<cl_kernel>::iterator itr = kernels.begin();
97 itr != kernels.end(); itr++) {
98 size_t name_len;
99 CALL_CL_GUARDED(clGetKernelInfo, (*itr, CL_KERNEL_FUNCTION_NAME, 0, NULL, &name_len));
100 char* name = new char[name_len];
101 CALL_CL_GUARDED(clGetKernelInfo, (*itr, CL_KERNEL_FUNCTION_NAME, name_len, name, NULL));
102 m_kernels[std::string(name)] = *itr;
103 delete [] name;
104 }
105}
106
107void OpenCLWrapper::set_kernel(const std::string& kernel_name) {
108 cl_int err;

Callers

nothing calls this directly

Calls 3

clearMethod · 0.45
beginMethod · 0.45
endMethod · 0.45

Tested by

no test coverage detected