OpenCL.inc 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184
  1. (********************************************)
  2. (* *)
  3. (* OpenCL1.2 and Delphi and Windows *)
  4. (* *)
  5. (* created by : Maksym Tymkovych *)
  6. (* (niello) *)
  7. (* *)
  8. (* headers versions: 0.07 *)
  9. (* file name : OpenCL.inc *)
  10. (* last modify : 10.12.11 *)
  11. (* license : BSD *)
  12. (* *)
  13. (* Site : www.niello.org.ua *)
  14. (* e-mail : [email protected] *)
  15. (* ICQ : 446-769-253 *)
  16. (* *)
  17. (*********Copyright (c) niello 2008-2011*****)
  18. {$IFDEF MSWINDOWS}
  19. {$DEFINE WINDOWS}
  20. {$ENDIF}
  21. {$IFDEF WINDOWS}
  22. {$IF DEFINED(WIN32) or DEFINED(WIN64)}
  23. {$DEFINE WINDESKTOP}
  24. {$ELSE}
  25. {$DEFINE WINMOBILE}
  26. {$IFEND}
  27. {$DEFINE STDCALL}
  28. {$ENDIF}
  29. {$IFDEF LINUX}
  30. {$DEFINE CDECL}
  31. {$ENDIF}
  32. {$IFDEF DARWIN}
  33. {$IF DEFINED(iPHONESIM) or (DEFINED(DARWIN) and DEFINED(CPUARM))}
  34. {$DEFINE iOS}
  35. {$ELSE}
  36. {$DEFINE MACOSX}
  37. {$IFEND}
  38. {$DEFINE CDECL}
  39. {$ENDIF}
  40. {$DEFINE USE_LOG} //Use default procedure Writeln()
  41. //{$DEFINE PURE_OPENCL_1_0}
  42. {$DEFINE PURE_OPENCL_1_1} //Actual now
  43. //{$DEFINE PURE_OPENCL_1_2}
  44. //{$DEFINE PURE_OPENCL_2_0} //TODO: work in progress
  45. //{$DEFINE WITH_DEPERCATED_OPENCL_1_1}
  46. //{$DEFINE WITH_DEPERCATED_OPENCL_1_2}
  47. //{$DEFINE WITH_DEPERCATED_OPENCL_2_0}
  48. //use Defines PURE_OPENCL_1_0 or PURE_OPENCL_1_1 or PURE_OPENCL_1_2
  49. // WITH_DEPERCATED_OPENCL_1_1 or WITH_DEPERCATED_OPENCL_1_2
  50. //{$DEFINE CL_VERSION_1_1}
  51. //{$DEFINE CL_VERSION_1_2} //wait drivers support
  52. //{$DEFINE CL_USE_DEPRECATED_OPENCL_1_0_APIS}
  53. //{$DEFINE CL_USE_DEPRECATED_OPENCL_1_1_APIS}
  54. //{$DEFINE CL_USE_DEPRECATED_OPENCL_1_2_APIS}
  55. //{$DEFINE CL_USE_DEPRECATED_OPENCL_2_0_APIS} //next OpenCL API version
  56. {$IFDEF PURE_OPENCL_1_0}
  57. {$DEFINE CL_VERSION_1_0}
  58. {$DEFINE CL_USE_DEPRECATED_OPENCL_1_0_APIS}
  59. {$UNDEF CL_VERSION_1_1}
  60. {$UNDEF CL_VERSION_1_2}
  61. {$UNDEF CL_USE_DEPRECATED_OPENCL_1_1_APIS}
  62. {$UNDEF CL_USE_DEPRECATED_OPENCL_1_2_APIS}
  63. {$UNDEF CL_USE_DEPRECATED_OPENCL_2_0_APIS}
  64. {$ENDIF}
  65. {$IFDEF PURE_OPENCL_1_1}
  66. {$DEFINE CL_VERSION_1_0}
  67. {$DEFINE CL_VERSION_1_1}
  68. {$DEFINE CL_USE_DEPRECATED_OPENCL_1_1_APIS}
  69. {$UNDEF CL_VERSION_1_2}
  70. {$UNDEF CL_USE_DEPRECATED_OPENCL_1_0_APIS}
  71. {$UNDEF CL_USE_DEPRECATED_OPENCL_1_2_APIS}
  72. {$UNDEF CL_USE_DEPRECATED_OPENCL_2_0_APIS}
  73. {$ENDIF}
  74. {$IFDEF PURE_OPENCL_1_2}
  75. {$DEFINE CL_VERSION_1_0}
  76. {$DEFINE CL_VERSION_1_1}
  77. {$DEFINE CL_VERSION_1_2}
  78. {$DEFINE CL_USE_DEPRECATED_OPENCL_1_2_APIS}
  79. {$UNDEF CL_USE_DEPRECATED_OPENCL_1_0_APIS}
  80. {$UNDEF CL_USE_DEPRECATED_OPENCL_1_1_APIS}
  81. {$UNDEF CL_USE_DEPRECATED_OPENCL_2_0_APIS}
  82. {$ENDIF}
  83. {$IFDEF PURE_OPENCL_2_0}
  84. {$DEFINE CL_VERSION_1_0}
  85. {$DEFINE CL_VERSION_1_1}
  86. {$DEFINE CL_VERSION_1_2}
  87. {$DEFINE CL_VERSION_2_0}
  88. {$DEFINE CL_USE_DEPRECATED_OPENCL_2_0_APIS}
  89. {$UNDEF CL_USE_DEPRECATED_OPENCL_1_0_APIS}
  90. {$UNDEF CL_USE_DEPRECATED_OPENCL_1_1_APIS}
  91. {$UNDEF CL_USE_DEPRECATED_OPENCL_1_2_APIS}
  92. {$ENDIF}
  93. {$IFDEF WITH_DEPERCATED_OPENCL_1_1}
  94. {$DEFINE CL_VERSION_1_0}
  95. {$DEFINE CL_VERSION_1_1}
  96. {$DEFINE CL_USE_DEPRECATED_OPENCL_1_1_APIS}
  97. {$DEFINE CL_USE_DEPRECATED_OPENCL_1_0_APIS}
  98. {$UNDEF CL_VERSION_1_2}
  99. {$UNDEF CL_VERSION_2_0}
  100. {$UNDEF CL_USE_DEPRECATED_OPENCL_1_2_APIS}
  101. {$UNDEF CL_USE_DEPRECATED_OPENCL_2_0_APIS}
  102. {$ENDIF}
  103. {$IFDEF WITH_DEPERCATED_OPENCL_1_2}
  104. {$DEFINE CL_VERSION_1_0}
  105. {$DEFINE CL_VERSION_1_1}
  106. {$DEFINE CL_VERSION_1_2}
  107. {$DEFINE CL_USE_DEPRECATED_OPENCL_1_1_APIS}
  108. {$DEFINE CL_USE_DEPRECATED_OPENCL_1_0_APIS}
  109. {$DEFINE CL_USE_DEPRECATED_OPENCL_1_2_APIS}
  110. {$UNDEF CL_VERSION_2_0}
  111. {$UNDEF CL_USE_DEPRECATED_OPENCL_2_0_APIS}
  112. {$ENDIF}
  113. {$IFDEF WITH_DEPERCATED_OPENCL_2_0}
  114. {$DEFINE CL_VERSION_1_0}
  115. {$DEFINE CL_VERSION_1_1}
  116. {$DEFINE CL_VERSION_1_2}
  117. {$DEFINE CL_VERSION_2_0}
  118. {$DEFINE CL_USE_DEPRECATED_OPENCL_1_1_APIS}
  119. {$DEFINE CL_USE_DEPRECATED_OPENCL_1_0_APIS}
  120. {$DEFINE CL_USE_DEPRECATED_OPENCL_1_2_APIS}
  121. {$DEFINE CL_USE_DEPRECATED_OPENCL_2_0_APIS}
  122. {$ENDIF}
  123. {$IFDEF FPC}
  124. {$MODE Delphi}
  125. {$ENDIF}
  126. {$IFNDEF FPC}
  127. {$IFDEF VER110}//Builder 3
  128. {$DEFINE DEFINE_8087CW_NOT_IMPLEMENTED}
  129. {$DEFINE DEFINE_UINT64_EQU_INT64}
  130. {$DEFINE DEFINE_REGION_NOT_IMPLEMENTED}
  131. {$ENDIF}
  132. {$IFDEF VER100}//Delphi3
  133. {$DEFINE DEFINE_8087CW_NOT_IMPLEMENTED}
  134. {$DEFINE DEFINE_UINT64_EQU_INT64}
  135. {$DEFINE DEFINE_REGION_NOT_IMPLEMENTED}
  136. {$ENDIF}
  137. {$IFDEF VER120}//Delphi 4
  138. {$DEFINE DEFINE_8087CW_NOT_IMPLEMENTED}
  139. {$DEFINE DEFINE_UINT64_EQU_INT64}
  140. {$DEFINE DEFINE_REGION_NOT_IMPLEMENTED}
  141. {$ENDIF}
  142. {$IFDEF VER130}//Delphi 5
  143. {$DEFINE DEFINE_UINT64_EQU_INT64}
  144. {$DEFINE DEFINE_UINT64_EQU_INT64}
  145. {$ENDIF}
  146. {$IFDEF VER140}//Delphi 6
  147. {$DEFINE DEFINE_UINT64_EQU_INT64}
  148. {$DEFINE DEFINE_REGION_NOT_IMPLEMENTED}
  149. {$ENDIF}
  150. {$IFDEF VER150}//Delphi 7
  151. {$DEFINE DEFINE_REGION_NOT_IMPLEMENTED}
  152. {$ENDIF}
  153. {$ENDIF}