device_intern.h 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. /*
  2. * Copyright 2011-2013 Blender Foundation
  3. *
  4. * Licensed under the Apache License, Version 2.0 (the "License");
  5. * you may not use this file except in compliance with the License.
  6. * You may obtain a copy of the License at
  7. *
  8. * http://www.apache.org/licenses/LICENSE-2.0
  9. *
  10. * Unless required by applicable law or agreed to in writing, software
  11. * distributed under the License is distributed on an "AS IS" BASIS,
  12. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  13. * See the License for the specific language governing permissions and
  14. * limitations under the License.
  15. */
  16. #ifndef __DEVICE_INTERN_H__
  17. #define __DEVICE_INTERN_H__
  18. CCL_NAMESPACE_BEGIN
  19. class Device;
  20. Device *device_cpu_create(DeviceInfo &info, Stats &stats, Profiler &profiler, bool background);
  21. bool device_opencl_init();
  22. Device *device_opencl_create(DeviceInfo &info, Stats &stats, Profiler &profiler, bool background);
  23. bool device_opencl_compile_kernel(const vector<string> &parameters);
  24. bool device_cuda_init();
  25. Device *device_cuda_create(DeviceInfo &info, Stats &stats, Profiler &profiler, bool background);
  26. Device *device_network_create(DeviceInfo &info,
  27. Stats &stats,
  28. Profiler &profiler,
  29. const char *address);
  30. Device *device_multi_create(DeviceInfo &info, Stats &stats, Profiler &profiler, bool background);
  31. void device_cpu_info(vector<DeviceInfo> &devices);
  32. void device_opencl_info(vector<DeviceInfo> &devices);
  33. void device_cuda_info(vector<DeviceInfo> &devices);
  34. void device_network_info(vector<DeviceInfo> &devices);
  35. string device_cpu_capabilities();
  36. string device_opencl_capabilities();
  37. string device_cuda_capabilities();
  38. CCL_NAMESPACE_END
  39. #endif /* __DEVICE_INTERN_H__ */