index.html 130 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125
  1. <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `ocl_core` crate."><meta name="keywords" content="rust, rustlang, rust-lang, ocl_core"><title>ocl_core - Rust</title><link rel="stylesheet" type="text/css" href="../normalize.css"><link rel="stylesheet" type="text/css" href="../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../dark.css"><link rel="stylesheet" type="text/css" href="../light.css" id="themeStyle"><script src="../storage.js"></script></head><body class="rustdoc mod"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">&#9776;</div><p class='location'>Crate ocl_core</p><div class="sidebar-elems"><div class="block items"><ul><li><a href="#reexports">Re-exports</a></li><li><a href="#modules">Modules</a></li><li><a href="#structs">Structs</a></li><li><a href="#enums">Enums</a></li><li><a href="#constants">Constants</a></li><li><a href="#traits">Traits</a></li><li><a href="#functions">Functions</a></li><li><a href="#types">Type Definitions</a></li></ul></div><p class='location'></p><script>window.sidebarCurrent = {name: 'ocl_core', ty: 'mod', relpath: '../'};</script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!"><img src="../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices"></div></div><script src="../theme.js"></script><nav class="sub"><form class="search-form js-only"><div class="search-container"><input class="search-input" name="search" autocomplete="off" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><a id="settings-menu" href="../settings.html"><img src="../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class='fqn'><span class='in-band'>Crate <a class="mod" href=''>ocl_core</a></span><span class='out-of-band'><span id='render-detail'><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class='inner'>&#x2212;</span>]</a></span><a class='srclink' href='../src/ocl_core/lib.rs.html#3-1334' title='goto source code'>[src]</a></span></h1><div class='docblock'><p>Thin wrappers for the <code>OpenCL</code> FFI functions and types.</p>
  2. <p>Allows access to <code>OpenCL</code> FFI functions with a minimal layer of zero-cost
  3. abstraction, providing, safety, performance, and convenience. The <a href="https://github.com/cogciprocate/ocl"><code>ocl</code></a>
  4. crate contains higher level and easier to use interfaces to the
  5. functionality contained within.</p>
  6. <h2 id="even-lower-level-cl-sys" class="section-header"><a href="#even-lower-level-cl-sys">Even Lower Level: <a href="https://github.com/cogciprocate/cl-sys"><code>cl-sys</code></a></a></h2>
  7. <p>If there's still something missing or for some reason you need direct FFI
  8. access, use the functions in the <a href="https://github.com/cogciprocate/cl-sys"><code>cl-sys</code></a> module. The pointers used by
  9. <a href="https://github.com/cogciprocate/cl-sys"><code>cl-sys</code></a> functions can be wrapped in <a href="https://github.com/cogciprocate/ocl-core"><code>ocl-core</code></a> wrappers
  10. (<code>ocl_core::PlatformId</code>, <code>ocl_core::Context</code>, etc.) and passed to
  11. <a href="https://github.com/cogciprocate/ocl-core"><code>ocl-core</code></a> module functions. Likewise the other way around (using, for
  12. example: [<code>EventRaw::as_ptr</code>]).</p>
  13. <h2 id="performance" class="section-header"><a href="#performance">Performance</a></h2>
  14. <p>Performance between all three interface layers, <a href="https://github.com/cogciprocate/cl-sys"><code>cl-sys</code></a>, <a href="https://github.com/cogciprocate/ocl-core"><code>ocl-core</code></a>,
  15. and the 'standard' (<a href="https://github.com/cogciprocate/ocl"><code>ocl</code></a>) types, is identical or virtually identical
  16. (if not, please file an issue).</p>
  17. <h2 id="safety" class="section-header"><a href="#safety">Safety</a></h2>
  18. <p>Running any kernel at all is inherently unsafe. The guarantee we aim to
  19. make in this library is that if there is a segfault or invalid memory
  20. access, the fault lies within the kernel. No effort is or will be made to
  21. verify or sanitize kernels. Consider all kernels within user-supplied
  22. programs just as if you would an <code>unsafe fn</code>.</p>
  23. <h2 id="length-vs-size" class="section-header"><a href="#length-vs-size">Length vs Size</a></h2>
  24. <p>No, not that...</p>
  25. <p>Quantifiers passed to functions in the <code>OpenCL</code> API are generally
  26. expressed in bytes. Units passed to functions in <em>this</em> library are
  27. expected to be <code>bytes / sizeof(T)</code> (corresponding with units returned by
  28. the ubiquitous <code>.len()</code> method). The suffix '_size' or '_bytes' is
  29. generally used when a parameter deviates from this convention.</p>
  30. <h2 id="version-control" class="section-header"><a href="#version-control">Version Control</a></h2>
  31. <p>The version control system is in place to ensure that you don't call
  32. functions that your hardware/driver does not support.</p>
  33. <p>Functions in this crate with the <code>[Version Controlled: OpenCL {...}+]</code> tag
  34. in the description require an additional parameter, <code>device_version</code> or
  35. <code>device_versions</code>: a parsed result (or slice of results) of
  36. <code>DeviceInfo::Version</code>. This is a runtime check to ensure that the device
  37. supports the function being called. Calling a function which a particular
  38. device does not support will likely cause a segmentation fault and
  39. possibly data corruption.</p>
  40. <p>Saving the <code>OpenclVersion</code> returned from <code>device_version()</code> for your
  41. device(s) at the start of your program and passing it each time you call
  42. a version controlled function is the fastest and safest method (see the
  43. <code>ocl</code> library for an example). The cost of this check is little more than
  44. a single <code>if</code> statement.</p>
  45. <p>Passing <code>None</code> for <code>device_version</code> will cause an automated version check
  46. which has a small cost (calling info function, parsing the version number
  47. etc.) but is a safe option if you are not sure what to do.</p>
  48. <p>Passing the result of a call to <code>OpenclVersion::max()</code> or passing a fake
  49. version will bypass any safety checks and has all of the risks described
  50. above. Only do this if you're absolutely sure you know what you're doing
  51. and are not concerned about segfaults and data integrity.</p>
  52. <h2 id="more-documentation" class="section-header"><a href="#more-documentation">More Documentation</a></h2>
  53. <p>As most of the functions here are minimally documented, please refer to
  54. the official <code>OpenCL</code> documentation linked below. Although there isn't a
  55. precise 1:1 parameter mapping between the <code>core</code> and original functions,
  56. it's close enough (modulo the size/len difference discussed above) to help
  57. sort out any questions you may have until a more thorough documentation
  58. pass can be made. View the source code in <a href="/ocl-core/src/ocl-core/src/types/functions.rs.html"><code>src/types/functions.rs</code></a> for
  59. more mapping details.</p>
  60. <p><a href="https://www.khronos.org/registry/cl/sdk/1.2/docs/man/xhtml/">'OpenCL' 1.2 SDK Reference: https://www.khronos.org/registry/cl/sdk/1.2/docs/man/xhtml/</a></p>
  61. </div><h2 id='reexports' class='section-header'><a href="#reexports">Re-exports</a></h2>
  62. <table><tr><td><code>pub extern crate <a class="mod" href="../cl_sys/index.html" title="mod cl_sys">cl_sys</a> as ffi;</code></td></tr><tr><td><code>pub use self::error::<a class="struct" href="../ocl_core/error/struct.Error.html" title="struct ocl_core::error::Error">Error</a>;</code></td></tr><tr><td><code>pub use self::error::<a class="type" href="../ocl_core/error/type.Result.html" title="type ocl_core::error::Result">Result</a>;</code></td></tr><tr><td><code>pub use self::error::<a class="enum" href="../ocl_core/error/enum.ErrorKind.html" title="enum ocl_core::error::ErrorKind">ErrorKind</a>;</code></td></tr><tr><td><code>pub use self::types::abs::<a class="trait" href="../ocl_core/types/abs/trait.ClWaitListPtr.html" title="trait ocl_core::types::abs::ClWaitListPtr">ClWaitListPtr</a>;</code></td></tr><tr><td><code>pub use self::types::abs::<a class="trait" href="../ocl_core/types/abs/trait.ClNullEventPtr.html" title="trait ocl_core::types::abs::ClNullEventPtr">ClNullEventPtr</a>;</code></td></tr><tr><td><code>pub use self::types::abs::<a class="trait" href="../ocl_core/types/abs/trait.ClEventPtrRef.html" title="trait ocl_core::types::abs::ClEventPtrRef">ClEventPtrRef</a>;</code></td></tr><tr><td><code>pub use self::types::abs::<a class="trait" href="../ocl_core/types/abs/trait.ClPlatformIdPtr.html" title="trait ocl_core::types::abs::ClPlatformIdPtr">ClPlatformIdPtr</a>;</code></td></tr><tr><td><code>pub use self::types::abs::<a class="trait" href="../ocl_core/types/abs/trait.ClDeviceIdPtr.html" title="trait ocl_core::types::abs::ClDeviceIdPtr">ClDeviceIdPtr</a>;</code></td></tr><tr><td><code>pub use self::types::abs::<a class="trait" href="../ocl_core/types/abs/trait.ClContextPtr.html" title="trait ocl_core::types::abs::ClContextPtr">ClContextPtr</a>;</code></td></tr><tr><td><code>pub use self::types::abs::<a class="struct" href="../ocl_core/types/abs/struct.EventRefWrapper.html" title="struct ocl_core::types::abs::EventRefWrapper">EventRefWrapper</a>;</code></td></tr><tr><td><code>pub use self::types::abs::<a class="struct" href="../ocl_core/types/abs/struct.PlatformId.html" title="struct ocl_core::types::abs::PlatformId">PlatformId</a>;</code></td></tr><tr><td><code>pub use self::types::abs::<a class="struct" href="../ocl_core/types/abs/struct.DeviceId.html" title="struct ocl_core::types::abs::DeviceId">DeviceId</a>;</code></td></tr><tr><td><code>pub use self::types::abs::<a class="struct" href="../ocl_core/types/abs/struct.Context.html" title="struct ocl_core::types::abs::Context">Context</a>;</code></td></tr><tr><td><code>pub use self::types::abs::<a class="struct" href="../ocl_core/types/abs/struct.CommandQueue.html" title="struct ocl_core::types::abs::CommandQueue">CommandQueue</a>;</code></td></tr><tr><td><code>pub use self::types::abs::<a class="struct" href="../ocl_core/types/abs/struct.Mem.html" title="struct ocl_core::types::abs::Mem">Mem</a>;</code></td></tr><tr><td><code>pub use self::types::abs::<a class="struct" href="../ocl_core/types/abs/struct.Program.html" title="struct ocl_core::types::abs::Program">Program</a>;</code></td></tr><tr><td><code>pub use self::types::abs::<a class="struct" href="../ocl_core/types/abs/struct.Kernel.html" title="struct ocl_core::types::abs::Kernel">Kernel</a>;</code></td></tr><tr><td><code>pub use self::types::abs::<a class="struct" href="../ocl_core/types/abs/struct.Event.html" title="struct ocl_core::types::abs::Event">Event</a>;</code></td></tr><tr><td><code>pub use self::types::abs::<a class="struct" href="../ocl_core/types/abs/struct.Sampler.html" title="struct ocl_core::types::abs::Sampler">Sampler</a>;</code></td></tr><tr><td><code>pub use self::types::abs::<a class="trait" href="../ocl_core/types/abs/trait.ClVersions.html" title="trait ocl_core::types::abs::ClVersions">ClVersions</a>;</code></td></tr><tr><td><code>pub use self::types::abs::<a class="trait" href="../ocl_core/types/abs/trait.AsMem.html" title="trait ocl_core::types::abs::AsMem">AsMem</a>;</code></td></tr><tr><td><code>pub use self::types::abs::<a class="trait" href="../ocl_core/types/abs/trait.MemCmdRw.html" title="trait ocl_core::types::abs::MemCmdRw">MemCmdRw</a>;</code></td></tr><tr><td><code>pub use self::types::abs::<a class="trait" href="../ocl_core/types/abs/trait.MemCmdAll.html" title="trait ocl_core::types::abs::MemCmdAll">MemCmdAll</a>;</code></td></tr><tr><td><code>pub use self::types::abs::<a class="struct" href="../ocl_core/types/abs/struct.MemMap.html" title="struct ocl_core::types::abs::MemMap">MemMap</a>;</code></td></tr><tr><td><code>pub use self::types::<a class="mod" href="../ocl_core/types/structs/index.html" title="mod ocl_core::types::structs">structs</a>;</code></td></tr><tr><td><code>pub use self::types::structs::<a class="struct" href="../ocl_core/types/structs/struct.OpenclVersion.html" title="struct ocl_core::types::structs::OpenclVersion">OpenclVersion</a>;</code></td></tr><tr><td><code>pub use self::types::structs::<a class="struct" href="../ocl_core/types/structs/struct.ContextProperties.html" title="struct ocl_core::types::structs::ContextProperties">ContextProperties</a>;</code></td></tr><tr><td><code>pub use self::types::structs::<a class="enum" href="../ocl_core/types/structs/enum.ImageFormatParseError.html" title="enum ocl_core::types::structs::ImageFormatParseError">ImageFormatParseError</a>;</code></td></tr><tr><td><code>pub use self::types::structs::<a class="type" href="../ocl_core/types/structs/type.ImageFormatParseResult.html" title="type ocl_core::types::structs::ImageFormatParseResult">ImageFormatParseResult</a>;</code></td></tr><tr><td><code>pub use self::types::structs::<a class="struct" href="../ocl_core/types/structs/struct.ImageFormat.html" title="struct ocl_core::types::structs::ImageFormat">ImageFormat</a>;</code></td></tr><tr><td><code>pub use self::types::structs::<a class="struct" href="../ocl_core/types/structs/struct.ImageDescriptor.html" title="struct ocl_core::types::structs::ImageDescriptor">ImageDescriptor</a>;</code></td></tr><tr><td><code>pub use self::types::structs::<a class="struct" href="../ocl_core/types/structs/struct.BufferRegion.html" title="struct ocl_core::types::structs::BufferRegion">BufferRegion</a>;</code></td></tr><tr><td><code>pub use self::types::structs::<a class="enum" href="../ocl_core/types/structs/enum.ContextPropertyValue.html" title="enum ocl_core::types::structs::ContextPropertyValue">ContextPropertyValue</a>;</code></td></tr><tr><td><code>pub use self::types::structs::<a class="struct" href="../ocl_core/types/structs/struct.ArgVal.html" title="struct ocl_core::types::structs::ArgVal">ArgVal</a>;</code></td></tr><tr><td><code>pub use self::types::enums::<a class="enum" href="../ocl_core/types/enums/enum.EmptyInfoResultError.html" title="enum ocl_core::types::enums::EmptyInfoResultError">EmptyInfoResultError</a>;</code></td></tr><tr><td><code>pub use self::types::enums::<a class="enum" href="../ocl_core/types/enums/enum.PlatformInfoResult.html" title="enum ocl_core::types::enums::PlatformInfoResult">PlatformInfoResult</a>;</code></td></tr><tr><td><code>pub use self::types::enums::<a class="enum" href="../ocl_core/types/enums/enum.DeviceInfoResult.html" title="enum ocl_core::types::enums::DeviceInfoResult">DeviceInfoResult</a>;</code></td></tr><tr><td><code>pub use self::types::enums::<a class="enum" href="../ocl_core/types/enums/enum.ContextInfoResult.html" title="enum ocl_core::types::enums::ContextInfoResult">ContextInfoResult</a>;</code></td></tr><tr><td><code>pub use self::types::enums::<a class="enum" href="../ocl_core/types/enums/enum.GlContextInfoResult.html" title="enum ocl_core::types::enums::GlContextInfoResult">GlContextInfoResult</a>;</code></td></tr><tr><td><code>pub use self::types::enums::<a class="enum" href="../ocl_core/types/enums/enum.CommandQueueInfoResult.html" title="enum ocl_core::types::enums::CommandQueueInfoResult">CommandQueueInfoResult</a>;</code></td></tr><tr><td><code>pub use self::types::enums::<a class="enum" href="../ocl_core/types/enums/enum.MemInfoResult.html" title="enum ocl_core::types::enums::MemInfoResult">MemInfoResult</a>;</code></td></tr><tr><td><code>pub use self::types::enums::<a class="enum" href="../ocl_core/types/enums/enum.ImageInfoResult.html" title="enum ocl_core::types::enums::ImageInfoResult">ImageInfoResult</a>;</code></td></tr><tr><td><code>pub use self::types::enums::<a class="enum" href="../ocl_core/types/enums/enum.SamplerInfoResult.html" title="enum ocl_core::types::enums::SamplerInfoResult">SamplerInfoResult</a>;</code></td></tr><tr><td><code>pub use self::types::enums::<a class="enum" href="../ocl_core/types/enums/enum.ProgramInfoResult.html" title="enum ocl_core::types::enums::ProgramInfoResult">ProgramInfoResult</a>;</code></td></tr><tr><td><code>pub use self::types::enums::<a class="enum" href="../ocl_core/types/enums/enum.ProgramBuildInfoResult.html" title="enum ocl_core::types::enums::ProgramBuildInfoResult">ProgramBuildInfoResult</a>;</code></td></tr><tr><td><code>pub use self::types::enums::<a class="enum" href="../ocl_core/types/enums/enum.KernelInfoResult.html" title="enum ocl_core::types::enums::KernelInfoResult">KernelInfoResult</a>;</code></td></tr><tr><td><code>pub use self::types::enums::<a class="enum" href="../ocl_core/types/enums/enum.KernelArgInfoResult.html" title="enum ocl_core::types::enums::KernelArgInfoResult">KernelArgInfoResult</a>;</code></td></tr><tr><td><code>pub use self::types::enums::<a class="enum" href="../ocl_core/types/enums/enum.KernelWorkGroupInfoResult.html" title="enum ocl_core::types::enums::KernelWorkGroupInfoResult">KernelWorkGroupInfoResult</a>;</code></td></tr><tr><td><code>pub use self::types::enums::<a class="enum" href="../ocl_core/types/enums/enum.EventInfoResult.html" title="enum ocl_core::types::enums::EventInfoResult">EventInfoResult</a>;</code></td></tr><tr><td><code>pub use self::types::enums::<a class="enum" href="../ocl_core/types/enums/enum.ProfilingInfoResult.html" title="enum ocl_core::types::enums::ProfilingInfoResult">ProfilingInfoResult</a>;</code></td></tr></table><h2 id='modules' class='section-header'><a href="#modules">Modules</a></h2>
  63. <table>
  64. <tr class=' module-item'>
  65. <td><a class="mod" href="error/index.html"
  66. title='mod ocl_core::error'>error</a></td>
  67. <td class='docblock-short'>
  68. <p>Standard error type for ocl.</p>
  69. </td>
  70. </tr>
  71. <tr class=' module-item'>
  72. <td><a class="mod" href="types/index.html"
  73. title='mod ocl_core::types'>types</a></td>
  74. <td class='docblock-short'>
  75. </td>
  76. </tr>
  77. <tr class=' module-item'>
  78. <td><a class="mod" href="util/index.html"
  79. title='mod ocl_core::util'>util</a></td>
  80. <td class='docblock-short'>
  81. <p>Utility and debugging functions.</p>
  82. </td>
  83. </tr></table><h2 id='structs' class='section-header'><a href="#structs">Structs</a></h2>
  84. <table>
  85. <tr class=' module-item'>
  86. <td><a class="struct" href="struct.Char.html"
  87. title='struct ocl_core::Char'>Char</a></td>
  88. <td class='docblock-short'>
  89. </td>
  90. </tr>
  91. <tr class=' module-item'>
  92. <td><a class="struct" href="struct.Char2.html"
  93. title='struct ocl_core::Char2'>Char2</a></td>
  94. <td class='docblock-short'>
  95. </td>
  96. </tr>
  97. <tr class=' module-item'>
  98. <td><a class="struct" href="struct.Char3.html"
  99. title='struct ocl_core::Char3'>Char3</a></td>
  100. <td class='docblock-short'>
  101. </td>
  102. </tr>
  103. <tr class=' module-item'>
  104. <td><a class="struct" href="struct.Char4.html"
  105. title='struct ocl_core::Char4'>Char4</a></td>
  106. <td class='docblock-short'>
  107. </td>
  108. </tr>
  109. <tr class=' module-item'>
  110. <td><a class="struct" href="struct.Char8.html"
  111. title='struct ocl_core::Char8'>Char8</a></td>
  112. <td class='docblock-short'>
  113. </td>
  114. </tr>
  115. <tr class=' module-item'>
  116. <td><a class="struct" href="struct.Char16.html"
  117. title='struct ocl_core::Char16'>Char16</a></td>
  118. <td class='docblock-short'>
  119. </td>
  120. </tr>
  121. <tr class=' module-item'>
  122. <td><a class="struct" href="struct.CommandQueueProperties.html"
  123. title='struct ocl_core::CommandQueueProperties'>CommandQueueProperties</a></td>
  124. <td class='docblock-short'>
  125. <p>cl_command_queue_properties - bitfield</p>
  126. </td>
  127. </tr>
  128. <tr class=' module-item'>
  129. <td><a class="struct" href="struct.DeviceAffinityDomain.html"
  130. title='struct ocl_core::DeviceAffinityDomain'>DeviceAffinityDomain</a></td>
  131. <td class='docblock-short'>
  132. <p>cl_device_affinity_domain</p>
  133. </td>
  134. </tr>
  135. <tr class=' module-item'>
  136. <td><a class="struct" href="struct.DeviceExecCapabilities.html"
  137. title='struct ocl_core::DeviceExecCapabilities'>DeviceExecCapabilities</a></td>
  138. <td class='docblock-short'>
  139. <p>cl_device_exec_capabilities - bitfield</p>
  140. </td>
  141. </tr>
  142. <tr class=' module-item'>
  143. <td><a class="struct" href="struct.DeviceFpConfig.html"
  144. title='struct ocl_core::DeviceFpConfig'>DeviceFpConfig</a></td>
  145. <td class='docblock-short'>
  146. <p>cl_device_fp_config - bitfield</p>
  147. </td>
  148. </tr>
  149. <tr class=' module-item'>
  150. <td><a class="struct" href="struct.DeviceType.html"
  151. title='struct ocl_core::DeviceType'>DeviceType</a></td>
  152. <td class='docblock-short'>
  153. <p>cl_device_type - bitfield</p>
  154. </td>
  155. </tr>
  156. <tr class=' module-item'>
  157. <td><a class="struct" href="struct.Double.html"
  158. title='struct ocl_core::Double'>Double</a></td>
  159. <td class='docblock-short'>
  160. </td>
  161. </tr>
  162. <tr class=' module-item'>
  163. <td><a class="struct" href="struct.Double2.html"
  164. title='struct ocl_core::Double2'>Double2</a></td>
  165. <td class='docblock-short'>
  166. </td>
  167. </tr>
  168. <tr class=' module-item'>
  169. <td><a class="struct" href="struct.Double3.html"
  170. title='struct ocl_core::Double3'>Double3</a></td>
  171. <td class='docblock-short'>
  172. </td>
  173. </tr>
  174. <tr class=' module-item'>
  175. <td><a class="struct" href="struct.Double4.html"
  176. title='struct ocl_core::Double4'>Double4</a></td>
  177. <td class='docblock-short'>
  178. </td>
  179. </tr>
  180. <tr class=' module-item'>
  181. <td><a class="struct" href="struct.Double8.html"
  182. title='struct ocl_core::Double8'>Double8</a></td>
  183. <td class='docblock-short'>
  184. </td>
  185. </tr>
  186. <tr class=' module-item'>
  187. <td><a class="struct" href="struct.Double16.html"
  188. title='struct ocl_core::Double16'>Double16</a></td>
  189. <td class='docblock-short'>
  190. </td>
  191. </tr>
  192. <tr class=' module-item'>
  193. <td><a class="struct" href="struct.Float.html"
  194. title='struct ocl_core::Float'>Float</a></td>
  195. <td class='docblock-short'>
  196. </td>
  197. </tr>
  198. <tr class=' module-item'>
  199. <td><a class="struct" href="struct.Float2.html"
  200. title='struct ocl_core::Float2'>Float2</a></td>
  201. <td class='docblock-short'>
  202. </td>
  203. </tr>
  204. <tr class=' module-item'>
  205. <td><a class="struct" href="struct.Float3.html"
  206. title='struct ocl_core::Float3'>Float3</a></td>
  207. <td class='docblock-short'>
  208. </td>
  209. </tr>
  210. <tr class=' module-item'>
  211. <td><a class="struct" href="struct.Float4.html"
  212. title='struct ocl_core::Float4'>Float4</a></td>
  213. <td class='docblock-short'>
  214. </td>
  215. </tr>
  216. <tr class=' module-item'>
  217. <td><a class="struct" href="struct.Float8.html"
  218. title='struct ocl_core::Float8'>Float8</a></td>
  219. <td class='docblock-short'>
  220. </td>
  221. </tr>
  222. <tr class=' module-item'>
  223. <td><a class="struct" href="struct.Float16.html"
  224. title='struct ocl_core::Float16'>Float16</a></td>
  225. <td class='docblock-short'>
  226. </td>
  227. </tr>
  228. <tr class=' module-item'>
  229. <td><a class="struct" href="struct.Int.html"
  230. title='struct ocl_core::Int'>Int</a></td>
  231. <td class='docblock-short'>
  232. </td>
  233. </tr>
  234. <tr class=' module-item'>
  235. <td><a class="struct" href="struct.Int2.html"
  236. title='struct ocl_core::Int2'>Int2</a></td>
  237. <td class='docblock-short'>
  238. </td>
  239. </tr>
  240. <tr class=' module-item'>
  241. <td><a class="struct" href="struct.Int3.html"
  242. title='struct ocl_core::Int3'>Int3</a></td>
  243. <td class='docblock-short'>
  244. </td>
  245. </tr>
  246. <tr class=' module-item'>
  247. <td><a class="struct" href="struct.Int4.html"
  248. title='struct ocl_core::Int4'>Int4</a></td>
  249. <td class='docblock-short'>
  250. </td>
  251. </tr>
  252. <tr class=' module-item'>
  253. <td><a class="struct" href="struct.Int8.html"
  254. title='struct ocl_core::Int8'>Int8</a></td>
  255. <td class='docblock-short'>
  256. </td>
  257. </tr>
  258. <tr class=' module-item'>
  259. <td><a class="struct" href="struct.Int16.html"
  260. title='struct ocl_core::Int16'>Int16</a></td>
  261. <td class='docblock-short'>
  262. </td>
  263. </tr>
  264. <tr class=' module-item'>
  265. <td><a class="struct" href="struct.KernelArgTypeQualifier.html"
  266. title='struct ocl_core::KernelArgTypeQualifier'>KernelArgTypeQualifier</a></td>
  267. <td class='docblock-short'>
  268. <p>cl_kernel_arg_type_qualifer</p>
  269. </td>
  270. </tr>
  271. <tr class=' module-item'>
  272. <td><a class="struct" href="struct.Long.html"
  273. title='struct ocl_core::Long'>Long</a></td>
  274. <td class='docblock-short'>
  275. </td>
  276. </tr>
  277. <tr class=' module-item'>
  278. <td><a class="struct" href="struct.Long2.html"
  279. title='struct ocl_core::Long2'>Long2</a></td>
  280. <td class='docblock-short'>
  281. </td>
  282. </tr>
  283. <tr class=' module-item'>
  284. <td><a class="struct" href="struct.Long3.html"
  285. title='struct ocl_core::Long3'>Long3</a></td>
  286. <td class='docblock-short'>
  287. </td>
  288. </tr>
  289. <tr class=' module-item'>
  290. <td><a class="struct" href="struct.Long4.html"
  291. title='struct ocl_core::Long4'>Long4</a></td>
  292. <td class='docblock-short'>
  293. </td>
  294. </tr>
  295. <tr class=' module-item'>
  296. <td><a class="struct" href="struct.Long8.html"
  297. title='struct ocl_core::Long8'>Long8</a></td>
  298. <td class='docblock-short'>
  299. </td>
  300. </tr>
  301. <tr class=' module-item'>
  302. <td><a class="struct" href="struct.Long16.html"
  303. title='struct ocl_core::Long16'>Long16</a></td>
  304. <td class='docblock-short'>
  305. </td>
  306. </tr>
  307. <tr class=' module-item'>
  308. <td><a class="struct" href="struct.MapFlags.html"
  309. title='struct ocl_core::MapFlags'>MapFlags</a></td>
  310. <td class='docblock-short'>
  311. <p>cl_map_flags - bitfield</p>
  312. </td>
  313. </tr>
  314. <tr class=' module-item'>
  315. <td><a class="struct" href="struct.MemFlags.html"
  316. title='struct ocl_core::MemFlags'>MemFlags</a></td>
  317. <td class='docblock-short'>
  318. <p>cl_mem_flags - bitfield</p>
  319. </td>
  320. </tr>
  321. <tr class=' module-item'>
  322. <td><a class="struct" href="struct.MemMigrationFlags.html"
  323. title='struct ocl_core::MemMigrationFlags'>MemMigrationFlags</a></td>
  324. <td class='docblock-short'>
  325. <p>cl_mem_migration_flags - bitfield</p>
  326. </td>
  327. </tr>
  328. <tr class=' module-item'>
  329. <td><a class="struct" href="struct.ProgramBinaryType.html"
  330. title='struct ocl_core::ProgramBinaryType'>ProgramBinaryType</a></td>
  331. <td class='docblock-short'>
  332. <p>cl_program_binary_type</p>
  333. </td>
  334. </tr>
  335. <tr class=' module-item'>
  336. <td><a class="struct" href="struct.Short.html"
  337. title='struct ocl_core::Short'>Short</a></td>
  338. <td class='docblock-short'>
  339. </td>
  340. </tr>
  341. <tr class=' module-item'>
  342. <td><a class="struct" href="struct.Short2.html"
  343. title='struct ocl_core::Short2'>Short2</a></td>
  344. <td class='docblock-short'>
  345. </td>
  346. </tr>
  347. <tr class=' module-item'>
  348. <td><a class="struct" href="struct.Short3.html"
  349. title='struct ocl_core::Short3'>Short3</a></td>
  350. <td class='docblock-short'>
  351. </td>
  352. </tr>
  353. <tr class=' module-item'>
  354. <td><a class="struct" href="struct.Short4.html"
  355. title='struct ocl_core::Short4'>Short4</a></td>
  356. <td class='docblock-short'>
  357. </td>
  358. </tr>
  359. <tr class=' module-item'>
  360. <td><a class="struct" href="struct.Short8.html"
  361. title='struct ocl_core::Short8'>Short8</a></td>
  362. <td class='docblock-short'>
  363. </td>
  364. </tr>
  365. <tr class=' module-item'>
  366. <td><a class="struct" href="struct.Short16.html"
  367. title='struct ocl_core::Short16'>Short16</a></td>
  368. <td class='docblock-short'>
  369. </td>
  370. </tr>
  371. <tr class=' module-item'>
  372. <td><a class="struct" href="struct.Uchar.html"
  373. title='struct ocl_core::Uchar'>Uchar</a></td>
  374. <td class='docblock-short'>
  375. </td>
  376. </tr>
  377. <tr class=' module-item'>
  378. <td><a class="struct" href="struct.Uchar2.html"
  379. title='struct ocl_core::Uchar2'>Uchar2</a></td>
  380. <td class='docblock-short'>
  381. </td>
  382. </tr>
  383. <tr class=' module-item'>
  384. <td><a class="struct" href="struct.Uchar3.html"
  385. title='struct ocl_core::Uchar3'>Uchar3</a></td>
  386. <td class='docblock-short'>
  387. </td>
  388. </tr>
  389. <tr class=' module-item'>
  390. <td><a class="struct" href="struct.Uchar4.html"
  391. title='struct ocl_core::Uchar4'>Uchar4</a></td>
  392. <td class='docblock-short'>
  393. </td>
  394. </tr>
  395. <tr class=' module-item'>
  396. <td><a class="struct" href="struct.Uchar8.html"
  397. title='struct ocl_core::Uchar8'>Uchar8</a></td>
  398. <td class='docblock-short'>
  399. </td>
  400. </tr>
  401. <tr class=' module-item'>
  402. <td><a class="struct" href="struct.Uchar16.html"
  403. title='struct ocl_core::Uchar16'>Uchar16</a></td>
  404. <td class='docblock-short'>
  405. </td>
  406. </tr>
  407. <tr class=' module-item'>
  408. <td><a class="struct" href="struct.Uint.html"
  409. title='struct ocl_core::Uint'>Uint</a></td>
  410. <td class='docblock-short'>
  411. </td>
  412. </tr>
  413. <tr class=' module-item'>
  414. <td><a class="struct" href="struct.Uint2.html"
  415. title='struct ocl_core::Uint2'>Uint2</a></td>
  416. <td class='docblock-short'>
  417. </td>
  418. </tr>
  419. <tr class=' module-item'>
  420. <td><a class="struct" href="struct.Uint3.html"
  421. title='struct ocl_core::Uint3'>Uint3</a></td>
  422. <td class='docblock-short'>
  423. </td>
  424. </tr>
  425. <tr class=' module-item'>
  426. <td><a class="struct" href="struct.Uint4.html"
  427. title='struct ocl_core::Uint4'>Uint4</a></td>
  428. <td class='docblock-short'>
  429. </td>
  430. </tr>
  431. <tr class=' module-item'>
  432. <td><a class="struct" href="struct.Uint8.html"
  433. title='struct ocl_core::Uint8'>Uint8</a></td>
  434. <td class='docblock-short'>
  435. </td>
  436. </tr>
  437. <tr class=' module-item'>
  438. <td><a class="struct" href="struct.Uint16.html"
  439. title='struct ocl_core::Uint16'>Uint16</a></td>
  440. <td class='docblock-short'>
  441. </td>
  442. </tr>
  443. <tr class=' module-item'>
  444. <td><a class="struct" href="struct.Ulong.html"
  445. title='struct ocl_core::Ulong'>Ulong</a></td>
  446. <td class='docblock-short'>
  447. </td>
  448. </tr>
  449. <tr class=' module-item'>
  450. <td><a class="struct" href="struct.Ulong2.html"
  451. title='struct ocl_core::Ulong2'>Ulong2</a></td>
  452. <td class='docblock-short'>
  453. </td>
  454. </tr>
  455. <tr class=' module-item'>
  456. <td><a class="struct" href="struct.Ulong3.html"
  457. title='struct ocl_core::Ulong3'>Ulong3</a></td>
  458. <td class='docblock-short'>
  459. </td>
  460. </tr>
  461. <tr class=' module-item'>
  462. <td><a class="struct" href="struct.Ulong4.html"
  463. title='struct ocl_core::Ulong4'>Ulong4</a></td>
  464. <td class='docblock-short'>
  465. </td>
  466. </tr>
  467. <tr class=' module-item'>
  468. <td><a class="struct" href="struct.Ulong8.html"
  469. title='struct ocl_core::Ulong8'>Ulong8</a></td>
  470. <td class='docblock-short'>
  471. </td>
  472. </tr>
  473. <tr class=' module-item'>
  474. <td><a class="struct" href="struct.Ulong16.html"
  475. title='struct ocl_core::Ulong16'>Ulong16</a></td>
  476. <td class='docblock-short'>
  477. </td>
  478. </tr>
  479. <tr class=' module-item'>
  480. <td><a class="struct" href="struct.Ushort.html"
  481. title='struct ocl_core::Ushort'>Ushort</a></td>
  482. <td class='docblock-short'>
  483. </td>
  484. </tr>
  485. <tr class=' module-item'>
  486. <td><a class="struct" href="struct.Ushort2.html"
  487. title='struct ocl_core::Ushort2'>Ushort2</a></td>
  488. <td class='docblock-short'>
  489. </td>
  490. </tr>
  491. <tr class=' module-item'>
  492. <td><a class="struct" href="struct.Ushort3.html"
  493. title='struct ocl_core::Ushort3'>Ushort3</a></td>
  494. <td class='docblock-short'>
  495. </td>
  496. </tr>
  497. <tr class=' module-item'>
  498. <td><a class="struct" href="struct.Ushort4.html"
  499. title='struct ocl_core::Ushort4'>Ushort4</a></td>
  500. <td class='docblock-short'>
  501. </td>
  502. </tr>
  503. <tr class=' module-item'>
  504. <td><a class="struct" href="struct.Ushort8.html"
  505. title='struct ocl_core::Ushort8'>Ushort8</a></td>
  506. <td class='docblock-short'>
  507. </td>
  508. </tr>
  509. <tr class=' module-item'>
  510. <td><a class="struct" href="struct.Ushort16.html"
  511. title='struct ocl_core::Ushort16'>Ushort16</a></td>
  512. <td class='docblock-short'>
  513. </td>
  514. </tr></table><h2 id='enums' class='section-header'><a href="#enums">Enums</a></h2>
  515. <table>
  516. <tr class=' module-item'>
  517. <td><a class="enum" href="enum.AddressingMode.html"
  518. title='enum ocl_core::AddressingMode'>AddressingMode</a></td>
  519. <td class='docblock-short'>
  520. <p>cl_addressing_mode</p>
  521. </td>
  522. </tr>
  523. <tr class=' module-item'>
  524. <td><a class="enum" href="enum.BufferCreateType.html"
  525. title='enum ocl_core::BufferCreateType'>BufferCreateType</a></td>
  526. <td class='docblock-short'>
  527. <p>cl_buffer_create_type</p>
  528. </td>
  529. </tr>
  530. <tr class=' module-item'>
  531. <td><a class="enum" href="enum.Cbool.html"
  532. title='enum ocl_core::Cbool'>Cbool</a></td>
  533. <td class='docblock-short'>
  534. <p>cl_bool</p>
  535. </td>
  536. </tr>
  537. <tr class=' module-item'>
  538. <td><a class="enum" href="enum.ChannelType.html"
  539. title='enum ocl_core::ChannelType'>ChannelType</a></td>
  540. <td class='docblock-short'>
  541. <p>cl_channel_type</p>
  542. </td>
  543. </tr>
  544. <tr class=' module-item'>
  545. <td><a class="enum" href="enum.ClGlObjectType.html"
  546. title='enum ocl_core::ClGlObjectType'>ClGlObjectType</a></td>
  547. <td class='docblock-short'>
  548. </td>
  549. </tr>
  550. <tr class=' module-item'>
  551. <td><a class="enum" href="enum.CommandExecutionStatus.html"
  552. title='enum ocl_core::CommandExecutionStatus'>CommandExecutionStatus</a></td>
  553. <td class='docblock-short'>
  554. <p>command execution status</p>
  555. </td>
  556. </tr>
  557. <tr class=' module-item'>
  558. <td><a class="enum" href="enum.CommandQueueInfo.html"
  559. title='enum ocl_core::CommandQueueInfo'>CommandQueueInfo</a></td>
  560. <td class='docblock-short'>
  561. <p>cl_command_queue_info</p>
  562. </td>
  563. </tr>
  564. <tr class=' module-item'>
  565. <td><a class="enum" href="enum.CommandType.html"
  566. title='enum ocl_core::CommandType'>CommandType</a></td>
  567. <td class='docblock-short'>
  568. <p>cl_command_type</p>
  569. </td>
  570. </tr>
  571. <tr class=' module-item'>
  572. <td><a class="enum" href="enum.ContextInfo.html"
  573. title='enum ocl_core::ContextInfo'>ContextInfo</a></td>
  574. <td class='docblock-short'>
  575. <p>cl_context_info</p>
  576. </td>
  577. </tr>
  578. <tr class=' module-item'>
  579. <td><a class="enum" href="enum.ContextInfoOrPropertiesPointerType.html"
  580. title='enum ocl_core::ContextInfoOrPropertiesPointerType'>ContextInfoOrPropertiesPointerType</a></td>
  581. <td class='docblock-short'>
  582. <p>cl_context_info + cl_context_properties</p>
  583. </td>
  584. </tr>
  585. <tr class=' module-item'>
  586. <td><a class="enum" href="enum.ContextProperty.html"
  587. title='enum ocl_core::ContextProperty'>ContextProperty</a></td>
  588. <td class='docblock-short'>
  589. <p>cl_context_info + cl_context_properties</p>
  590. </td>
  591. </tr>
  592. <tr class=' module-item'>
  593. <td><a class="enum" href="enum.DeviceInfo.html"
  594. title='enum ocl_core::DeviceInfo'>DeviceInfo</a></td>
  595. <td class='docblock-short'>
  596. <p>cl_device_info</p>
  597. </td>
  598. </tr>
  599. <tr class=' module-item'>
  600. <td><a class="enum" href="enum.DeviceLocalMemType.html"
  601. title='enum ocl_core::DeviceLocalMemType'>DeviceLocalMemType</a></td>
  602. <td class='docblock-short'>
  603. <p>cl_device_local_mem_type</p>
  604. </td>
  605. </tr>
  606. <tr class=' module-item'>
  607. <td><a class="enum" href="enum.DeviceMemCacheType.html"
  608. title='enum ocl_core::DeviceMemCacheType'>DeviceMemCacheType</a></td>
  609. <td class='docblock-short'>
  610. <p>cl_mem_cache_type</p>
  611. </td>
  612. </tr>
  613. <tr class=' module-item'>
  614. <td><a class="enum" href="enum.DevicePartitionProperty.html"
  615. title='enum ocl_core::DevicePartitionProperty'>DevicePartitionProperty</a></td>
  616. <td class='docblock-short'>
  617. <p>[INCOMPLETE] cl_device_partition_property</p>
  618. </td>
  619. </tr>
  620. <tr class=' module-item'>
  621. <td><a class="enum" href="enum.EventInfo.html"
  622. title='enum ocl_core::EventInfo'>EventInfo</a></td>
  623. <td class='docblock-short'>
  624. <p>cl_event_info</p>
  625. </td>
  626. </tr>
  627. <tr class=' module-item'>
  628. <td><a class="enum" href="enum.FilterMode.html"
  629. title='enum ocl_core::FilterMode'>FilterMode</a></td>
  630. <td class='docblock-short'>
  631. <p>cl_filter_mode</p>
  632. </td>
  633. </tr>
  634. <tr class=' module-item'>
  635. <td><a class="enum" href="enum.GlContextInfo.html"
  636. title='enum ocl_core::GlContextInfo'>GlContextInfo</a></td>
  637. <td class='docblock-short'>
  638. <p>cl_gl_context_info</p>
  639. </td>
  640. </tr>
  641. <tr class=' module-item'>
  642. <td><a class="enum" href="enum.GlTextureTarget.html"
  643. title='enum ocl_core::GlTextureTarget'>GlTextureTarget</a></td>
  644. <td class='docblock-short'>
  645. <p>specify the texture target type</p>
  646. </td>
  647. </tr>
  648. <tr class=' module-item'>
  649. <td><a class="enum" href="enum.ImageChannelDataType.html"
  650. title='enum ocl_core::ImageChannelDataType'>ImageChannelDataType</a></td>
  651. <td class='docblock-short'>
  652. <p>Describes the size of the channel data type. The number of bits per element determined by the image_channel_data_type and image_channel_order must be a power of two. The list of supported values is described in the table below. (from SDK)</p>
  653. </td>
  654. </tr>
  655. <tr class=' module-item'>
  656. <td><a class="enum" href="enum.ImageChannelOrder.html"
  657. title='enum ocl_core::ImageChannelOrder'>ImageChannelOrder</a></td>
  658. <td class='docblock-short'>
  659. <p>Specifies the number of channels and the channel layout i.e. the memory layout in which channels are stored in the image. Valid values are described in the table below. (from SDK)</p>
  660. </td>
  661. </tr>
  662. <tr class=' module-item'>
  663. <td><a class="enum" href="enum.ImageInfo.html"
  664. title='enum ocl_core::ImageInfo'>ImageInfo</a></td>
  665. <td class='docblock-short'>
  666. <p>cl_image_info</p>
  667. </td>
  668. </tr>
  669. <tr class=' module-item'>
  670. <td><a class="enum" href="enum.KernelArgAccessQualifier.html"
  671. title='enum ocl_core::KernelArgAccessQualifier'>KernelArgAccessQualifier</a></td>
  672. <td class='docblock-short'>
  673. <p>cl_kernel_arg_access_qualifier</p>
  674. </td>
  675. </tr>
  676. <tr class=' module-item'>
  677. <td><a class="enum" href="enum.KernelArgAddressQualifier.html"
  678. title='enum ocl_core::KernelArgAddressQualifier'>KernelArgAddressQualifier</a></td>
  679. <td class='docblock-short'>
  680. <p>cl_kernel_arg_address_qualifier</p>
  681. </td>
  682. </tr>
  683. <tr class=' module-item'>
  684. <td><a class="enum" href="enum.KernelArgInfo.html"
  685. title='enum ocl_core::KernelArgInfo'>KernelArgInfo</a></td>
  686. <td class='docblock-short'>
  687. <p>cl_kernel_arg_info</p>
  688. </td>
  689. </tr>
  690. <tr class=' module-item'>
  691. <td><a class="enum" href="enum.KernelInfo.html"
  692. title='enum ocl_core::KernelInfo'>KernelInfo</a></td>
  693. <td class='docblock-short'>
  694. <p>cl_kernel_info</p>
  695. </td>
  696. </tr>
  697. <tr class=' module-item'>
  698. <td><a class="enum" href="enum.KernelWorkGroupInfo.html"
  699. title='enum ocl_core::KernelWorkGroupInfo'>KernelWorkGroupInfo</a></td>
  700. <td class='docblock-short'>
  701. <p>cl_kernel_work_group_info</p>
  702. </td>
  703. </tr>
  704. <tr class=' module-item'>
  705. <td><a class="enum" href="enum.MemInfo.html"
  706. title='enum ocl_core::MemInfo'>MemInfo</a></td>
  707. <td class='docblock-short'>
  708. <p>cl_mem_info</p>
  709. </td>
  710. </tr>
  711. <tr class=' module-item'>
  712. <td><a class="enum" href="enum.MemObjectType.html"
  713. title='enum ocl_core::MemObjectType'>MemObjectType</a></td>
  714. <td class='docblock-short'>
  715. <p>cl_mem_object_type</p>
  716. </td>
  717. </tr>
  718. <tr class=' module-item'>
  719. <td><a class="enum" href="enum.PlatformInfo.html"
  720. title='enum ocl_core::PlatformInfo'>PlatformInfo</a></td>
  721. <td class='docblock-short'>
  722. <p>cl_platform_info</p>
  723. </td>
  724. </tr>
  725. <tr class=' module-item'>
  726. <td><a class="enum" href="enum.Polling.html"
  727. title='enum ocl_core::Polling'>Polling</a></td>
  728. <td class='docblock-short'>
  729. <p>cl_bool: Polling</p>
  730. </td>
  731. </tr>
  732. <tr class=' module-item'>
  733. <td><a class="enum" href="enum.ProfilingInfo.html"
  734. title='enum ocl_core::ProfilingInfo'>ProfilingInfo</a></td>
  735. <td class='docblock-short'>
  736. <p>cl_profiling_info</p>
  737. </td>
  738. </tr>
  739. <tr class=' module-item'>
  740. <td><a class="enum" href="enum.ProgramBuildInfo.html"
  741. title='enum ocl_core::ProgramBuildInfo'>ProgramBuildInfo</a></td>
  742. <td class='docblock-short'>
  743. <p>cl_program_build_info</p>
  744. </td>
  745. </tr>
  746. <tr class=' module-item'>
  747. <td><a class="enum" href="enum.ProgramBuildStatus.html"
  748. title='enum ocl_core::ProgramBuildStatus'>ProgramBuildStatus</a></td>
  749. <td class='docblock-short'>
  750. <p>cl_build_status</p>
  751. </td>
  752. </tr>
  753. <tr class=' module-item'>
  754. <td><a class="enum" href="enum.ProgramInfo.html"
  755. title='enum ocl_core::ProgramInfo'>ProgramInfo</a></td>
  756. <td class='docblock-short'>
  757. <p>cl_program_info</p>
  758. </td>
  759. </tr>
  760. <tr class=' module-item'>
  761. <td><a class="enum" href="enum.SamplerInfo.html"
  762. title='enum ocl_core::SamplerInfo'>SamplerInfo</a></td>
  763. <td class='docblock-short'>
  764. <p>cl_sampler_info</p>
  765. </td>
  766. </tr>
  767. <tr class=' module-item'>
  768. <td><a class="enum" href="enum.Status.html"
  769. title='enum ocl_core::Status'>Status</a></td>
  770. <td class='docblock-short'>
  771. <p>The status of an OpenCL API call. Used for returning success/error codes.</p>
  772. </td>
  773. </tr></table><h2 id='constants' class='section-header'><a href="#constants">Constants</a></h2>
  774. <table>
  775. <tr class=' module-item'>
  776. <td><a class="constant" href="constant.CL_CGL_SHAREGROUP_KHR_OS_SPECIFIC.html"
  777. title='constant ocl_core::CL_CGL_SHAREGROUP_KHR_OS_SPECIFIC'>CL_CGL_SHAREGROUP_KHR_OS_SPECIFIC</a></td>
  778. <td class='docblock-short'>
  779. </td>
  780. </tr>
  781. <tr class=' module-item'>
  782. <td><a class="constant" href="constant.DEVICES_MAX.html"
  783. title='constant ocl_core::DEVICES_MAX'>DEVICES_MAX</a></td>
  784. <td class='docblock-short'>
  785. </td>
  786. </tr>
  787. <tr class=' module-item'>
  788. <td><a class="constant" href="constant.DEVICE_AFFINITY_DOMAIN_L1_CACHE.html"
  789. title='constant ocl_core::DEVICE_AFFINITY_DOMAIN_L1_CACHE'>DEVICE_AFFINITY_DOMAIN_L1_CACHE</a></td>
  790. <td class='docblock-short'>
  791. </td>
  792. </tr>
  793. <tr class=' module-item'>
  794. <td><a class="constant" href="constant.DEVICE_AFFINITY_DOMAIN_L2_CACHE.html"
  795. title='constant ocl_core::DEVICE_AFFINITY_DOMAIN_L2_CACHE'>DEVICE_AFFINITY_DOMAIN_L2_CACHE</a></td>
  796. <td class='docblock-short'>
  797. </td>
  798. </tr>
  799. <tr class=' module-item'>
  800. <td><a class="constant" href="constant.DEVICE_AFFINITY_DOMAIN_L3_CACHE.html"
  801. title='constant ocl_core::DEVICE_AFFINITY_DOMAIN_L3_CACHE'>DEVICE_AFFINITY_DOMAIN_L3_CACHE</a></td>
  802. <td class='docblock-short'>
  803. </td>
  804. </tr>
  805. <tr class=' module-item'>
  806. <td><a class="constant" href="constant.DEVICE_AFFINITY_DOMAIN_L4_CACHE.html"
  807. title='constant ocl_core::DEVICE_AFFINITY_DOMAIN_L4_CACHE'>DEVICE_AFFINITY_DOMAIN_L4_CACHE</a></td>
  808. <td class='docblock-short'>
  809. </td>
  810. </tr>
  811. <tr class=' module-item'>
  812. <td><a class="constant" href="constant.DEVICE_AFFINITY_DOMAIN_NEXT_PARTITIONABLE.html"
  813. title='constant ocl_core::DEVICE_AFFINITY_DOMAIN_NEXT_PARTITIONABLE'>DEVICE_AFFINITY_DOMAIN_NEXT_PARTITIONABLE</a></td>
  814. <td class='docblock-short'>
  815. </td>
  816. </tr>
  817. <tr class=' module-item'>
  818. <td><a class="constant" href="constant.DEVICE_AFFINITY_DOMAIN_NUMA.html"
  819. title='constant ocl_core::DEVICE_AFFINITY_DOMAIN_NUMA'>DEVICE_AFFINITY_DOMAIN_NUMA</a></td>
  820. <td class='docblock-short'>
  821. </td>
  822. </tr>
  823. <tr class=' module-item'>
  824. <td><a class="constant" href="constant.DEVICE_TYPE_ACCELERATOR.html"
  825. title='constant ocl_core::DEVICE_TYPE_ACCELERATOR'>DEVICE_TYPE_ACCELERATOR</a></td>
  826. <td class='docblock-short'>
  827. </td>
  828. </tr>
  829. <tr class=' module-item'>
  830. <td><a class="constant" href="constant.DEVICE_TYPE_ALL.html"
  831. title='constant ocl_core::DEVICE_TYPE_ALL'>DEVICE_TYPE_ALL</a></td>
  832. <td class='docblock-short'>
  833. </td>
  834. </tr>
  835. <tr class=' module-item'>
  836. <td><a class="constant" href="constant.DEVICE_TYPE_CPU.html"
  837. title='constant ocl_core::DEVICE_TYPE_CPU'>DEVICE_TYPE_CPU</a></td>
  838. <td class='docblock-short'>
  839. </td>
  840. </tr>
  841. <tr class=' module-item'>
  842. <td><a class="constant" href="constant.DEVICE_TYPE_CUSTOM.html"
  843. title='constant ocl_core::DEVICE_TYPE_CUSTOM'>DEVICE_TYPE_CUSTOM</a></td>
  844. <td class='docblock-short'>
  845. </td>
  846. </tr>
  847. <tr class=' module-item'>
  848. <td><a class="constant" href="constant.DEVICE_TYPE_DEFAULT.html"
  849. title='constant ocl_core::DEVICE_TYPE_DEFAULT'>DEVICE_TYPE_DEFAULT</a></td>
  850. <td class='docblock-short'>
  851. </td>
  852. </tr>
  853. <tr class=' module-item'>
  854. <td><a class="constant" href="constant.DEVICE_TYPE_GPU.html"
  855. title='constant ocl_core::DEVICE_TYPE_GPU'>DEVICE_TYPE_GPU</a></td>
  856. <td class='docblock-short'>
  857. </td>
  858. </tr>
  859. <tr class=' module-item'>
  860. <td><a class="constant" href="constant.EXEC_KERNEL.html"
  861. title='constant ocl_core::EXEC_KERNEL'>EXEC_KERNEL</a></td>
  862. <td class='docblock-short'>
  863. </td>
  864. </tr>
  865. <tr class=' module-item'>
  866. <td><a class="constant" href="constant.EXEC_NATIVE_KERNEL.html"
  867. title='constant ocl_core::EXEC_NATIVE_KERNEL'>EXEC_NATIVE_KERNEL</a></td>
  868. <td class='docblock-short'>
  869. </td>
  870. </tr>
  871. <tr class=' module-item'>
  872. <td><a class="constant" href="constant.FP_CORRECTLY_ROUNDED_DIVIDE_SQRT.html"
  873. title='constant ocl_core::FP_CORRECTLY_ROUNDED_DIVIDE_SQRT'>FP_CORRECTLY_ROUNDED_DIVIDE_SQRT</a></td>
  874. <td class='docblock-short'>
  875. </td>
  876. </tr>
  877. <tr class=' module-item'>
  878. <td><a class="constant" href="constant.FP_DENORM.html"
  879. title='constant ocl_core::FP_DENORM'>FP_DENORM</a></td>
  880. <td class='docblock-short'>
  881. </td>
  882. </tr>
  883. <tr class=' module-item'>
  884. <td><a class="constant" href="constant.FP_FMA.html"
  885. title='constant ocl_core::FP_FMA'>FP_FMA</a></td>
  886. <td class='docblock-short'>
  887. </td>
  888. </tr>
  889. <tr class=' module-item'>
  890. <td><a class="constant" href="constant.FP_INF_NAN.html"
  891. title='constant ocl_core::FP_INF_NAN'>FP_INF_NAN</a></td>
  892. <td class='docblock-short'>
  893. </td>
  894. </tr>
  895. <tr class=' module-item'>
  896. <td><a class="constant" href="constant.FP_ROUND_TO_INF.html"
  897. title='constant ocl_core::FP_ROUND_TO_INF'>FP_ROUND_TO_INF</a></td>
  898. <td class='docblock-short'>
  899. </td>
  900. </tr>
  901. <tr class=' module-item'>
  902. <td><a class="constant" href="constant.FP_ROUND_TO_NEAREST.html"
  903. title='constant ocl_core::FP_ROUND_TO_NEAREST'>FP_ROUND_TO_NEAREST</a></td>
  904. <td class='docblock-short'>
  905. </td>
  906. </tr>
  907. <tr class=' module-item'>
  908. <td><a class="constant" href="constant.FP_ROUND_TO_ZERO.html"
  909. title='constant ocl_core::FP_ROUND_TO_ZERO'>FP_ROUND_TO_ZERO</a></td>
  910. <td class='docblock-short'>
  911. </td>
  912. </tr>
  913. <tr class=' module-item'>
  914. <td><a class="constant" href="constant.FP_SOFT_FLOAT.html"
  915. title='constant ocl_core::FP_SOFT_FLOAT'>FP_SOFT_FLOAT</a></td>
  916. <td class='docblock-short'>
  917. </td>
  918. </tr>
  919. <tr class=' module-item'>
  920. <td><a class="constant" href="constant.KERNEL_ARG_TYPE_CONST.html"
  921. title='constant ocl_core::KERNEL_ARG_TYPE_CONST'>KERNEL_ARG_TYPE_CONST</a></td>
  922. <td class='docblock-short'>
  923. </td>
  924. </tr>
  925. <tr class=' module-item'>
  926. <td><a class="constant" href="constant.KERNEL_ARG_TYPE_NONE.html"
  927. title='constant ocl_core::KERNEL_ARG_TYPE_NONE'>KERNEL_ARG_TYPE_NONE</a></td>
  928. <td class='docblock-short'>
  929. </td>
  930. </tr>
  931. <tr class=' module-item'>
  932. <td><a class="constant" href="constant.KERNEL_ARG_TYPE_RESTRICT.html"
  933. title='constant ocl_core::KERNEL_ARG_TYPE_RESTRICT'>KERNEL_ARG_TYPE_RESTRICT</a></td>
  934. <td class='docblock-short'>
  935. </td>
  936. </tr>
  937. <tr class=' module-item'>
  938. <td><a class="constant" href="constant.KERNEL_ARG_TYPE_VOLATILE.html"
  939. title='constant ocl_core::KERNEL_ARG_TYPE_VOLATILE'>KERNEL_ARG_TYPE_VOLATILE</a></td>
  940. <td class='docblock-short'>
  941. </td>
  942. </tr>
  943. <tr class=' module-item'>
  944. <td><a class="constant" href="constant.MAP_READ.html"
  945. title='constant ocl_core::MAP_READ'>MAP_READ</a></td>
  946. <td class='docblock-short'>
  947. </td>
  948. </tr>
  949. <tr class=' module-item'>
  950. <td><a class="constant" href="constant.MAP_WRITE.html"
  951. title='constant ocl_core::MAP_WRITE'>MAP_WRITE</a></td>
  952. <td class='docblock-short'>
  953. </td>
  954. </tr>
  955. <tr class=' module-item'>
  956. <td><a class="constant" href="constant.MAP_WRITE_INVALIDATE_REGION.html"
  957. title='constant ocl_core::MAP_WRITE_INVALIDATE_REGION'>MAP_WRITE_INVALIDATE_REGION</a></td>
  958. <td class='docblock-short'>
  959. </td>
  960. </tr>
  961. <tr class=' module-item'>
  962. <td><a class="constant" href="constant.MEM_ALLOC_HOST_PTR.html"
  963. title='constant ocl_core::MEM_ALLOC_HOST_PTR'>MEM_ALLOC_HOST_PTR</a></td>
  964. <td class='docblock-short'>
  965. </td>
  966. </tr>
  967. <tr class=' module-item'>
  968. <td><a class="constant" href="constant.MEM_COPY_HOST_PTR.html"
  969. title='constant ocl_core::MEM_COPY_HOST_PTR'>MEM_COPY_HOST_PTR</a></td>
  970. <td class='docblock-short'>
  971. </td>
  972. </tr>
  973. <tr class=' module-item'>
  974. <td><a class="constant" href="constant.MEM_HOST_NO_ACCESS.html"
  975. title='constant ocl_core::MEM_HOST_NO_ACCESS'>MEM_HOST_NO_ACCESS</a></td>
  976. <td class='docblock-short'>
  977. </td>
  978. </tr>
  979. <tr class=' module-item'>
  980. <td><a class="constant" href="constant.MEM_HOST_READ_ONLY.html"
  981. title='constant ocl_core::MEM_HOST_READ_ONLY'>MEM_HOST_READ_ONLY</a></td>
  982. <td class='docblock-short'>
  983. </td>
  984. </tr>
  985. <tr class=' module-item'>
  986. <td><a class="constant" href="constant.MEM_HOST_WRITE_ONLY.html"
  987. title='constant ocl_core::MEM_HOST_WRITE_ONLY'>MEM_HOST_WRITE_ONLY</a></td>
  988. <td class='docblock-short'>
  989. </td>
  990. </tr>
  991. <tr class=' module-item'>
  992. <td><a class="constant" href="constant.MEM_READ_ONLY.html"
  993. title='constant ocl_core::MEM_READ_ONLY'>MEM_READ_ONLY</a></td>
  994. <td class='docblock-short'>
  995. </td>
  996. </tr>
  997. <tr class=' module-item'>
  998. <td><a class="constant" href="constant.MEM_READ_WRITE.html"
  999. title='constant ocl_core::MEM_READ_WRITE'>MEM_READ_WRITE</a></td>
  1000. <td class='docblock-short'>
  1001. </td>
  1002. </tr>
  1003. <tr class=' module-item'>
  1004. <td><a class="constant" href="constant.MEM_USE_HOST_PTR.html"
  1005. title='constant ocl_core::MEM_USE_HOST_PTR'>MEM_USE_HOST_PTR</a></td>
  1006. <td class='docblock-short'>
  1007. </td>
  1008. </tr>
  1009. <tr class=' module-item'>
  1010. <td><a class="constant" href="constant.MEM_WRITE_ONLY.html"
  1011. title='constant ocl_core::MEM_WRITE_ONLY'>MEM_WRITE_ONLY</a></td>
  1012. <td class='docblock-short'>
  1013. </td>
  1014. </tr>
  1015. <tr class=' module-item'>
  1016. <td><a class="constant" href="constant.MIGRATE_MEM_OBJECT_CONTENT_UNDEFINED.html"
  1017. title='constant ocl_core::MIGRATE_MEM_OBJECT_CONTENT_UNDEFINED'>MIGRATE_MEM_OBJECT_CONTENT_UNDEFINED</a></td>
  1018. <td class='docblock-short'>
  1019. </td>
  1020. </tr>
  1021. <tr class=' module-item'>
  1022. <td><a class="constant" href="constant.MIGRATE_MEM_OBJECT_HOST.html"
  1023. title='constant ocl_core::MIGRATE_MEM_OBJECT_HOST'>MIGRATE_MEM_OBJECT_HOST</a></td>
  1024. <td class='docblock-short'>
  1025. </td>
  1026. </tr>
  1027. <tr class=' module-item'>
  1028. <td><a class="constant" href="constant.PROGRAM_BINARY_TYPE_COMPILED_OBJECT.html"
  1029. title='constant ocl_core::PROGRAM_BINARY_TYPE_COMPILED_OBJECT'>PROGRAM_BINARY_TYPE_COMPILED_OBJECT</a></td>
  1030. <td class='docblock-short'>
  1031. </td>
  1032. </tr>
  1033. <tr class=' module-item'>
  1034. <td><a class="constant" href="constant.PROGRAM_BINARY_TYPE_EXECUTABLE.html"
  1035. title='constant ocl_core::PROGRAM_BINARY_TYPE_EXECUTABLE'>PROGRAM_BINARY_TYPE_EXECUTABLE</a></td>
  1036. <td class='docblock-short'>
  1037. </td>
  1038. </tr>
  1039. <tr class=' module-item'>
  1040. <td><a class="constant" href="constant.PROGRAM_BINARY_TYPE_LIBRARY.html"
  1041. title='constant ocl_core::PROGRAM_BINARY_TYPE_LIBRARY'>PROGRAM_BINARY_TYPE_LIBRARY</a></td>
  1042. <td class='docblock-short'>
  1043. </td>
  1044. </tr>
  1045. <tr class=' module-item'>
  1046. <td><a class="constant" href="constant.PROGRAM_BINARY_TYPE_NONE.html"
  1047. title='constant ocl_core::PROGRAM_BINARY_TYPE_NONE'>PROGRAM_BINARY_TYPE_NONE</a></td>
  1048. <td class='docblock-short'>
  1049. </td>
  1050. </tr>
  1051. <tr class=' module-item'>
  1052. <td><a class="constant" href="constant.QUEUE_ON_DEVICE.html"
  1053. title='constant ocl_core::QUEUE_ON_DEVICE'>QUEUE_ON_DEVICE</a></td>
  1054. <td class='docblock-short'>
  1055. </td>
  1056. </tr>
  1057. <tr class=' module-item'>
  1058. <td><a class="constant" href="constant.QUEUE_ON_DEVICE_DEFAULT.html"
  1059. title='constant ocl_core::QUEUE_ON_DEVICE_DEFAULT'>QUEUE_ON_DEVICE_DEFAULT</a></td>
  1060. <td class='docblock-short'>
  1061. </td>
  1062. </tr>
  1063. <tr class=' module-item'>
  1064. <td><a class="constant" href="constant.QUEUE_OUT_OF_ORDER_EXEC_MODE_ENABLE.html"
  1065. title='constant ocl_core::QUEUE_OUT_OF_ORDER_EXEC_MODE_ENABLE'>QUEUE_OUT_OF_ORDER_EXEC_MODE_ENABLE</a></td>
  1066. <td class='docblock-short'>
  1067. </td>
  1068. </tr>
  1069. <tr class=' module-item'>
  1070. <td><a class="constant" href="constant.QUEUE_PROFILING_ENABLE.html"
  1071. title='constant ocl_core::QUEUE_PROFILING_ENABLE'>QUEUE_PROFILING_ENABLE</a></td>
  1072. <td class='docblock-short'>
  1073. </td>
  1074. </tr></table><h2 id='traits' class='section-header'><a href="#traits">Traits</a></h2>
  1075. <table>
  1076. <tr class=' module-item'>
  1077. <td><a class="trait" href="trait.OclNum.html"
  1078. title='trait ocl_core::OclNum'>OclNum</a></td>
  1079. <td class='docblock-short'>
  1080. <p>A set of traits common to numeric built-in OpenCL scalar and vector
  1081. primitives.</p>
  1082. </td>
  1083. </tr>
  1084. <tr class=' module-item'>
  1085. <td><a class="trait" href="trait.OclPrm.html"
  1086. title='trait ocl_core::OclPrm'>OclPrm</a></td>
  1087. <td class='docblock-short'>
  1088. <p>A primitive type usable within <code>OpenCL</code> kernels.</p>
  1089. </td>
  1090. </tr>
  1091. <tr class=' module-item'>
  1092. <td><a class="trait" href="trait.OclScl.html"
  1093. title='trait ocl_core::OclScl'>OclScl</a></td>
  1094. <td class='docblock-short'>
  1095. <p>A scalar type usable within OpenCL kernels.</p>
  1096. </td>
  1097. </tr>
  1098. <tr class=' module-item'>
  1099. <td><a class="trait" href="trait.OclVec.html"
  1100. title='trait ocl_core::OclVec'>OclVec</a></td>
  1101. <td class='docblock-short'>
  1102. <p>A vector type usable within <code>OpenCL</code> kernels.</p>
  1103. </td>
  1104. </tr></table><h2 id='functions' class='section-header'><a href="#functions">Functions</a></h2>
  1105. <table>
  1106. <tr class=' module-item'>
  1107. <td><a class="fn" href="fn._complete_user_event.html"
  1108. title='fn ocl_core::_complete_user_event'>_complete_user_event</a></td>
  1109. <td class='docblock-short'>
  1110. <p>If <code>event_status</code> is <code>CommandExecutionStatus::Complete</code>, the <code>cl_event</code>
  1111. pointed to by <code>user_data</code> will be set to the same.</p>
  1112. </td>
  1113. </tr>
  1114. <tr class=' module-item'>
  1115. <td><a class="fn" href="fn._dummy_event_callback.html"
  1116. title='fn ocl_core::_dummy_event_callback'>_dummy_event_callback</a></td>
  1117. <td class='docblock-short'>
  1118. <p>Don't be a dummy. Buckle your <code>_dummy_callback</code>.</p>
  1119. </td>
  1120. </tr>
  1121. <tr class=' module-item'>
  1122. <td><a class="fn" href="fn.build_program.html"
  1123. title='fn ocl_core::build_program'>build_program</a></td>
  1124. <td class='docblock-short'>
  1125. <p>Builds a program.</p>
  1126. </td>
  1127. </tr>
  1128. <tr class=' module-item'>
  1129. <td><a class="fn" href="fn.compile_program.html"
  1130. title='fn ocl_core::compile_program'>compile_program</a></td>
  1131. <td class='docblock-short'>
  1132. <p>[UNIMPLEMENTED: Please implement me]</p>
  1133. </td>
  1134. </tr>
  1135. <tr class=' module-item'>
  1136. <td><a class="fn" href="fn.create_buffer.html"
  1137. title='fn ocl_core::create_buffer'>create_buffer</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td>
  1138. <td class='docblock-short'>
  1139. <p>Returns a new buffer pointer with size (bytes): <code>len</code> * sizeof(T).</p>
  1140. </td>
  1141. </tr>
  1142. <tr class=' module-item'>
  1143. <td><a class="fn" href="fn.create_build_program.html"
  1144. title='fn ocl_core::create_build_program'>create_build_program</a></td>
  1145. <td class='docblock-short'>
  1146. <p>Creates, builds, and returns a new program pointer from <code>src_strings</code>.</p>
  1147. </td>
  1148. </tr>
  1149. <tr class=' module-item'>
  1150. <td><a class="fn" href="fn.create_command_queue.html"
  1151. title='fn ocl_core::create_command_queue'>create_command_queue</a></td>
  1152. <td class='docblock-short'>
  1153. <p>Returns a new command queue pointer.</p>
  1154. </td>
  1155. </tr>
  1156. <tr class=' module-item'>
  1157. <td><a class="fn" href="fn.create_context.html"
  1158. title='fn ocl_core::create_context'>create_context</a></td>
  1159. <td class='docblock-short'>
  1160. <p>Creates a new context pointer valid for all devices in <code>device_ids</code>.</p>
  1161. </td>
  1162. </tr>
  1163. <tr class=' module-item'>
  1164. <td><a class="fn" href="fn.create_context_from_type.html"
  1165. title='fn ocl_core::create_context_from_type'>create_context_from_type</a></td>
  1166. <td class='docblock-short'>
  1167. <p>Creates a new context pointer for all devices of a specific type.</p>
  1168. </td>
  1169. </tr>
  1170. <tr class=' module-item'>
  1171. <td><a class="fn" href="fn.create_from_gl_buffer.html"
  1172. title='fn ocl_core::create_from_gl_buffer'>create_from_gl_buffer</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td>
  1173. <td class='docblock-short'>
  1174. <p>Return a buffer pointer from a <code>OpenGL</code> buffer object.</p>
  1175. </td>
  1176. </tr>
  1177. <tr class=' module-item'>
  1178. <td><a class="fn" href="fn.create_from_gl_renderbuffer.html"
  1179. title='fn ocl_core::create_from_gl_renderbuffer'>create_from_gl_renderbuffer</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td>
  1180. <td class='docblock-short'>
  1181. <p>Return a renderbuffer pointer from a <code>OpenGL</code> renderbuffer object.</p>
  1182. </td>
  1183. </tr>
  1184. <tr class=' module-item'>
  1185. <td><a class="fn" href="fn.create_from_gl_texture.html"
  1186. title='fn ocl_core::create_from_gl_texture'>create_from_gl_texture</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td>
  1187. <td class='docblock-short'>
  1188. <p>Return a texture2D pointer from a <code>OpenGL</code> texture2D object.</p>
  1189. </td>
  1190. </tr>
  1191. <tr class=' module-item'>
  1192. <td><a class="fn" href="fn.create_from_gl_texture_2d.html"
  1193. title='fn ocl_core::create_from_gl_texture_2d'>create_from_gl_texture_2d</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td>
  1194. <td class='docblock-short'>
  1195. <p>Return a texture2D pointer from a <code>OpenGL</code> texture2D object.</p>
  1196. </td>
  1197. </tr>
  1198. <tr class=' module-item'>
  1199. <td><a class="fn" href="fn.create_from_gl_texture_3d.html"
  1200. title='fn ocl_core::create_from_gl_texture_3d'>create_from_gl_texture_3d</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td>
  1201. <td class='docblock-short'>
  1202. <p>Return a texture3D pointer from a <code>OpenGL</code> texture3D object.</p>
  1203. </td>
  1204. </tr>
  1205. <tr class=' module-item'>
  1206. <td><a class="fn" href="fn.create_image.html"
  1207. title='fn ocl_core::create_image'>create_image</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td>
  1208. <td class='docblock-short'>
  1209. <p>Returns a new image (mem) pointer.</p>
  1210. </td>
  1211. </tr>
  1212. <tr class=' module-item'>
  1213. <td><a class="fn" href="fn.create_kernel.html"
  1214. title='fn ocl_core::create_kernel'>create_kernel</a></td>
  1215. <td class='docblock-short'>
  1216. <p>Returns a new kernel.</p>
  1217. </td>
  1218. </tr>
  1219. <tr class=' module-item'>
  1220. <td><a class="fn" href="fn.create_kernels_in_program.html"
  1221. title='fn ocl_core::create_kernels_in_program'>create_kernels_in_program</a></td>
  1222. <td class='docblock-short'>
  1223. <p>[UNIMPLEMENTED: Please implement me]</p>
  1224. </td>
  1225. </tr>
  1226. <tr class=' module-item'>
  1227. <td><a class="fn" href="fn.create_program_with_binary.html"
  1228. title='fn ocl_core::create_program_with_binary'>create_program_with_binary</a></td>
  1229. <td class='docblock-short'>
  1230. <p>Creates a program object for a context, and loads the binary bits
  1231. specified by binary into the program object.</p>
  1232. </td>
  1233. </tr>
  1234. <tr class=' module-item'>
  1235. <td><a class="fn" href="fn.create_program_with_built_in_kernels.html"
  1236. title='fn ocl_core::create_program_with_built_in_kernels'>create_program_with_built_in_kernels</a></td>
  1237. <td class='docblock-short'>
  1238. <p>[UNIMPLEMENTED: Please implement me]</p>
  1239. </td>
  1240. </tr>
  1241. <tr class=' module-item'>
  1242. <td><a class="fn" href="fn.create_program_with_source.html"
  1243. title='fn ocl_core::create_program_with_source'>create_program_with_source</a></td>
  1244. <td class='docblock-short'>
  1245. <p>Creates a new program.</p>
  1246. </td>
  1247. </tr>
  1248. <tr class=' module-item'>
  1249. <td><a class="fn" href="fn.create_sampler.html"
  1250. title='fn ocl_core::create_sampler'>create_sampler</a></td>
  1251. <td class='docblock-short'>
  1252. <p>Creates and returns a new sampler object.</p>
  1253. </td>
  1254. </tr>
  1255. <tr class=' module-item'>
  1256. <td><a class="fn" href="fn.create_sub_buffer.html"
  1257. title='fn ocl_core::create_sub_buffer'>create_sub_buffer</a></td>
  1258. <td class='docblock-short'>
  1259. <p>Creates a new buffer object (referred to as a sub-buffer object) from an
  1260. existing buffer object.</p>
  1261. </td>
  1262. </tr>
  1263. <tr class=' module-item'>
  1264. <td><a class="fn" href="fn.create_sub_devices.html"
  1265. title='fn ocl_core::create_sub_devices'>create_sub_devices</a></td>
  1266. <td class='docblock-short'>
  1267. <p>[UNIMPLEMENTED: Please implement me]</p>
  1268. </td>
  1269. </tr>
  1270. <tr class=' module-item'>
  1271. <td><a class="fn" href="fn.create_user_event.html"
  1272. title='fn ocl_core::create_user_event'>create_user_event</a></td>
  1273. <td class='docblock-short'>
  1274. <p>Creates an event not already associated with any command.</p>
  1275. </td>
  1276. </tr>
  1277. <tr class=' module-item'>
  1278. <td><a class="fn" href="fn.default_device_type.html"
  1279. title='fn ocl_core::default_device_type'>default_device_type</a></td>
  1280. <td class='docblock-short'>
  1281. <p>Returns the default device type bitflags as specified by environment
  1282. variable or else <code>DEVICE_TYPE_ALL</code>.</p>
  1283. </td>
  1284. </tr>
  1285. <tr class=' module-item'>
  1286. <td><a class="fn" href="fn.default_platform.html"
  1287. title='fn ocl_core::default_platform'>default_platform</a></td>
  1288. <td class='docblock-short'>
  1289. <p>Returns the default or first platform.</p>
  1290. </td>
  1291. </tr>
  1292. <tr class=' module-item'>
  1293. <td><a class="fn" href="fn.default_platform_idx.html"
  1294. title='fn ocl_core::default_platform_idx'>default_platform_idx</a></td>
  1295. <td class='docblock-short'>
  1296. <p>Returns the default platform if set by an environment variable or config
  1297. file.</p>
  1298. </td>
  1299. </tr>
  1300. <tr class=' module-item'>
  1301. <td><a class="fn" href="fn.device_versions.html"
  1302. title='fn ocl_core::device_versions'>device_versions</a></td>
  1303. <td class='docblock-short'>
  1304. <p>Returns a list of versions for devices.</p>
  1305. </td>
  1306. </tr>
  1307. <tr class=' module-item'>
  1308. <td><a class="fn" href="fn.enqueue_acquire_gl_objects.html"
  1309. title='fn ocl_core::enqueue_acquire_gl_objects'>enqueue_acquire_gl_objects</a></td>
  1310. <td class='docblock-short'>
  1311. <p>Acquire OpenCL memory objects (buffers and images) that have been created
  1312. from OpenGL objects.</p>
  1313. </td>
  1314. </tr>
  1315. <tr class=' module-item'>
  1316. <td><a class="fn" href="fn.enqueue_barrier_with_wait_list.html"
  1317. title='fn ocl_core::enqueue_barrier_with_wait_list'>enqueue_barrier_with_wait_list</a></td>
  1318. <td class='docblock-short'>
  1319. <p>A synchronization point that enqueues a barrier operation.</p>
  1320. </td>
  1321. </tr>
  1322. <tr class=' module-item'>
  1323. <td><a class="fn" href="fn.enqueue_copy_buffer.html"
  1324. title='fn ocl_core::enqueue_copy_buffer'>enqueue_copy_buffer</a></td>
  1325. <td class='docblock-short'>
  1326. <p>Copies the contents of one buffer to another.</p>
  1327. </td>
  1328. </tr>
  1329. <tr class=' module-item'>
  1330. <td><a class="fn" href="fn.enqueue_copy_buffer_rect.html"
  1331. title='fn ocl_core::enqueue_copy_buffer_rect'>enqueue_copy_buffer_rect</a></td>
  1332. <td class='docblock-short'>
  1333. <p>Enqueues a command to copy a rectangular region from a buffer object to
  1334. another buffer object.</p>
  1335. </td>
  1336. </tr>
  1337. <tr class=' module-item'>
  1338. <td><a class="fn" href="fn.enqueue_copy_buffer_to_image.html"
  1339. title='fn ocl_core::enqueue_copy_buffer_to_image'>enqueue_copy_buffer_to_image</a></td>
  1340. <td class='docblock-short'>
  1341. <p>Enqueues a command to copy a buffer object to an image object.</p>
  1342. </td>
  1343. </tr>
  1344. <tr class=' module-item'>
  1345. <td><a class="fn" href="fn.enqueue_copy_image.html"
  1346. title='fn ocl_core::enqueue_copy_image'>enqueue_copy_image</a></td>
  1347. <td class='docblock-short'>
  1348. <p>Enqueues a command to copy image objects.</p>
  1349. </td>
  1350. </tr>
  1351. <tr class=' module-item'>
  1352. <td><a class="fn" href="fn.enqueue_copy_image_to_buffer.html"
  1353. title='fn ocl_core::enqueue_copy_image_to_buffer'>enqueue_copy_image_to_buffer</a></td>
  1354. <td class='docblock-short'>
  1355. <p>Enqueues a command to copy an image object to a buffer object.</p>
  1356. </td>
  1357. </tr>
  1358. <tr class=' module-item'>
  1359. <td><a class="fn" href="fn.enqueue_fill_buffer.html"
  1360. title='fn ocl_core::enqueue_fill_buffer'>enqueue_fill_buffer</a></td>
  1361. <td class='docblock-short'>
  1362. <p>Enqueues a command to fill a buffer object with a pattern of a given pattern size.</p>
  1363. </td>
  1364. </tr>
  1365. <tr class=' module-item'>
  1366. <td><a class="fn" href="fn.enqueue_fill_image.html"
  1367. title='fn ocl_core::enqueue_fill_image'>enqueue_fill_image</a></td>
  1368. <td class='docblock-short'>
  1369. <p>Enqueues a command to fill an image object with a specified color.</p>
  1370. </td>
  1371. </tr>
  1372. <tr class=' module-item'>
  1373. <td><a class="fn" href="fn.enqueue_kernel.html"
  1374. title='fn ocl_core::enqueue_kernel'>enqueue_kernel</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td>
  1375. <td class='docblock-short'>
  1376. <p>Enqueues a command to execute a kernel on a device.</p>
  1377. </td>
  1378. </tr>
  1379. <tr class=' module-item'>
  1380. <td><a class="fn" href="fn.enqueue_map_buffer.html"
  1381. title='fn ocl_core::enqueue_map_buffer'>enqueue_map_buffer</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td>
  1382. <td class='docblock-short'>
  1383. <p>Enqueues a command to map a region of the buffer object given
  1384. by <code>buffer</code> into the host address space and returns a pointer to this
  1385. mapped region.</p>
  1386. </td>
  1387. </tr>
  1388. <tr class=' module-item'>
  1389. <td><a class="fn" href="fn.enqueue_map_image.html"
  1390. title='fn ocl_core::enqueue_map_image'>enqueue_map_image</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td>
  1391. <td class='docblock-short'>
  1392. <p>Enqueues a command to map a region of the image object given by <code>image</code> into
  1393. the host address space and returns a pointer to this mapped region.</p>
  1394. </td>
  1395. </tr>
  1396. <tr class=' module-item'>
  1397. <td><a class="fn" href="fn.enqueue_marker_with_wait_list.html"
  1398. title='fn ocl_core::enqueue_marker_with_wait_list'>enqueue_marker_with_wait_list</a></td>
  1399. <td class='docblock-short'>
  1400. <p>Enqueues a marker command which waits for either a list of events to
  1401. complete, or all previously enqueued commands to complete.</p>
  1402. </td>
  1403. </tr>
  1404. <tr class=' module-item'>
  1405. <td><a class="fn" href="fn.enqueue_migrate_mem_objects.html"
  1406. title='fn ocl_core::enqueue_migrate_mem_objects'>enqueue_migrate_mem_objects</a></td>
  1407. <td class='docblock-short'>
  1408. <p>Enqueues a command to indicate which device a set of memory objects should
  1409. be associated with.</p>
  1410. </td>
  1411. </tr>
  1412. <tr class=' module-item'>
  1413. <td><a class="fn" href="fn.enqueue_native_kernel.html"
  1414. title='fn ocl_core::enqueue_native_kernel'>enqueue_native_kernel</a></td>
  1415. <td class='docblock-short'>
  1416. <p>[UNIMPLEMENTED: Please implement me]</p>
  1417. </td>
  1418. </tr>
  1419. <tr class=' module-item'>
  1420. <td><a class="fn" href="fn.enqueue_read_buffer.html"
  1421. title='fn ocl_core::enqueue_read_buffer'>enqueue_read_buffer</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td>
  1422. <td class='docblock-short'>
  1423. <p>Enqueues a read from device memory referred to by <code>buffer</code> to device memory,
  1424. <code>data</code>.</p>
  1425. </td>
  1426. </tr>
  1427. <tr class=' module-item'>
  1428. <td><a class="fn" href="fn.enqueue_read_buffer_rect.html"
  1429. title='fn ocl_core::enqueue_read_buffer_rect'>enqueue_read_buffer_rect</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td>
  1430. <td class='docblock-short'>
  1431. <p>Enqueues a command to read from a rectangular region from a buffer object to host memory.</p>
  1432. </td>
  1433. </tr>
  1434. <tr class=' module-item'>
  1435. <td><a class="fn" href="fn.enqueue_read_image.html"
  1436. title='fn ocl_core::enqueue_read_image'>enqueue_read_image</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td>
  1437. <td class='docblock-short'>
  1438. <p>Reads an image from device to host memory.</p>
  1439. </td>
  1440. </tr>
  1441. <tr class=' module-item'>
  1442. <td><a class="fn" href="fn.enqueue_release_gl_objects.html"
  1443. title='fn ocl_core::enqueue_release_gl_objects'>enqueue_release_gl_objects</a></td>
  1444. <td class='docblock-short'>
  1445. <p>Release OpenCL memory objects (buffers and images) that have been created
  1446. from OpenGL objects.</p>
  1447. </td>
  1448. </tr>
  1449. <tr class=' module-item'>
  1450. <td><a class="fn" href="fn.enqueue_task.html"
  1451. title='fn ocl_core::enqueue_task'>enqueue_task</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td>
  1452. <td class='docblock-short'>
  1453. <p>Enqueues a command to execute a kernel on a device.</p>
  1454. </td>
  1455. </tr>
  1456. <tr class=' module-item'>
  1457. <td><a class="fn" href="fn.enqueue_unmap_mem_object.html"
  1458. title='fn ocl_core::enqueue_unmap_mem_object'>enqueue_unmap_mem_object</a></td>
  1459. <td class='docblock-short'>
  1460. <p>Enqueues a command to unmap a previously mapped region of a memory object.</p>
  1461. </td>
  1462. </tr>
  1463. <tr class=' module-item'>
  1464. <td><a class="fn" href="fn.enqueue_write_buffer.html"
  1465. title='fn ocl_core::enqueue_write_buffer'>enqueue_write_buffer</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td>
  1466. <td class='docblock-short'>
  1467. <p>Enqueues a write from host memory, <code>data</code>, to device memory referred to by
  1468. <code>buffer</code>.</p>
  1469. </td>
  1470. </tr>
  1471. <tr class=' module-item'>
  1472. <td><a class="fn" href="fn.enqueue_write_buffer_rect.html"
  1473. title='fn ocl_core::enqueue_write_buffer_rect'>enqueue_write_buffer_rect</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td>
  1474. <td class='docblock-short'>
  1475. <p>Enqueues a command to write from a rectangular region from host memory to a buffer object.</p>
  1476. </td>
  1477. </tr>
  1478. <tr class=' module-item'>
  1479. <td><a class="fn" href="fn.enqueue_write_image.html"
  1480. title='fn ocl_core::enqueue_write_image'>enqueue_write_image</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td>
  1481. <td class='docblock-short'>
  1482. <p>Enqueues a command to write to an image or image array object from host memory.</p>
  1483. </td>
  1484. </tr>
  1485. <tr class=' module-item'>
  1486. <td><a class="fn" href="fn.event_is_complete.html"
  1487. title='fn ocl_core::event_is_complete'>event_is_complete</a></td>
  1488. <td class='docblock-short'>
  1489. <p>Returns true if an event is complete, false if not complete.</p>
  1490. </td>
  1491. </tr>
  1492. <tr class=' module-item'>
  1493. <td><a class="fn" href="fn.event_status.html"
  1494. title='fn ocl_core::event_status'>event_status</a></td>
  1495. <td class='docblock-short'>
  1496. <p>Returns the status of <code>event</code>.</p>
  1497. </td>
  1498. </tr>
  1499. <tr class=' module-item'>
  1500. <td><a class="fn" href="fn.finish.html"
  1501. title='fn ocl_core::finish'>finish</a></td>
  1502. <td class='docblock-short'>
  1503. <p>Waits for a queue to finish.</p>
  1504. </td>
  1505. </tr>
  1506. <tr class=' module-item'>
  1507. <td><a class="fn" href="fn.flush.html"
  1508. title='fn ocl_core::flush'>flush</a></td>
  1509. <td class='docblock-short'>
  1510. <p>Flushes a command queue.</p>
  1511. </td>
  1512. </tr>
  1513. <tr class=' module-item'>
  1514. <td><a class="fn" href="fn.get_command_queue_info.html"
  1515. title='fn ocl_core::get_command_queue_info'>get_command_queue_info</a></td>
  1516. <td class='docblock-short'>
  1517. <p>Returns information about a command queue</p>
  1518. </td>
  1519. </tr>
  1520. <tr class=' module-item'>
  1521. <td><a class="fn" href="fn.get_context_info.html"
  1522. title='fn ocl_core::get_context_info'>get_context_info</a></td>
  1523. <td class='docblock-short'>
  1524. <p>Returns various kinds of context information.</p>
  1525. </td>
  1526. </tr>
  1527. <tr class=' module-item'>
  1528. <td><a class="fn" href="fn.get_context_platform.html"
  1529. title='fn ocl_core::get_context_platform'>get_context_platform</a></td>
  1530. <td class='docblock-short'>
  1531. <p>Returns the platform for a context.</p>
  1532. </td>
  1533. </tr>
  1534. <tr class=' module-item'>
  1535. <td><a class="fn" href="fn.get_device_ids.html"
  1536. title='fn ocl_core::get_device_ids'>get_device_ids</a></td>
  1537. <td class='docblock-short'>
  1538. <p>Returns a list of available devices for a particular platform.</p>
  1539. </td>
  1540. </tr>
  1541. <tr class=' module-item'>
  1542. <td><a class="fn" href="fn.get_device_info.html"
  1543. title='fn ocl_core::get_device_info'>get_device_info</a></td>
  1544. <td class='docblock-short'>
  1545. <p>Returns information about a device.</p>
  1546. </td>
  1547. </tr>
  1548. <tr class=' module-item'>
  1549. <td><a class="fn" href="fn.get_event_info.html"
  1550. title='fn ocl_core::get_event_info'>get_event_info</a></td>
  1551. <td class='docblock-short'>
  1552. <p>Get event info.</p>
  1553. </td>
  1554. </tr>
  1555. <tr class=' module-item'>
  1556. <td><a class="fn" href="fn.get_event_profiling_info.html"
  1557. title='fn ocl_core::get_event_profiling_info'>get_event_profiling_info</a></td>
  1558. <td class='docblock-short'>
  1559. <p>Get event profiling info (for debugging / benchmarking).</p>
  1560. </td>
  1561. </tr>
  1562. <tr class=' module-item'>
  1563. <td><a class="fn" href="fn.get_extension_function_address_for_platform.html"
  1564. title='fn ocl_core::get_extension_function_address_for_platform'>get_extension_function_address_for_platform</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td>
  1565. <td class='docblock-short'>
  1566. <p>Returns the address of the extension function named by
  1567. <code>func_name</code> for a given platform.</p>
  1568. </td>
  1569. </tr>
  1570. <tr class=' module-item'>
  1571. <td><a class="fn" href="fn.get_gl_context_info_khr.html"
  1572. title='fn ocl_core::get_gl_context_info_khr'>get_gl_context_info_khr</a></td>
  1573. <td class='docblock-short'>
  1574. <p>[INOPERATIVE: Needs troubleshooting] Returns OpenGL context information.</p>
  1575. </td>
  1576. </tr>
  1577. <tr class=' module-item'>
  1578. <td><a class="fn" href="fn.get_image_info.html"
  1579. title='fn ocl_core::get_image_info'>get_image_info</a></td>
  1580. <td class='docblock-short'>
  1581. <p>Get image info.</p>
  1582. </td>
  1583. </tr>
  1584. <tr class=' module-item'>
  1585. <td><a class="fn" href="fn.get_kernel_arg_info.html"
  1586. title='fn ocl_core::get_kernel_arg_info'>get_kernel_arg_info</a></td>
  1587. <td class='docblock-short'>
  1588. <p>Get kernel arg info.</p>
  1589. </td>
  1590. </tr>
  1591. <tr class=' module-item'>
  1592. <td><a class="fn" href="fn.get_kernel_info.html"
  1593. title='fn ocl_core::get_kernel_info'>get_kernel_info</a></td>
  1594. <td class='docblock-short'>
  1595. <p>Get kernel info.</p>
  1596. </td>
  1597. </tr>
  1598. <tr class=' module-item'>
  1599. <td><a class="fn" href="fn.get_kernel_work_group_info.html"
  1600. title='fn ocl_core::get_kernel_work_group_info'>get_kernel_work_group_info</a></td>
  1601. <td class='docblock-short'>
  1602. <p>Get kernel work group info.</p>
  1603. </td>
  1604. </tr>
  1605. <tr class=' module-item'>
  1606. <td><a class="fn" href="fn.get_mem_object_info.html"
  1607. title='fn ocl_core::get_mem_object_info'>get_mem_object_info</a></td>
  1608. <td class='docblock-short'>
  1609. <p>Get mem object info.</p>
  1610. </td>
  1611. </tr>
  1612. <tr class=' module-item'>
  1613. <td><a class="fn" href="fn.get_platform_ids.html"
  1614. title='fn ocl_core::get_platform_ids'>get_platform_ids</a></td>
  1615. <td class='docblock-short'>
  1616. <p>Returns a list of available platforms as 'core' objects.</p>
  1617. </td>
  1618. </tr>
  1619. <tr class=' module-item'>
  1620. <td><a class="fn" href="fn.get_platform_info.html"
  1621. title='fn ocl_core::get_platform_info'>get_platform_info</a></td>
  1622. <td class='docblock-short'>
  1623. <p>Returns platform information of the requested type.</p>
  1624. </td>
  1625. </tr>
  1626. <tr class=' module-item'>
  1627. <td><a class="fn" href="fn.get_program_build_info.html"
  1628. title='fn ocl_core::get_program_build_info'>get_program_build_info</a></td>
  1629. <td class='docblock-short'>
  1630. <p>Get program build info.</p>
  1631. </td>
  1632. </tr>
  1633. <tr class=' module-item'>
  1634. <td><a class="fn" href="fn.get_program_info.html"
  1635. title='fn ocl_core::get_program_info'>get_program_info</a></td>
  1636. <td class='docblock-short'>
  1637. <p>Get program info.</p>
  1638. </td>
  1639. </tr>
  1640. <tr class=' module-item'>
  1641. <td><a class="fn" href="fn.get_sampler_info.html"
  1642. title='fn ocl_core::get_sampler_info'>get_sampler_info</a></td>
  1643. <td class='docblock-short'>
  1644. <p>Returns information about the sampler object.</p>
  1645. </td>
  1646. </tr>
  1647. <tr class=' module-item'>
  1648. <td><a class="fn" href="fn.get_supported_image_formats.html"
  1649. title='fn ocl_core::get_supported_image_formats'>get_supported_image_formats</a></td>
  1650. <td class='docblock-short'>
  1651. <p>Returns a list of supported image formats.</p>
  1652. </td>
  1653. </tr>
  1654. <tr class=' module-item'>
  1655. <td><a class="fn" href="fn.link_program.html"
  1656. title='fn ocl_core::link_program'>link_program</a></td>
  1657. <td class='docblock-short'>
  1658. <p>[UNIMPLEMENTED: Please implement me]</p>
  1659. </td>
  1660. </tr>
  1661. <tr class=' module-item'>
  1662. <td><a class="fn" href="fn.program_build_err.html"
  1663. title='fn ocl_core::program_build_err'>program_build_err</a></td>
  1664. <td class='docblock-short'>
  1665. <p>If the program pointed to by <code>cl_program</code> for any of the devices listed in
  1666. <code>device_ids</code> has a build log of any length, it will be returned as an
  1667. errcode result.</p>
  1668. </td>
  1669. </tr>
  1670. <tr class=' module-item'>
  1671. <td><a class="fn" href="fn.release_command_queue.html"
  1672. title='fn ocl_core::release_command_queue'>release_command_queue</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td>
  1673. <td class='docblock-short'>
  1674. <p>Decrements the reference count of a command queue.</p>
  1675. </td>
  1676. </tr>
  1677. <tr class=' module-item'>
  1678. <td><a class="fn" href="fn.release_context.html"
  1679. title='fn ocl_core::release_context'>release_context</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td>
  1680. <td class='docblock-short'>
  1681. <p>Decrements reference count of a context.</p>
  1682. </td>
  1683. </tr>
  1684. <tr class=' module-item'>
  1685. <td><a class="fn" href="fn.release_device.html"
  1686. title='fn ocl_core::release_device'>release_device</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td>
  1687. <td class='docblock-short'>
  1688. <p>Decrements the reference count of a device.</p>
  1689. </td>
  1690. </tr>
  1691. <tr class=' module-item'>
  1692. <td><a class="fn" href="fn.release_event.html"
  1693. title='fn ocl_core::release_event'>release_event</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td>
  1694. <td class='docblock-short'>
  1695. <p>Decrements an event's reference counter.</p>
  1696. </td>
  1697. </tr>
  1698. <tr class=' module-item'>
  1699. <td><a class="fn" href="fn.release_kernel.html"
  1700. title='fn ocl_core::release_kernel'>release_kernel</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td>
  1701. <td class='docblock-short'>
  1702. <p>Decrements a kernel reference counter.</p>
  1703. </td>
  1704. </tr>
  1705. <tr class=' module-item'>
  1706. <td><a class="fn" href="fn.release_mem_object.html"
  1707. title='fn ocl_core::release_mem_object'>release_mem_object</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td>
  1708. <td class='docblock-short'>
  1709. <p>Decrements the reference counter of a mem object.</p>
  1710. </td>
  1711. </tr>
  1712. <tr class=' module-item'>
  1713. <td><a class="fn" href="fn.release_program.html"
  1714. title='fn ocl_core::release_program'>release_program</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td>
  1715. <td class='docblock-short'>
  1716. <p>Decrements a program reference counter.</p>
  1717. </td>
  1718. </tr>
  1719. <tr class=' module-item'>
  1720. <td><a class="fn" href="fn.release_sampler.html"
  1721. title='fn ocl_core::release_sampler'>release_sampler</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td>
  1722. <td class='docblock-short'>
  1723. <p>Decrements a sampler reference counter.</p>
  1724. </td>
  1725. </tr>
  1726. <tr class=' module-item'>
  1727. <td><a class="fn" href="fn.retain_command_queue.html"
  1728. title='fn ocl_core::retain_command_queue'>retain_command_queue</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td>
  1729. <td class='docblock-short'>
  1730. <p>Increments the reference count of a command queue.</p>
  1731. </td>
  1732. </tr>
  1733. <tr class=' module-item'>
  1734. <td><a class="fn" href="fn.retain_context.html"
  1735. title='fn ocl_core::retain_context'>retain_context</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td>
  1736. <td class='docblock-short'>
  1737. <p>Increments the reference count of a context.</p>
  1738. </td>
  1739. </tr>
  1740. <tr class=' module-item'>
  1741. <td><a class="fn" href="fn.retain_device.html"
  1742. title='fn ocl_core::retain_device'>retain_device</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td>
  1743. <td class='docblock-short'>
  1744. <p>Increments the reference count of a device.</p>
  1745. </td>
  1746. </tr>
  1747. <tr class=' module-item'>
  1748. <td><a class="fn" href="fn.retain_event.html"
  1749. title='fn ocl_core::retain_event'>retain_event</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td>
  1750. <td class='docblock-short'>
  1751. <p>Increments an event's reference counter.</p>
  1752. </td>
  1753. </tr>
  1754. <tr class=' module-item'>
  1755. <td><a class="fn" href="fn.retain_kernel.html"
  1756. title='fn ocl_core::retain_kernel'>retain_kernel</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td>
  1757. <td class='docblock-short'>
  1758. <p>Increments a kernel reference counter.</p>
  1759. </td>
  1760. </tr>
  1761. <tr class=' module-item'>
  1762. <td><a class="fn" href="fn.retain_mem_object.html"
  1763. title='fn ocl_core::retain_mem_object'>retain_mem_object</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td>
  1764. <td class='docblock-short'>
  1765. <p>Increments the reference counter of a mem object.</p>
  1766. </td>
  1767. </tr>
  1768. <tr class=' module-item'>
  1769. <td><a class="fn" href="fn.retain_program.html"
  1770. title='fn ocl_core::retain_program'>retain_program</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td>
  1771. <td class='docblock-short'>
  1772. <p>Increments a program reference counter.</p>
  1773. </td>
  1774. </tr>
  1775. <tr class=' module-item'>
  1776. <td><a class="fn" href="fn.retain_sampler.html"
  1777. title='fn ocl_core::retain_sampler'>retain_sampler</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td>
  1778. <td class='docblock-short'>
  1779. <p>Increments a sampler reference counter.</p>
  1780. </td>
  1781. </tr>
  1782. <tr class=' module-item'>
  1783. <td><a class="fn" href="fn.set_event_callback.html"
  1784. title='fn ocl_core::set_event_callback'>set_event_callback</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td>
  1785. <td class='docblock-short'>
  1786. <p>Sets a callback function which is called as soon as the <code>callback_trigger</code>
  1787. status is reached.</p>
  1788. </td>
  1789. </tr>
  1790. <tr class=' module-item'>
  1791. <td><a class="fn" href="fn.set_kernel_arg.html"
  1792. title='fn ocl_core::set_kernel_arg'>set_kernel_arg</a></td>
  1793. <td class='docblock-short'>
  1794. <p>Sets the argument value for the kernel argument at <code>index</code>.</p>
  1795. </td>
  1796. </tr>
  1797. <tr class=' module-item'>
  1798. <td><a class="fn" href="fn.set_mem_object_destructor_callback.html"
  1799. title='fn ocl_core::set_mem_object_destructor_callback'>set_mem_object_destructor_callback</a></td>
  1800. <td class='docblock-short'>
  1801. <p>[UNIMPLEMENTED: Please implement me]</p>
  1802. </td>
  1803. </tr>
  1804. <tr class=' module-item'>
  1805. <td><a class="fn" href="fn.set_user_event_status.html"
  1806. title='fn ocl_core::set_user_event_status'>set_user_event_status</a></td>
  1807. <td class='docblock-short'>
  1808. <p>Updates a user events status.</p>
  1809. </td>
  1810. </tr>
  1811. <tr class=' module-item'>
  1812. <td><a class="fn" href="fn.verify_context.html"
  1813. title='fn ocl_core::verify_context'>verify_context</a></td>
  1814. <td class='docblock-short'>
  1815. <p>Verifies that the <code>context</code> is in fact a context object pointer.</p>
  1816. </td>
  1817. </tr>
  1818. <tr class=' module-item'>
  1819. <td><a class="fn" href="fn.wait_for_event.html"
  1820. title='fn ocl_core::wait_for_event'>wait_for_event</a></td>
  1821. <td class='docblock-short'>
  1822. <p>Blocks until an event is complete.</p>
  1823. </td>
  1824. </tr>
  1825. <tr class=' module-item'>
  1826. <td><a class="fn" href="fn.wait_for_events.html"
  1827. title='fn ocl_core::wait_for_events'>wait_for_events</a></td>
  1828. <td class='docblock-short'>
  1829. <p>Blocks until the first <code>num_events</code> events in <code>event_list</code> are complete.</p>
  1830. </td>
  1831. </tr></table><h2 id='types' class='section-header'><a href="#types">Type Definitions</a></h2>
  1832. <table>
  1833. <tr class=' module-item'>
  1834. <td><a class="type" href="type.BuildProgramCallbackFn.html"
  1835. title='type ocl_core::BuildProgramCallbackFn'>BuildProgramCallbackFn</a></td>
  1836. <td class='docblock-short'>
  1837. </td>
  1838. </tr>
  1839. <tr class=' module-item'>
  1840. <td><a class="type" href="type.CreateContextCallbackFn.html"
  1841. title='type ocl_core::CreateContextCallbackFn'>CreateContextCallbackFn</a></td>
  1842. <td class='docblock-short'>
  1843. </td>
  1844. </tr>
  1845. <tr class=' module-item'>
  1846. <td><a class="type" href="type.EventCallbackFn.html"
  1847. title='type ocl_core::EventCallbackFn'>EventCallbackFn</a></td>
  1848. <td class='docblock-short'>
  1849. </td>
  1850. </tr>
  1851. <tr class=' module-item'>
  1852. <td><a class="type" href="type.UserDataPtr.html"
  1853. title='type ocl_core::UserDataPtr'>UserDataPtr</a></td>
  1854. <td class='docblock-short'>
  1855. </td>
  1856. </tr></table></section><section id="search" class="content hidden"></section><section class="footer"></section><aside id="help" class="hidden"><div><h1 class="hidden">Help</h1><div class="shortcuts"><h2>Keyboard Shortcuts</h2><dl><dt><kbd>?</kbd></dt><dd>Show this help dialog</dd><dt><kbd>S</kbd></dt><dd>Focus the search field</dd><dt><kbd>↑</kbd></dt><dd>Move up in search results</dd><dt><kbd>↓</kbd></dt><dd>Move down in search results</dd><dt><kbd>↹</kbd></dt><dd>Switch tab</dd><dt><kbd>&#9166;</kbd></dt><dd>Go to active search result</dd><dt><kbd>+</kbd></dt><dd>Expand all sections</dd><dt><kbd>-</kbd></dt><dd>Collapse all sections</dd></dl></div><div class="infos"><h2>Search Tricks</h2><p>Prefix searches with a type followed by a colon (e.g. <code>fn:</code>) to restrict the search to a given type.</p><p>Accepted types are: <code>fn</code>, <code>mod</code>, <code>struct</code>, <code>enum</code>, <code>trait</code>, <code>type</code>, <code>macro</code>, and <code>const</code>.</p><p>Search functions by type signature (e.g. <code>vec -> usize</code> or <code>* -> vec</code>)</p><p>Search multiple things at once by splitting your query with comma (e.g. <code>str,u8</code> or <code>String,struct:Vec,test</code>)</p></div></div></aside><script>window.rootPath = "../";window.currentCrate = "ocl_core";</script><script src="../aliases.js"></script><script src="../main.js"></script><script defer src="../search-index.js"></script></body></html>