40 #include <pvsutil/Logger.h>
44 #include "SkelCL/detail/DeviceList.h"
45 #include "SkelCL/detail/DeviceProperties.h"
46 #include "SkelCL/detail/PlatformID.h"
47 #include "SkelCL/detail/DeviceID.h"
51 void init(detail::DeviceProperties properites)
53 detail::globalDeviceList.init(std::move(properites));
56 void init(detail::PlatformID pID, detail::DeviceID dID)
58 detail::globalDeviceList.init(pID, dID);
73 return detail::PlatformID(pID);
78 return detail::DeviceID(dID);
83 detail::globalDeviceList.clear();
84 LOG_INFO(
"SkelCL terminating. Freeing all resources.");
SKELCL_DLL detail::DeviceProperties allDevices()
Creates a detail::DeviceProperties object representing all devices in the system. This object should ...
SKELCL_DLL void init(detail::DeviceProperties properties=allDevices())
Initializes the SkelCL library. This function (or another init function) has to be called prior to ev...
SKELCL_DLL detail::DeviceID device(size_t dID)
Creates an OpenCL device ID to be used as parameter of the init(detail::PlatformID, detail::DeviceID) function.
SKELCL_DLL detail::DeviceProperties nDevices(size_t n)
Creates a detail::DeviceProperties object representing n devices. This object should be used as param...
SKELCL_DLL void terminate()
Frees all resources allocated internally by SkelCL.
SKELCL_DLL detail::PlatformID platform(size_t pID)
Creates an OpenCL platform ID to be used as parameter of the init(detail::PlatformID, detail::DeviceID) function.