30 #ifndef _CCL_DEVICE_SELECTOR_H_
31 #define _CCL_DEVICE_SELECTOR_H_
ccl_devsel_filter_type
Filter type.
CCLDevSelDevices ccl_devsel_dep_platform(CCLDevSelDevices devices, void *data, CCLErr **err)
Dependent filter function which only accepts devices of the same platform (the platform to which the ...
CCLDevSelDevices ccl_devsel_dep_menu(CCLDevSelDevices devices, void *data, CCLErr **err)
Dependent filter function which presents a menu to the user allowing him to select the desired device...
Definition of a wrapper class and its methods for OpenCL device objects.
void ccl_devsel_devices_destroy(CCLDevSelDevices devices)
Destroy an object containing device wrappers.
cl_bool ccl_devsel_indep_type_cpu(CCLDevice *dev, void *data, CCLErr **err)
Independent filter function which only accepts CPU devices.
cl_bool(* ccl_devsel_indep)(CCLDevice *device, void *data, CCLErr **err)
Independent filter function: Abstract function for filtering one OpenCL device at a time...
cl_bool ccl_devsel_indep_type_accel(CCLDevice *dev, void *data, CCLErr **err)
Independent filter function which only accepts accelerator devices.
GPtrArray * CCLDevSelDevices
An object containing device wrappers.
Independent filter, filters one device at a time.
CCLDevSelDevices ccl_devsel_select(CCLDevSelFilters *filters, CCLErr **err)
Select one or more OpenCL devices based on the provided filters.
void ccl_devsel_add_dep_filter(CCLDevSelFilters *filters, ccl_devsel_dep filter, void *data)
Add a dependent filter to the filter set.
gchar ** ccl_devsel_get_device_strings(CCLErr **err)
Returns a NULL-terminated array of strings, each one containing the name and vendor of each device in...
void ccl_devsel_add_indep_filter(CCLDevSelFilters *filters, ccl_devsel_indep filter, void *data)
Add an independent filter to the filter set.
CCLDevSelDevices ccl_devsel_dep_index(CCLDevSelDevices devices, void *data, CCLErr **err)
Dependent filter function which selects the device at the specified index, failing if no device is fo...
CCLDevSelDevices(* ccl_devsel_dep)(CCLDevSelDevices devices, void *data, CCLErr **err)
Dependent filter function: Abstract function for filtering several OpenCL devices depending on the av...
cl_bool ccl_devsel_indep_string(CCLDevice *dev, void *data, CCLErr **err)
Independent filter which selects devices based on device name, device vendor and/or platform name...
GPtrArray * CCLDevSelFilters
A set of independent and dependent device filters.
cl_bool ccl_devsel_indep_type_gpu(CCLDevice *dev, void *data, CCLErr **err)
Independent filter function which only accepts GPU devices.
Dependent filter, filters devices depending on the currently available device choices.
Header for normalizing OpenCL versions within cf4ocl.
enum ccl_devsel_filter_type CCLDevSelFilterType
Filter type.
cl_bool ccl_devsel_indep_type(CCLDevice *dev, void *data, CCLErr **err)
Independent filter function which accepts devices of the type given in the data parameter.
GError CCLErr
Error handling class.
void ccl_devsel_print_device_strings(CCLErr **err)
Print to stdout a device description string for each device in the system.
CCLDevSelDevices ccl_devsel_devices_new(CCLErr **err)
Create and return an object with device wrappers for all OpenCL devices present in the system...
cl_bool ccl_devsel_indep_platform(CCLDevice *device, void *data, CCLErr **err)
Independent filter function which only accepts devices of a specified platform.